標簽(空格分隔):ceph,ceph運維,osd故障
集群環境:
[root@node3 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@node3 ~]# ceph -v
ceph version 12.2.1 (3e7492b9ada8bdc9a5cd0feafd42fbca27f9c38e) luminous (stable)
問題描述:
在使用批量刪除osd的shell腳本刪除所有的osd時,提示:Error EBUSY: osd.0 is still up; must be down before removal.查看集群架構:
[root@node1 ceph]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0 root default
-3 0 host node1
-5 0 host node2
-7 0 host node3
0 0 osd.0 up 0 1.00000
很明顯就是需要把osd.0先down掉,然后我使用命令:systemctl stop ceph-osd@0 發現osd的狀態並未改變,然后通過查看osd.0的進程,發現並沒有運行。
解決方法:
如此簡單,通過ceph命令強行標記為down,之后刪除即可。下面先標記為down:
[root@node1 ceph]# ceph osd down osd.0
marked down osd.0.
此時查看集群布局:
[root@node1 ceph]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0 root default
-3 0 host node1
-5 0 host node2
-7 0 host node3
0 0 osd.0 down 0 1.00000
最后刪除該osd.0:
[root@node1 ceph]# ceph osd rm 0
removed osd.0
確認是否刪除:
[root@node1 ceph]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0 root default
-3 0 host node1
-5 0 host node2
-7 0 host node3