【ceph运维】删除osd和host

 删除OSD

以删除osd.6为例,查看ceph osd相关信息:

ceph -s                            # 查看Ceph集群状态,确保为HEALTH_OK
ceph osd tree                      # 查看OSD树(osd标号、osd权重等信息)
ceph osd df
ceph -s                            # 查看Ceph集群状态,确保为HEALTH_OK
ceph osd tree                      # 查看OSD树(osd标号、osd权重等信息)
ceph osd dump | grep ^osdump | grep ^osd

1. 降osd权重:先降低osd权重为0,让数据自动迁移至其它osd,可避免out和crush remove操作时的两次水位平衡。水位平衡完成后,即用ceph -s查看到恢复HEALTH_OK状态后,再继续后续操作。

ceph osd crush reweight osd.6 0
watch -n3 -d ceph -s

注意:注意:在生产环境下,若osd数据量较大,一次性对多个osd降权可能导致水位平衡幅度过大、云存储性能大幅降低,将影响正常使用。因此,应分阶段逐步降低osd权重,例如:从1.2降低至0.6,等待数据水位平衡后再降低至0。

2. 登录对应节点,停止osd服务:

systemctl stop ceph-osd@osd-id

3. 标记osd为out:

ceph osd out osd.6

4. 删除crush map中的osd:

ceph osd crush remove osd.6

5. 删除osd:

ceph osd rm osd.6

6. 删除osd在ceph集群的认证:

 ceph auth del osd.6

删除host,删除掉crush map中已没有osd的host:

ceph osd crush remove <host>

 

参考资料

1. How to remove OSD from Ceph cluster

posted @ 2021-11-03 13:47  苏格拉底的落泪  阅读(822)  评论(2编辑  收藏  举报