有人可以解释Ceph CRUSH地图中的奇怪剩余OSD设备 - 从osd.N重命名为deviceN吗?

时间:2016-09-02 22:16:59

标签: ceph crush

前段时间我们从Ceph集群中删除了两个损坏的OSD,osd.0和osd.8。它们现在已经从大多数Ceph命令中消失了,但仍然在CRUSH地图中出现了奇怪的设备名称:

# devices
device 0 device0  <-----
device 1 osd.1
device 2 osd.2
device 3 osd.3
device 4 osd.4
device 5 osd.5
device 6 osd.6
device 7 osd.7
device 8 device8  <-----
device 9 osd.9

有人可以解释为什么device0和device8仍在那里,如果它们对集群有任何影响,以及我们是否应该删除它们?

device0和device8不会显示在CRUSH地图中的任何其他位置。

我们在网站上使用了以下程序:

http://docs.ceph.com/docs/jewel/rados/operations/add-or-rm-osds/#removing-osds-manual

基本上:

ceph osd crush remove 8
ceph auth del osd.8
ceph osd rm 8

我主要是因为我们正在处理一些卡住的PG(不完整),这些PG仍在各个地方引用id“8”。想知道这是否相关?

否则,“ceph osd tree”看起来如我所料(没有osd.8且没有osd.0):

djakubiec@dev:~$ ceph osd tree
ID WEIGHT   TYPE NAME       UP/DOWN REWEIGHT PRIMARY-AFFINITY
-1 58.19960 root default
-2  7.27489     host node24
 1  7.27489         osd.1        up  1.00000          1.00000
-3  7.27489     host node25
 2  7.27489         osd.2        up  1.00000          1.00000
-4  7.27489     host node26
 3  7.27489         osd.3        up  1.00000          1.00000
-5  7.27489     host node27
 4  7.27489         osd.4        up  1.00000          1.00000
-6  7.27489     host node28
 5  7.27489         osd.5        up  1.00000          1.00000
-7  7.27489     host node29
 6  7.27489         osd.6        up  1.00000          1.00000
-8  7.27539     host node30
 9  7.27539         osd.9        up  1.00000          1.00000
-9  7.27489     host node31
 7  7.27489         osd.7        up  1.00000          1.00000

谢谢,

- 丹

1 个答案:

答案 0 :(得分:0)

节点出现故障后,我遇到了同样的问题,并通过从挤压图上手动移除了多余的设备来解决了这个问题。我已经使用标准过程删除了osds和发生故障的节点,但是由于某种原因,我的暗恋地图中留下了幻影设备。

导出喜欢的贴图并对其进行编辑:

~# ceph osd getcrushmap -o /tmp/crushmap
~# crushtool -d /tmp/crushmap -o crush_map
~# vi crush_map

这是我的暗恋地图的设备部分之前的样子:

# devices
device 0 osd.0
device 1 device1
device 2 osd.2
device 3 osd.3
device 4 device4
device 5 osd.5
device 6 osd.6
device 7 osd.7

我将其更改为此-请注意,我必须重新编号,而不仅仅是删除多余的行。

# devices
device 0 osd.0
device 1 osd.2
device 2 osd.3
device 3 osd.5
device 4 osd.6
device 5 osd.7

然后,重新编译暗恋贴图并应用它:

~# crushtool -c crush_map -o /tmp/crushmap
~# ceph osd setcrushmap -i /tmp/crushmap

这又开始了恢复过程,并且幻影设备现在不见了。