Ceph
Ceph
TL;DR
Программно-определяемое распределенное хранилище. Дает block (RBD), object (S3/Swift) и file (CephFS) storage из одного кластера.
- OSD (Object Storage Daemon) - хранит данные на дисках
- MON (Monitor) - следит за состоянием кластера, хранит карту
- MGR (Manager) - метрики, дашборд, балансировка
- MDS (Metadata Server) - только для CephFS
Пакеты и пути
- Пакеты:
ceph,ceph-radosgw - Сервис:
ceph.service - Конфиг:
/etc/ceph/ceph.conf - Логи:
/var/log/ceph/* - Keyring:
/etc/ceph/ceph.client.admin.keyring
Команды
Статус кластера
| |
Общее состояние. HEALTH_OK / HEALTH_WARN / HEALTH_ERR.
| |
Дерево OSD - какие диски на каких хостах, статус up/down.
| |
Использование места в кластере и по пулам.
Пулы
| |
Список пулов.
| |
Создать пул с 128 PG (placement groups).
| |
Установить репликацию x3.
RBD (block storage)
| |
Создать блочный образ 10 ГБ.
| |
Подключить как /dev/rbdX.
| |
Список образов / информация.
Сервисы
| |
Список сервисов и процессов (cephadm).
| |
Перезапустить конкретный демон.
Проверка
| |
Быстрая проверка - HEALTH_OK значит все ок.
| |
Сколько OSD всего / up / in.
| |
Состояние placement groups.
Подводные камни
- Минимум 3 MON для кворума
- PG count влияет на производительность - слишком мало или много = проблемы
- При падении OSD данные ребалансируются - нагрузка на сеть
ceph osd pool deleteтребует подтверждения дважды (защита от случайного удаления)