#免密方式下发公钥(password替换为实际的root密码)
yum install -y sshpass
sshpass -p 'password' ssh-copy-id -f -i /etc/ceph/ceph.pub -o StrictHostKeyChecking=no root@node2
sshpass -p 'password' ssh-copy-id -f -i /etc/ceph/ceph.pub -o StrictHostKeyChecking=no root@node3
#此步骤非必须(网络环境好的此过程可以无视)
quay.io/ceph/ceph:v18 #导入
quay.io/prometheus/node-exporter:v1.5.0 #导入
quay.io/ceph/ceph-grafana:9.4.7 #监控组件无需导入
quay.io/prometheus/prometheus:v2.43.0 #监控组件无需导入
quay.io/prometheus/alertmanager:v0.25.0 #监控组件无需导入
#从初始化节点一键导出全部镜像
docker save $(docker images --format '{{.Repository}}:{{.Tag}}') -o ceph-reef-18.2.4.tar.gz
#node2和node3导入镜像
docker image load -i ceph-reef-18.2.4.tar.gz
#通常建议有至少3个MON节点(高可用集群一般配置为基数方便集群仲裁选举)
#至少2个MGR节点(一个主节点和一个备用节点)
#在Bootstrap节点上操作添加节点
ceph orch host add node2 --labels=mon,mgr
ceph orch host add node3 --labels=mon
#至少3个OSD节点(在实际部署中通常会有更多的OSD节点以确保数据冗余和分布)
#查看OSD设备
lsblk
#在Bootstrap节点上操作添加OSD设备
ceph orch daemon add osd node1:/dev/sdb
ceph orch daemon add osd node2:/dev/sdb
ceph orch daemon add osd node3:/dev/sdb
ceph orch daemon add osd node1:/dev/nvme0n1
ceph orch daemon add osd node2:/dev/nvme0n1
ceph orch daemon add osd node3:/dev/nvme0n1
#查看集群状态
ceph -s
ceph health