> 文章列表 > Ceph集群修复 osd 为 down 的问题

Ceph集群修复 osd 为 down 的问题

Ceph集群修复 osd 为 down 的问题

问题描述

由于突然断电了,导致 ceph 服务出现了问题,osd.1 无法起来

ceph osd tree

Ceph集群修复 osd 为 down 的问题

解决方案

尝试重启

systemctl list-units |grep ceph
systemctl restart  ceph-f0e59898-71d4-11ec-924c-000c290a1a98@osd.1.service

发现重启无望,可采用以下步骤重新格式化硬盘并将其加入 ceph 集群中

注意:以下步骤会将硬盘中的所有数据抹除

步骤 1.停止相应 OSD 服务

此步骤需要在 Down 掉的 OSD 所在节点上操作

systemctl stop  ceph-f0e59898-71d4-11ec-924c-000c290a1a98@osd.1.service

Ceph集群修复 osd 为 down 的问题

步骤 2.取消 OSD 挂载

安装 OSD 时,会将 osd.1 挂载至/var/lib/ceph/osd/ceph-1,因此,删除 OSD时,需要首先取消 OSD 挂载,
输入命令:

umount /var/lib/ceph/osd/ceph-1
或
umount /var/lib/ceph/f0e59898-71d4-11ec-924c-000c290a1a98/osd/ceph-1

Ceph集群修复 osd 为 down 的问题

步骤 3. 设置 OSD 为 OUT

输入命令:

ceph osd out osd.1

Ceph集群修复 osd 为 down 的问题

步骤 4.删除 OSD

输入命令:

ceph osd crush remove osd.1(如果未配置 Crush Map 则不需要执行这一行命令)
ceph auth del osd.1
ceph osd rm 1

Ceph集群修复 osd 为 down 的问题

步骤 5.清空已删除磁盘中的内容

输入命令:

wipefs -af /dev/sdb

Ceph集群修复 osd 为 down 的问题

步骤 6.重新添加服务

ceph orch daemon add osd ceph3:/dev/sdb

Ceph集群修复 osd 为 down 的问题

添加完成以后,ceph 会自动的进行数据填充。

步骤 7.再次查看 osd 发现服务已经正常了

ceph osd tree

Ceph集群修复 osd 为 down 的问题
Ceph集群修复 osd 为 down 的问题
到此结束。