К основному содержимому

Ceph в Proxmox VE: кластер распределённого хранения

Proxmox VE · 29.09.2026

Что такое Ceph и зачем он нужен в Proxmox VE

Ceph — распределённая программная система хранения данных, которая объединяет локальные диски нескольких серверов в единый отказоустойчивый пул. Proxmox VE интегрирует Ceph напрямую в веб-интерфейс: не нужно поднимать отдельный кластер хранения, диски настраиваются прямо из панели узла.

Главное преимущество — общее хранилище без выделенного SAN. Диски VM автоматически реплицируются между узлами, и при отказе одного сервера машины продолжают работать с других копий данных. Это делает Ceph основой для живой миграции и высокой доступности в кластере Proxmox VE.

Какие требования предъявляются к узлам кластера

Ceph рассчитан на кластер минимум из трёх узлов — меньшее количество не даёт кворума для мониторов и приводит к остановке пула при потере одного сервера. Для продакшена нужна отдельная сеть под трафик Ceph: репликация и heartbeat создают высокую нагрузку, и общий линк с трафиком VM быстро становится узким местом.

ПараметрМинимумРекомендуется
Узлов в кластере35 и больше
Сеть для Ceph1 Гбит/с10 Гбит/с, отдельный VLAN
Диски под OSDSSDNVMe для журнала и данных
Оперативная память4 ГБ на OSD8 ГБ на OSD

Как установить Ceph на всех узлах кластера

Пакеты Ceph ставятся на каждый узел кластера Proxmox VE отдельно, через веб-интерфейс или консоль. Порядок действий одинаковый для всех серверов.

pveceph install --repository no-subscription
pveceph init --network 10.10.10.0/24

Команда pveceph init задаёт сеть, по которой узлы будут обмениваться служебным трафиком. После инициализации на первом узле остальные серверы кластера сразу видят конфигурацию Ceph.

Как создать мониторы, менеджеры и OSD

Монитор (MON) хранит карту кластера и отвечает за кворум, менеджер (MGR) отдаёт метрики и статистику. Их нужно минимум по три штуки на разных узлах:

  • Создать монитор на каждом из трёх узлов через раздел Ceph → Monitor веб-интерфейса.
  • Добавить менеджер на тех же узлах через Ceph → Manager.
  • Для каждого физического диска под данные создать OSD командой pveceph osd create /dev/sdb.

OSD (Object Storage Daemon) — это процесс, который обслуживает один физический диск. Чем больше OSD распределено по узлам, тем быстрее и надёжнее работает пул.

Как создать пул RBD и подключить его как хранилище

Пул — это логическое пространство с заданным уровнем репликации. Для дисков виртуальных машин используется тип RBD (RADOS Block Device).

pveceph pool create vm-pool --size 3 --min_size 2

Параметр size 3 означает три копии каждого блока данных на разных OSD, min_size 2 — минимум две доступные копии, при которых пул продолжает принимать запись. После создания пул автоматически появляется в разделе Datacenter → Storage и доступен для дисков VM и LXC.

Как проверить состояние кластера и на что смотреть

Основная команда диагностики — ceph -s. Статус HEALTH_OK означает, что кластер работает штатно. Статус HEALTH_WARN чаще всего говорит о деградации из-за отключённого OSD или нехватки места, а HEALTH_ERR требует немедленного вмешательства.

В веб-интерфейсе вкладка Ceph → Log показывает события мониторов, а раздел Ceph → OSD — состояние каждого диска и объём занятого места. Если один OSD падает регулярно, стоит проверить диск через smartctl и вывести его из пула, а не ждать полного отказа.

Чек-лист перед вводом Ceph в эксплуатацию

  • В кластере минимум три узла и три монитора.
  • Для трафика Ceph выделена отдельная сеть.
  • Создано достаточно OSD для нужного уровня репликации.
  • Пул создан с size 3 и min_size 2 для продакшена.
  • Команда ceph -s показывает HEALTH_OK.

После этого пул Ceph можно использовать как основное хранилище для дисков VM, а для дальнейшей защиты данных настроить резервное копирование на отдельный сервер бэкапов.

← Назад в базу знаний Задать вопрос поддержке