最后更新于
最后更新于
准备osd存储介质
安装前使用命令lvm lvs
,lvm vgs
和lvm pvs
检查上述硬盘是否已经被使用,若已经使用需要删除,且确保硬盘上不存在分区和文件系统
确保开启内核rbd模块并安装lvm2
安装operator
安装ceph集群
安装命令行工具
在toolbox中使用命令ceph -s
查看集群状态
在重装ceph集群时需要清理rook数据目录(默认:/var/lib/rook)
为ceph-dashboard服务添加ingress路由
获取访问dashboard所需的admin账号密码
将域名rook-ceph.minikube.local加入/etc/hosts后通过浏览器访问
创建rbd存储池
由于仅有一个节点和三个OSD,因此采用osd作为故障域
创建完成后在rook-ceph-tools中使用指令ceph osd pool ls
可以看到新建了以下存储池
replicapool
以rbd为存储介质创建storageclass
使用statefulset测试通过storageclass挂载rbd存储
创建mds服务与cephfs文件系统
创建完成后在rook-ceph-tools中使用指令ceph osd pool ls
可以看到新建了以下存储池
myfs-metadata
myfs-data0
以cephfs为存储介质创建storageclass
使用deployment测试通过storageclass挂载cephfs共享存储
创建对象存储网关
创建完成后在rook-ceph-tools中使用指令ceph osd pool ls
可以看到新建了以下存储池
.rgw.root
my-store.rgw.buckets.data
my-store.rgw.buckets.index
my-store.rgw.buckets.non-ec
my-store.rgw.control
my-store.rgw.log
my-store.rgw.meta
为ceph-rgw服务添加ingress路由
将域名rook-ceph-rgw.minikube.local加入/etc/hosts后通过浏览器访问
添加对象存储用户
创建对象存储用户的同时会生成以{{.metadata.namespace}}-object-user-{{.spec.store}}-{{.metadata.name}}
为命名规则的secret,其中保存了该S3用户的AccessKey和SecretKey
获取AccessKey
获取SecretKey
根据上述步骤获取到的信息,使用S3客户端进行连接即可使用该S3用户
创建以s3为存储的storageclass
目前不支持以s3存储创建pvc,仅可用于创建存储桶
为storageclass创建对应的存储桶资源申请
存储桶创建后会生成与桶资源申请同名的secret,其中保存着用于连接该存储桶的AccessKey和SecretKey
获取AccessKey
获取SecretKey
使用该方式获取的s3用户已经做了配额限制只能使用一个存储桶
硬盘符号
大小
作用
sdb
50GB
OSD Data
sdc
50GB
OSD Data
sdd
50GB
OSD Data
sde
50GB
OSD Metadata