Comments 4
Чтобы расположить пул на определенных ODS есть более простое решение — device classes (доступно если мне не изменяет память с 13 версии ceph). При создании OSD можно задать ему класс. По умолчанию у ceph 3 класса — hdd, ssd и nvme. Мы можем добавить OSD со своим классом, например hdd-slow или ssd-metapool. После этого мы создаем crush rule:
После этого создаем пул и назначаем ему crush_rule «replicated_hdd-slow». Все, пул будет располагаться только на OSD с указанным классом.
ceph osd crush rule create-replicated replicated_hdd-slow default host hdd-slow
После этого создаем пул и назначаем ему crush_rule «replicated_hdd-slow». Все, пул будет располагаться только на OSD с указанным классом.
+1
(шум из подпола) А ещё при создании OSD с блюстором, зарезервируйте один PE на LVM'е (т.е. LV размером на 1 меньше, чем есть в VG). Когда-нибудь оно вам жизненно пригодится. Да, этот один несчастный extent. Потому что если rockdb не может аллоцировать себе 64кб, то ему насрать на ваши 2 (4, 8, 16) Тб данных внутри. 64к важнее.
+1
Пожалуйста, пофиксите статью.
s/CRASH/CRUSH/g
0
Sign up to leave a comment.
Эксплуатация Ceph: как распределять пулы по разным типам (HDD/SSD) и группам серверов