дата публикации 05.02.2019
ssd пул и hdd пул в ceph luminous
Создание раздельных пулов ssd и hdd в кластере ceph luminous
Типовое правило crush map выглядит так:
rule replicated_rule {
id 0
type replicated
min_size 1
max_size 10
step take default
step chooseleaf firstn 0 type host
step emit
}
Согласно этому правилу все диски, независимо от класса будут попадать в общий пул. Чтоб сделать раздельные пулы ssd и hdd необходимо создать правила для каждого класса дисков. Добавим их:
ceph osd crush rule create-replicated ceph-fast default host ssd
ceph osd crush rule create-replicated ceph-big default host hdd
Первая строка создает правило для класса ssd, второе для hdd. Обратите внимание, в конце каждой строки мы указываем host, как в дефолтном правиле. Если количество хостов в кластере 2, а pool size выставлен в 3, мы получим warning active+clean+remapped.
После выполнения команд наши правила будут выглядеть примерно так:
# rules
rule replicated_rule {
id 0
type replicated
min_size 1
max_size 10
step take default
step chooseleaf firstn 0 type host
step emit
}
rule ceph-fast {
id 1
type replicated
min_size 1
max_size 10
step take default class ssd
step choose firstn 0 type host
step emit
}
rule ceph-big {
id 2
type replicated
min_size 1
max_size 10
step take default class hdd
step choose firstn 0 type host
step emit
}
Далее по стандартной схеме создаем пулы на основе созданных правил.