【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>