rancher k8s 对接 ceph 存储
本文永久链接: https://www.xtplayer.cn/kubernetes/storage/k8s-storage-ceph/
- 本文编写的前提是已有正常工作的 ceph 存储服务,并且 Rancher 集群能正常访问 ceph 存储服务,另外这里我们对接的是 Rancher 持久化存储的存储类。\
- 随着 UI 翻译的更新,可能有些参数名称与实际名称不相同。
配置 ceph secret
Rancher 连接 ceph 集群需要 ceph secret
,在 ceph 服务器中执行以下命令生成 ceph secret:
ceph auth get-key client.admin |base64 |
创建 secret 对象
将 key
替换为实际 ceph 的 secret
,然后 import yaml 到 rancher 集群。
apiVersion: v1 |
UI 配置存储类
进入
集群
视图,在存储
菜单下选择存储类
设置存储名称,并选择
ceph-rbd
类配置 ceph-rbd 参数,填写对应的 ceph-monitor 地址和管理员 ID(),还有 secret-name
- 监控:ceph-monitor 地址
- 管理员 ID:ceph-monitor 登录账户
- 管理密文命名空间:管理密文导入的命名空间,根据实际导入的命名空间填写
点击页面最下方的保存
创建应用并挂载数据卷
方法一:手动创建卷再挂载
切换到项目视图,依次点击
工作负载
/数据卷
/添加卷
填写卷配置信息,比如选择对应的存储类和卷的大小
点击页面下方的
创建
创建工作负载,选择对应的存储卷和挂载的目录
通过
web 终端
登录 Pod 查看挂载情况登录 ceph server 查看
方法二:创建应用的时候同时创建卷
创建工作负载,配置数据卷选择
添加新的持久化卷(声明)
配置相应参数,比如添加
卷声明名称
,选择对应的存储类
和容量大小
配置容器的挂载路径
启动工作负载并登录容器查看卷挂载
登录 ceph server 查看
常见问题
如果出现以上问题,请检查 worker 节点上是否有加载 RBD
模块。执行 lsmod | grep rbd
查看是否有信息返回,如果没有则执行 modprobe rbd
进行模块加载。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 IT老男孩!