目前ceph集群中有1个损坏的osd磁盘,磁盘做的是RAID 0 本次将展示如何进行osd故障恢复。

操作流程

  1. 更换故障盘
  2. 由于硬盘做的是raid 0更换硬盘后必须重做该盘的RAID 0。
  3. 从ceph集群中删除有故障的osd硬盘。
  4. 在ceph集群中添加新的osd硬盘。

1、更换故障盘

此时查看osd状态 主机ceph01中osd.2故障,经尝试重启该osd进程仍失败。

9. 解决Ceph osd硬盘故障恢复_重做

9. 解决Ceph osd硬盘故障恢复_重做_02

2、由于硬盘做的是RAID 0更换硬盘后必须重做将该盘的RAID 0。

2.1、重启主机进入RAID管理界面

经查看#4 RAID状态为FAILED

9. 解决Ceph osd硬盘故障恢复_故障恢复_03

2.2、重做该RAID RAID操作我就不在这里演示了 RAID恢复正常后,进入系统。

通过lsblk命令查看硬盘

9. 解决Ceph osd硬盘故障恢复_重启_04

3、从ceph集群中删除故障osd.2硬盘。

[root@ceph01 ~]# ceph osd out osd.2
osd.2 is already out.
[root@ceph01 ~]# ceph osd crush rm osd.2
removed item id 2 name 'osd.2' from crush map
[root@ceph01 ~]# ceph auth del osd.2
updated
[root@ceph01 ~]# ceph osd rm osd.2
#验证是否删除成功
[root@ceph01 ~]# ceph osd tree

2、在ceph集群中添加新的osd硬盘。

#进入ceph-deploy管理目录中
[root@ceph01 ceph_cluster]# cd /root/ceph_cluster
#添加时注意/dev/sd*位置符
[root@ceph01 ceph_cluster]# ceph-deploy osd create --data /dev/sdd ceph01
#验证是否添加成功

9. 解决Ceph osd硬盘故障恢复_重做_05