Может кто-нибудь объяснить странные остатки OSD-устройств в карте Ceph CRUSH - переименованной из osd.N в deviceN?

Некоторое время назад мы удалили два поврежденных OSD из нашего кластера Ceph, 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

Может кто-нибудь объяснить, почему устройства 0 и устройства 8 все еще существуют, влияют ли они на кластер, и должны ли мы их удалить?

device0 и device8 не отображаются нигде в карте CRUSH.

Мы использовали процедуру с веб-сайта здесь:

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

В принципе:

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

Я в основном спрашиваю, потому что мы имеем дело с некоторыми застрявшими 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 ответ

У меня была такая же проблема после сбоя узла, и я решил ее вручную, удалив лишние устройства из карты дробления. Я уже удалил 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

Это снова запустило процесс восстановления, и устройства-призраки теперь исчезли.

Другие вопросы по тегам