Имеется кластер CEPH Luminous 12.2. Исходное состояние кластера CEPH: # ceph features { "mon": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 3 } }, "osd": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 12 } }, "client": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 5 } } } Имеется свежая регулярка. # uname -r 4.9.109-std-def-alt1 В ядре имеется модуль rbd для подключения к блочным устройствам CEPH: # modinfo rbd filename: /lib/modules/4.9.109-std-def-alt1/kernel/drivers/block/rbd.ko.gz license: GPL description: RADOS Block Device (RBD) driver author: Jeff Garzik <jeff@garzik.org> author: Yehuda Sadeh <yehuda@hq.newdream.net> author: Sage Weil <sage@newdream.net> author: Alex Elder <elder@inktank.com> srcversion: 1109D05FF76CD0C920D96E6 depends: libceph intree: Y vermagic: 4.9.109-std-def-alt1 SMP mod_unload modversions 686 parm: single_major:Use a single major number for all rbd devices (default: false) (bool) Пробуем подключить ПК как клиента к кластеру: # echo '10.0.1.159,10.0.1.171,10.0.1.172 name=admin,secret=AQDcD7XXXXXXXXXXXXXXXXXXXXXb1uJTA== rbd myblock' > /sys/bus/rbd/add # l /dev/rbd0 brw-rw---- 1 root disk 251, 0 июн 9 10:46 /dev/rbd0 Добавился клиент: # ceph features { "group": { "features": "0x40106b84a842a52", "release": "jewel", "num": 1 }, Как видно релиз клиента отображается "jewel" (ceph 10), а не "luminous". Требуется обновление модуля rbd?
Немного дополню, проверил также на следующих ядрах: root@client-alt8:~# rpm -qa *kernel-image* kernel-image-std-def-4.14.70-alt1.x86_64 kernel-image-un-def-4.18.8-alt1.x86_64 Одна из нод кластера: root@pve-node1:~# ceph features { "mon": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 3 } }, "osd": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 12 } }, "client": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 3 } } } root@pve-node1:~# rbd create myblock --image-format 2 --size 6291456 Пытаемся подключить устройство на Альте: root@client-alt8:~# modprobe rbd root@client-alt8:~# echo '192.168.233.47:6789,192.168.233.48:6789,192.168.233.49:6789 name=admin,secret=...== rbd myblock' > /sys/bus/rbd/add_single_major -bash: echo: ошибка записи: Нет такого устройства или адреса Диагностических сообщений на CEPH ни в логе, ни в dmesg нет... Решил подключить на одной из нод созданное устройство: root@pve-node1:~# rbd map rbd/myblock rbd: sysfs write failed RBD image feature set mismatch. You can disable features unsupported by the kernel with "rbd feature disable myblock1 object-map fast-diff deep-flatten". In some cases useful info is found in syslog - try "dmesg | tail". rbd: map failed: (6) No such device or address В dmesg в это время: [12805.737053] libceph: mon1 192.168.233.48:6789 session established [12805.739319] libceph: client658450 fsid 238f5402-528d-467f-9016-b1f29a9e497f [12805.811381] rbd: image myblock: image uses unsupported features: 0x38 Собственно отключили эти фичи (отключал по отдельности - однако все равно понадобились все): root@pve-node1:~# rbd feature disable myblock object-map fast-diff deep-flatten Собственно после этого подключение прошло успешно: root@client-alt8:~# echo ... > /sys/bus/rbd/add_single_major root@client-alt8:~# l /dev/rbd0 brw-rw---- 1 root disk 251, 0 сен 20 18:00 /dev/rbd0 Но результат jewel на всех ядрах....: root@pve-node1:~# ceph features { "mon": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 3 } }, "osd": { "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 12 } }, "client": { "group": { "features": "0x7018fb86aa42ada", "release": "jewel", "num": 1 }, "group": { "features": "0x1ffddff8eea4fffb", "release": "luminous", "num": 4 } } } Также есть сообщение с форума: https://forum.proxmox.com/threads/rbd-map-rbd-image-feature-set-mismatch.36070/ Судя по всему модуль rbd просто существенно отстает от librbd1. Но все таки хочется получить ответ на вопрос - возможно ли обновить модуль rbd в ядрах?
Еще ни одно ядро не поддерживает этих features. Эти параметры можно отключать динамически и индивидуально для нужного образа. Так же рекомендую попробовать использовать rbd-nbd, возможно с ним заработают эти фичи.
(В ответ на комментарий №2) > Еще ни одно ядро не поддерживает этих features. > Эти параметры можно отключать динамически и индивидуально для нужного образа. > Так же рекомендую попробовать использовать rbd-nbd, возможно с ним заработают > эти фичи. Дополнение от конечного пользователя: >Наше программное обеспечение работает только через kernel rbd. >У нас есть CEPH luminous на котором мы включили функционал UPMAP >(http://docs.ceph.com/docs/mimic/rados/operations/upmap/). Что будет > происходить, если мы подключимся к нему через Alt - kernel rbd ? > CEPH не сможет оптимально распределить PGs по OSD ???
Мне кажется что обновить rbd не должно быть проблемой. Надо просто поставить эту задачу в очередь.
(В ответ на комментарий №4) > Мне кажется что обновить rbd не должно быть проблемой. > Надо просто поставить эту задачу в очередь. Ещё раз объясните мне, что и откуда вы собрались обновлять?