版本信息
Kubernetes Version:v1.22
Ceph Version:v1.17.2 Quincy
ceph-csi-3.7.1
ceph-csi:https://github.com/ceph/ceph-csi
Ceph集群安装参见《cephadm离线搭建v17.2.0 Quincy版本Ceph集群》
安装包分享地址见附录。
一、新建 Ceph Pool
ceph osd pool create kubernetes
初始化池:
rbd pool init kubernetes
查看所有的 pool:
$ ceph osd lspools
二、新建用户
为 Kubernetes 和 ceph-csi 单独创建一个新用户,也可以直接使用client.admin用户:
ceph auth get-or-create client.kubernetes mon 'profile rbd' osd 'profile rbd pool=kubernetes' mgr 'profile rbd pool=kubernetes'
[client.kubernetes]
key = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
可以通过以下命令来查看
ceph auth get client.kubernetes
ceph auth list
三、部署ceph-csi
1、创建一个新的namespace用来部署ceph-csi.
kubectl create ns ceph-csi
2、修改 configmap,定义ceph集群的 ceph mon地址。
获取 ceph 集群的信息:
[root@ceph3 log]# ceph mon dump
epoch 3
fsid 3406b1c2-3e47-11ed-a011-005056b91696
last_changed 2022-09-28T02:26:01.493016+0000
created 2022-09-27T09:31:50.190403+0000
min_mon_release 17 (quincy)
election_strategy: 1
0: [v2:27.196.38.235:3300/0,v1:27.196.38.235:6789/0] mon.ceph3
1: [v2:27.196.38.232:3300/0,v1:27.196.38.232:6789/0] mon.ceph1
2: [v2:27.196.38.233:3300/0,v1:27.196.38.233:6789/0] mon.ceph2
dumped monmap epoch 3
这里需要用到两个信息:
- fsid : ceph 的集群 ID。
- 监控节点信息。目前 ceph-csi 只支持 v1 版本的协议,所以监控节点只能用 v1 的那个 IP 和端口号。
进入 ceph-csi 的 deploy/rbd/kubernetes 目录,将以上获取的信息写入 csi-config-map.yaml:
apiVersion: v1
kind: ConfigMap
metadata:<