在实际生产使用过程中,难免会有ceph的osd硬盘损坏的时候,本文针对这种场景描述更换故障磁盘的操作,本文的操作环境是通过kolla部署的openstack,3个HA节点上各有3个osd,我们将osd.6 、osd.7 、osd.8 剔除并更换。
1、首先查看和收集相关的信息:
2.执行reweight,让这个osd上的数据迁移到其他osd,同步可以使用ceph -w查看实时数据迁移情况 :
3.剔除osd出集群:
4.整个操作过程,可以使用 # docker exec -it ceph_mon ceph -w 查看实时的ceph集群数据变化,或者使用# docker exec -it ceph_mon ceph -s 查看总体情况。
5.替换磁盘后,重新使用kolla部署工具添加osd磁盘,简单描述如下:
直接在宿主机上增加硬盘,然后对每一块硬盘打标签,然后重新执行deploy即可,步骤如下:
1)..OSD盘打标:
注意,整块盘作为一个OSD只能用标签KOLLA_CEPH_OSD_BOOTSTRAP ,如果日志分区单独使用SSD固态硬盘的分区,则使用不同标签,比如/dev/sdb 标签为KOLLA_CEPH_OSD_BOOTSTRAP_SDC ,日志分区/dev/sdh1 标签为:KOLLA_CEPH_OSD_BOOTSTRAP_SDC_J
2).部署前的检查:
注意:3node是inventory文件,根据实际环境替换。
检查报错6780端口占用,查询这个端口是ceph_rgw容器占用,临时将这个容器关闭: docker stop ceph_rgw
3).部署:
注意:3node是inventory文件,根据实际环境替换。
部署完成后,将上面关闭的容器ceph_rgw启动:
领取专属 10元无门槛券
私享最新 技术干货