Product SiteDocumentation Site

26.6.5. Ceph OSD

Рекомендуется использовать один OSD на каждый физический диск.

26.6.5.1. Создание OSD

Рекомендуется использовать кластер Ceph с не менее чем тремя узлами и не менее чем 12 OSD, равномерно распределенными по узлам.
Если диск использовался ранее (например, для ZFS или как OSD), сначала нужно удалить все следы этого использования. Чтобы удалить таблицу разделов, загрузочный сектор и любые другие остатки OSD, можно использовать команду:
# ceph-volume lvm zap /dev/[X] --destroy

Предупреждение

Эта команда уничтожит все данные на диске!
Для создания OSD в веб-интерфейсе PVE необходимо перейти на вкладку УзелCephOSD и нажать кнопку Создать: OSD:
Создание OSD
В открывшемся окне выбрать локальный диск, который будет включен в Сeph-кластер. Отдельно можно указать диски для метаданных (Диск базы данных) и журналирования (Диск WAL).
Для создания OSD в командной строке можно выполнить команду:
# pveceph osd create /dev/[X]
Указать отдельные устройства для метаданных (DB) и журналирования (WAL) для OSD можно с помощью параметров -db_dev и -wal_dev:
# pveceph osd create /dev/[X] -db_dev /dev/[Y] -wal_dev /dev/[Z]
Если диск для журналирования не указан, WAL размещается вместе с DB.
Можно напрямую указать размер WAL и DB с помощью параметров -db_size и -wal_size соответственно. Если эти параметры не указаны, будут использоваться следующие значения (по порядку):
  • bluestore_block_{db,wal}_size из конфигурации Ceph:
    • … база данных, раздел [osd];
    • … база данных, раздел [global];
    • … файл, раздел [osd];
    • … файл, раздел [global];
  • 10% (DB)/1% (WAL) от размера OSD.

Примечание

В DB хранятся внутренние метаданные BlueStore, а WAL — это внутренний журнал BlueStore или журнал предварительной записи. Для лучшей производительности рекомендуется использовать высокопроизводительные диски.

26.6.5.2. Удаление OSD

Процедура удаления OSD в веб-интерфейсе:
  1. Выбрать узел PVE и перейти на панель CephOSD.
  2. Выбрать OSD, который нужно удалить и нажать кнопку Out.
  3. После того как статус OSD изменится с in на out, нажать кнопку Остановка.
  4. После того как статус изменится с up на down, выбрать в раскрывающемся списке ДополнительноУничтожить.
Чтобы удалить OSD в консоли, следует выполнить следующие команды:
# ceph osd out <ID>
# systemctl stop ceph-osd@<ID>.service
Первая команда указывает Ceph не включать OSD в распределение данных. Вторая команда останавливает службу OSD. До этого момента данные не теряются.
Следующая команда уничтожит OSD (можно указать параметр -cleanup, чтобы дополнительно уничтожить таблицу разделов):
# pveceph osd destroy <ID>

Предупреждение

Эта команда уничтожит все данные на диске!