Ceph-кластер в среднем бизнесе: когда — АйТи Фреш
· 13 мин чтения

Ceph-кластер в среднем бизнесе: когда он оправдан и как его собрать без боли

Ceph-кластер в среднем бизнесе: когда он оправдан и как его собрать без боли

Привет! Я Евгений Семёнов, директор ITFresh. Сегодня расскажу вам одну историю, которая случилась в октябре 2025 года. Наш клиент — крупная логистическая компания с 80 сотрудниками и собственным дата-центром под Москвой — оказался в очень непростой ситуации. Представьте: у них внезапно закончилась поддержка дорогостоящего хранилища NetApp FAS2750. Мало того, что годовое продление стоило бы сумасшедшие 720 тысяч рублей, так ещё и запчасти пришлось бы ждать 6-8 недель! Можете себе представить такой простой? Им срочно нужно было мощное альтернативное распределённое хранилище на сотни терабайт. Главная задача: обеспечить работу виртуальных машин на Proxmox и, конечно, их корпоративных файловых шар. Мы нашли выход: развернули Ceph-кластер на пяти узлах. В итоге получили 76 ТБ доступной ёмкости, и всё это обошлось в 3.4 миллиона рублей. Хотите знать, кому Ceph подходит идеально и как мы его внедряем? Об этом сейчас и поговорим.

Когда Ceph оправдан, а когда нет

Ceph — это не просто, система действительно сложная. И, честно говоря, все инвестиции в неё — это и время админа, и затраты на сеть, и само железо — окупаются только при очень конкретных условиях. Вот моё главное правило:

Ceph нужен, если одновременно:

Ceph НЕ нужен, если:

Архитектурные блоки Ceph

КомпонентНазначениеСколько нужно
OSD (Object Storage Daemon)Хранит данные, один демон на дискОт 12 (4 диска × 3 узла)
MON (Monitor)Держит кластерную карту, кворум3 или 5 (нечётное)
MGR (Manager)Метрики, web-UI, модули2 (активный + standby)
MDS (Metadata Server)Для CephFS — метаданные файлов2+ если используется CephFS
RGW (RADOS Gateway)S3/Swift API шлюз2+ если нужен S3

На одном сервере иногда прекрасно уживаются сразу несколько ролей Ceph. Обычно мы делаем так: на первых трёх узлах ставим MON, MGR и OSDs вместе. А остальные узлы уже используем чисто под OSD — для хранения данных.

Типовая конфигурация 5-узлового кластера

Какое железо мы подбираем, когда работаем с клиентом, у которого примерно 50-100 рабочих мест? Вот наш типовой набор:

Каждый узел (5 шт):
  Supermicro SuperServer 2U б/у
  2 × Intel Xeon Silver 4316 (20 core total)
  128 ГБ DDR4 ECC
  2 × 480 ГБ SSD (ZFS mirror для ОС)
  2 × 1.92 ТБ NVMe U.2 (Samsung PM9A3) — для WAL+DB
  10 × 12 ТБ HDD SAS 12G 7200rpm — OSD-данные
  2 × 25G Mellanox ConnectX-5 (public+cluster сеть)
  Redundant PSU 1000W
  Total raw: 600 ТБ × 5 узлов = 3 ПБ
  Usable at size=3: ~1 ПБ
  Usable at EC 4+2: ~2 ПБ

Что касается сети: мы используем 25G LACP, завязанный на два коммутатора Mikrotik CRS520 с MLAG. И очень важный момент — обязательно разделяем трафик: отдельные VLAN идут для 'public' (это всё, что касается клиентских данных) и для 'cluster' (для репликации между OSD, чтобы ничего не мешало друг другу).

Установка через cephadm

Начиная с версии Quincy (вышла в 2022 году), процесс установки Ceph стал гораздо проще. Теперь всё делается через cephadm, а все компоненты упакованы в containerd. Это прямо сильно облегчило нам жизнь при развёртывании!

# На первом узле
apt install cephadm
cephadm bootstrap --mon-ip 10.30.0.11 --initial-dashboard-user admin
# Получаем URL dashboard + пароль

# На других узлах — устанавливаем SSH-ключ от bootstrap-узла
ssh-copy-id root@10.30.0.12
ssh-copy-id root@10.30.0.13
ssh-copy-id root@10.30.0.14
ssh-copy-id root@10.30.0.15

# Добавляем в кластер
ceph orch host add node02 10.30.0.12 _admin
ceph orch host add node03 10.30.0.13 _admin
ceph orch host add node04 10.30.0.14
ceph orch host add node05 10.30.0.15

# MON на первых трёх + MGR
ceph orch apply mon 3
ceph orch apply mgr 2

# Добавляем OSD (все свободные диски)
ceph orch apply osd --all-available-devices

Через 10-20 минут кластер готов. Проверяем ceph -s — должно быть HEALTH_OK.

BlueStore: правильное размещение WAL+DB

BlueStore — это наш стандартный движок хранения. Если вам нужна высокая производительность, жизненно важно вынести WAL и DB на быстрые NVMe-диски. А основные данные, конечно, можно оставить на обычных HDD. Наша рекомендация здесь простая:

Команда создания:

ceph orch daemon add osd node01:data_devices=/dev/sda,db_devices=/dev/nvme0n1
# повторить для каждой связки HDD+NVMe

Иначе, поверьте, всё будет работать в разы медленнее! Запись на HDD, особенно случайная, просто убивает производительность, а WAL как раз требует невероятной скорости. Так что, пожалуйста, не экономьте на NVMe — оно того стоит.

Пулы и размеры репликации

Создаём пулы под разные задачи:

# Для VM-дисков Proxmox — реплика 3, быстрый
ceph osd pool create rbd-vm 128 128 replicated
ceph osd pool set rbd-vm size 3
ceph osd pool set rbd-vm min_size 2
ceph osd pool application enable rbd-vm rbd

# Для бэкапов — Erasure Coding 4+2 (5 узлов достаточно)
ceph osd erasure-code-profile set ec42 k=4 m=2 crush-failure-domain=host
ceph osd pool create backup-ec 64 64 erasure ec42
ceph osd pool set backup-ec allow_ec_overwrites true

# Для файловой шары — реплика 3, CephFS
ceph fs volume create corpfs

Для виртуальных машин мы всегда используем replicated size=3. Да, это расходует больше места, но зато работает значительно быстрее, чем Erasure Coding. А вот для архивов и бэкапов, где важна экономия, а скорость не так критична, идеально подходит EC 4+2 или 8+2. Это позволяет сэкономить от 33% до 50% дискового пространства, хоть и работает немного медленнее.

RBD для Proxmox

Интегрировать Ceph с Proxmox — проще простого! Заходите в GUI: Datacenter, потом Storage, затем Add, и выбираете RBD.

Pool:         rbd-vm
Monitor(s):   10.30.0.11,10.30.0.12,10.30.0.13
User:         admin
KeyringFile:  /etc/pve/priv/ceph/rbd-vm.keyring

Как только всё настроено, вы можете создавать диски для своих виртуальных машин прямо на Ceph-пуле. А знаете, что самое крутое? Live migration между узлами Proxmox работает просто мгновенно! Диск при этом никуда не перемещается, двигается только сам процесс виртуальной машины.

CephFS для файловых шар

CephFS — это полноценная файловая система, она полностью совместима с POSIX и, конечно, работает прямо поверх Ceph. Её можно без проблем смонтировать на любой Linux-машине, используя либо FUSE, либо нативный kernel-client. А для тех, кому нужно работать с Windows, мы настраиваем Samba Gateway.

# На Linux-клиенте
mount -t ceph 10.30.0.11:6789:/ /mnt/corp \
  -o name=admin,secret=AQCTxAlnwsw6CRAA...

# Либо через fstab
10.30.0.11,10.30.0.12,10.30.0.13:/ /mnt/corp ceph \
  name=admin,secretfile=/etc/ceph/admin.secret,_netdev 0 2

Для Windows-клиентов мы делаем так: ставим Samba вместе с ceph-volume, а затем экспортируем SMB-шару, используя CephFS как бэкенд.

RGW как S3-совместимый объектный storage

И, конечно, Ceph отлично подходит для бэкапов — будь то Veeam или Proxmox PBS. А ещё он идеален для хранения объектов различных приложений. В общем, вариантов масса:

ceph orch apply rgw corp --port=7480
# Создаём пользователя
radosgw-admin user create --uid=backup --display-name="Backup User"
# Получаем access_key и secret_key

Дальше в Veeam или Proxmox PBS указываем endpoint http://ceph-rgw.example.ru:7480 и полученные ключи.

Кейс: миграция логистической компании с NetApp

Хронология проекта (32 рабочих дня):

  1. **Недели 1-2:** Начинаем с детального аудита вашего NetApp (напомним, там занято 36 ТБ). Одновременно проектируем будущий Ceph-кластер, который будет состоять из пяти узлов.
  2. **Недели 3-4:** Приступаем к закупке: пять б/у серверов Supermicro, 25G-коммутатор Mikrotik, плюс все нужные кабели DAC. После этого сразу монтируем оборудование в стойку и настраиваем сеть.
  3. **Недели 5-6:** Это уже кульминация! Устанавливаем Debian 12, настраиваем cephadm bootstrap. Далее — самое интересное: поднимаем наш новенький 5-узловой Ceph-кластер и создаем все необходимые пулы.
  4. На седьмой неделе, когда пришло время проверять систему на прочность, мы взялись за тестирование производительности. Работали с `fio` и `rados bench` – всё по классике. Представляете, на RBD-пуле удалось выжать 38 000 IOPS при случайном чтении 4K блоков! А последовательная скорость? Целых 2.4 ГБ/с. Вот это мощь!
  5. На протяжении восьмой и девятой недель мы решали непростую задачу: мигрировали 24 виртуальные машины. Переезд был с Proxmox+NetApp на новенькую связку Proxmox+Ceph. И что самое интересное? Всё это происходило в онлайне, не останавливая работу! Мы применяли `qm move-disk`, и на каждую VM уходило от получаса до полутора часов. По-моему, отличный результат.
  6. Десятая неделя была целиком посвящена миграции файловых шар. Как их перенести надежно и безболезненно? Мы решили использовать проверенную комбинацию: `robocopy` для копирования, а затем подключили SMB Gateway, чтобы всё легло ровненько на CephFS. Работа на удивление быстро завершилась.
  7. На одиннадцатой неделе мы подключили RGW и сразу же интегрировали его с Proxmox PBS. Знаете, что это дало? Бэкапы всех виртуальных машин теперь просто летят в Ceph-S3! Забудьте о медленных сохранениях, с этим решением процесс стал молниеносным.
  8. И вот двенадцатая, финальная неделя! Здесь мы доводили всё до идеала. Настроили полный мониторинг: `Prometheus` вместе с `Grafana` и, конечно же, `CephExporter`. Разработали удобные дашборды, чтобы вся картина была на виду. Затем что? Обучили администратора клиента, подробно показав, как управлять новой системой. И, разумеется, передали все доступы и необходимую документацию. Клиент теперь полностью в курсе!

Давайте посчитаем бюджет. Железо (мы использовали б/у, что очень выгодно) обошлось в 2.4 млн рублей, сеть — 580 тысяч, а наши услуги — 460 тысяч. Итого, общая сумма составила 3.44 млн рублей. А теперь сравните: годовое продление того самого NetApp стоило 720 тысяч, а новая аналогичная система от NetApp вытянула бы 9-11 миллионов! Выгода очевидна, верно? Наше решение окупилось для клиента уже в первый год.

Мониторинг и ежедневная эксплуатация

Развернём Ceph-кластер для вашего бизнеса — от 420 000 руб.

Я лично проектирую и разворачиваю Ceph-кластеры для компаний 50+ рабочих мест в Москве и области. От подбора железа до миграции с NetApp/Dell EMC, Proxmox-интеграция, CephFS и RGW, мониторинг в Prometheus, обучение администратора. Типовой проект — 6-12 недель. Первичный аудит инфраструктуры и план миграции — бесплатно.

Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш

FAQ — Ceph для бизнеса

Ceph — это сложно. Нужен ли он среднему бизнесу?
Нужен, если одновременно: 1) виртуалок 20+; 2) нужна отказоустойчивость без простоя (SSD и HDD disks fail); 3) рост объёма данных прогнозируется 30-50% в год. Для офиса 20-30 мест со статичной нагрузкой и ZFS-репликацией Ceph — overkill. Для 50+ мест с растущими VM, S3-бэкапами, файловыми шарами — оправдан.
Сколько минимум узлов для прод-Ceph?
Три — минимум для кворума monitor и для size=3 репликации. Но при этом вы теряете только один узел безопасно. Оптимум — 4-5 узлов: можно потерять два одновременно без потери данных. Каждый узел: 2 CPU / 32 ГБ RAM / 4-8 OSD (SSD или NVMe). Сеть — обязательно 25G или 10G минимум.
BlueStore или FileStore?
BlueStore — начиная с Luminous (2017) это дефолт. FileStore уже deprecated. В 2026 году никаких FileStore — всегда BlueStore. WAL и DB на NVMe, основные данные на SSD/HDD. Для HDD-only нужны отдельные NVMe-диски для WAL+DB, иначе производительность будет в разы хуже.
Ceph vs NetApp/EMC для МСБ?
NetApp/Dell EMC — коробочное решение с техподдержкой, 'просто работает'. Стоимость — 3-8 млн руб за начальный уровень + 400-900 тыс руб/год поддержка. Ceph — open source, стоит сэкономленных денег, но требует админа с опытом. Для компании, которая может себе позволить Ceph-админа (своего или через аутсорс), Ceph даёт 2-3x экономии.
Сколько стоит развёртывание Ceph-кластера на 50 ТБ usable?
5 серверов Supermicro с 10× 12ТБ HDD + 2× 1.92ТБ NVMe каждый (для WAL+DB) — около 2.4-2.8 млн руб б/у. Сеть 25G (коммутатор + карты) — 600-900 тыс руб. Работа под ключ (установка, настройка, обучение администратора) — от 420 тыс руб. Итого ~3.5-4 млн руб против 8-12 млн за NetApp-аналог.

Подпишитесь на рассылку ITfresh

Каждый руководитель IT или сисадмин знает, как ценны практические знания. Мы еженедельно публикуем новые гайды, где делимся лайфхаками из наших реальных проектов. Узнайте всё о безопасности, 1С, миграциях, резервных копиях — и сразу применяйте в работе!

Реквизиты оператора персональных данных

ООО «АЙТИ-ФРЕШ», ИНН 7719418495, КПП 771901001. Юридический адрес: 105523, г. Москва, Щёлковское шоссе, д. 92, корп. 7. Контакт: info@itfresh.ru, +7 903 729-62-41. Оператор обрабатывает e-mail подписчика в целях рассылки информационных и рекламных материалов до момента отзыва согласия.