Ceph-кластер в среднем бизнесе: когда он оправдан и как его собрать без боли
Меня зовут Семёнов Евгений Сергеевич, директор АйТи Фреш. В октябре 2025 один из моих клиентов — логистическая компания на 80 рабочих мест с собственным дата-центром на окраине Москвы — столкнулась с исчезновением поддержки их массива NetApp FAS2750. Продление на год стоило 720 тыс руб, и, главное, запчасти стали ждать 6-8 недель. Им нужно было альтернативное распределённое хранилище на несколько сотен терабайт для виртуальных машин Proxmox и корпоративных файловых шар. Собрали Ceph-кластер на 5 узлах, 76 ТБ usable, за 3.4 млн руб. Расскажу, кому Ceph реально нужен и как мы его ставим.
Когда Ceph оправдан, а когда нет
Ceph — сложный, и его стоимость (времени админа + сети + железа) окупается только при определённых условиях. Моё правило:
Ceph нужен, если одновременно:
- Есть 4+ физических сервера под хранилище.
- Объём данных от 20 ТБ и растёт 30%+ в год.
- Нужна отказоустойчивость от одновременного выхода двух узлов/дисков.
- Используются хотя бы два типа доступа: VM-диски (RBD) + файловая шара (CephFS) или S3 (RGW).
- В команде есть админ с Linux-опытом, готовый изучить Ceph.
Ceph НЕ нужен, если:
- У вас 1-2 VM-сервера и нужно место под 10-15 VM — ZFS+replication дешевле и проще.
- В офисе один сервер — Ceph требует минимум 3 узла.
- Нет выделенной сети 10G+ — на 1G Ceph работает мучительно медленно.
- Нет бюджета на Linux-админа — даже под аутсорсом Ceph требует минимум 4-8 часов в месяц поддержки.
Архитектурные блоки 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 |
На одном узле могут жить несколько ролей — типовой вариант: 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 — дефолтный storage engine. Для производительности критично вынести WAL и DB на NVMe, а основные данные оставить на HDD. Рекомендация:
- WAL — 1 ГБ на OSD.
- DB — 4% от размера OSD (для 12 ТБ HDD — 480 ГБ).
- NVMe на 1.92 ТБ хватит на 4 HDD (480 × 4 = 1920).
Команда создания:
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
Для VM — всегда replicated size=3 (быстрее, чем EC, хоть и тратит больше места). Для архивов и бэкапов — EC 4+2 или 8+2 (экономия 33-50% места, но медленнее).
RBD для Proxmox
Интеграция с 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
После этого все VM-диски можно создавать на Ceph-пуле. Live migration между узлами Proxmox работает мгновенно — диск не двигается, только VM-процесс.
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
Для бэкапов 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-2: Аудит текущего NetApp (36 ТБ used), проектирование Ceph-кластера на 5 узлов.
- Недели 3-4: Закупка 5× Supermicro б/у, 25G Mikrotik, кабели DAC. Монтаж в стойку, сеть.
- Недели 5-6: Установка Debian 12 + cephadm bootstrap, поднятие 5-узлового кластера, создание пулов.
- Неделя 7: Тестирование производительности (fio, rados bench). Получили 38 000 IOPS random 4k на RBD-пуле и 2.4 GB/s sequential.
- Недели 8-9: Миграция 24 VM с Proxmox+NetApp на Proxmox+Ceph. Использовали qm move-disk в онлайне — каждая VM по 30-90 минут.
- Неделя 10: Миграция файловых шар. Перенос через robocopy + SMB Gateway на CephFS.
- Неделя 11: RGW + интеграция с Proxmox PBS. Бэкапы VM начали летать в Ceph-S3.
- Неделя 12: Мониторинг (Prometheus + Grafana + CephExporter), дашборды, обучение админа клиента, передача доступа и документации.
Бюджет: железо 2.4 млн руб (б/у) + сеть 580 тыс руб + наши услуги 460 тыс руб = 3.44 млн руб. NetApp-продление на год — 720 тыс, новая коробка NetApp аналогичной ёмкости — 9-11 млн. Окупилось уже в первый год.
Мониторинг и ежедневная эксплуатация
ceph -s— общий статус, должно быть HEALTH_OK или HEALTH_WARN с причиной.ceph osd tree— карта OSD по узлам.ceph df— размер каждого пула и usage.ceph osd perf— latency каждого OSD.- Prometheus + ceph-exporter → Grafana с официальным дашбордом.
- Алерты: OSD down >5 мин, PG inactive, near-full (>80%), recovery >24h.
Развернём 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-аналог.