MinIO S3-хранилище для офиса: как 20 ТБ бэкапов и архива перевели с дисков на объектник
Меня зовут Семёнов Евгений Сергеевич, я директор АйТи Фреш. Расскажу вам историю, которая произошла в декабре 2025-го. Представьте: юридическая компания с 50 РМ, у которой набралось целых 20 ТБ архива — это и документы, и сканы дел, и почта за 15 лет. Плюс, конечно, бэкапы Veeam и бэкапы Nextcloud. И вот вся эта махина хранилась на стареньком Dell PowerVault через iSCSI. Ну что сказать? Это было медленно, жутко неудобно, да и дороговато, если честно. Мы недолго думали и решили поставить MinIO на совершенно новый сервер. И что в итоге? Получили один набор API для всего, представляете! Это принесло экономию в 840 тысяч в год на облачных S3, и, что очень важно, мы теперь полностью готовы к географическому резервированию.
Почему S3 стал стандартом
Помните, в 2008 году Amazon запустил свой S3? С тех пор его API стал настоящим стандартом де-факто для объектного хранения. Сейчас, куда ни глянь, практически любой софт, который хоть что-то пишет в «облако», уже умеет работать с S3:
- Veeam Backup & Replication — объектное хранилище как Scale-Out Backup Repository.
- Restic, Borg, Duplicacy — резервное копирование Linux/Windows.
- PostgreSQL WAL-G, pgBackRest — бэкап баз данных.
- Nextcloud — primary storage или external storage.
- Kubernetes Velero — бэкап манифестов и PV.
- Grafana Loki, Thanos, Mimir — хранение логов и метрик.
- MSSQL — BACKUP TO URL.
- 1С-коннектор — выгрузка документов и сканов.
- OpenSearch — snapshots для бэкапа индексов.
- Immich, PhotoPrism — хранилище фото.
Представьте, насколько удобнее иметь всего один S3-endpoint, к которому можно подключить все эти сервисы! Это же просто небо и земля по сравнению с тем, чтобы городить отдельные CIFS/NFS-шары или монтированные диски. К тому же, S3 не требует никакого Domain Controller, работает он по старому доброму HTTPS и, что особенно приятно, спокойно пролетает через любые прокси и фаерволы.
Почему MinIO, а не облако и не Ceph
| Вариант | Плюсы | Минусы |
|---|---|---|
| Облачный S3 (Selectel, Yandex Cloud, VK Cloud) | Не надо своё железо, гео-распределение | ~4 руб./ГБ/мес = 80 000/мес за 20 ТБ, плюс трафик на скачивание |
| Ceph | Энтерпрайз-решение, максимум функций | Сложность эксплуатации, минимум 3 полных сервера, нужен штатный специалист |
| Старая iSCSI-полка | Есть железо, привычно | Нет S3, надо SMB/NFS, медленно, не горизонтально |
| MinIO | Один бинарник, S3-совместимый, ставится за 20 минут | Не так гибок как Ceph для мультитенантности |
Для SMB MinIO — самое то. Один сервер, 8 дисков, erasure coding — и вот у вас S3-хранилище с избыточностью «эквивалент RAID-6». Отдельный специалист не нужен: всё администрируется через веб-интерфейс или командой mc.
Архитектура железа
Клиенту собрали сервер:
- Intel Xeon Silver 4310 (12 ядер × 2,1 ГГц), 64 ГБ DDR4 ECC
- 8 × WD Ultrastar HC550 6 ТБ SAS — 48 ТБ сырых, 36 ТБ полезных в EC:8:2
- 2 × Intel P5510 960 ГБ NVMe в зеркале для ОС и кеша
- LSI 9361-16i RAID-контроллер в passthrough для MinIO
- Dual 10 GbE сетевая карта
- Резервный блок питания
Железо обошлось в 380 тыс. руб. (с учётом вторичного рынка — 280 тыс.). ОС — Debian 12, один бинарник MinIO, systemd-юнит.
Схема: кто пишет и куда
У клиента MinIO стал центральным хранилищем для:
- bucket: veeam-backups — Scale-Out Backup Repository для Veeam. Полный бэкап Hyper-V + 1С + файлов каждую ночь. 8 ТБ активных данных.
- bucket: archive-docs — сканы договоров, судебных дел, входящая/исходящая корреспонденция. 9 ТБ исторических данных, растут на 300 ГБ/мес.
- bucket: mail-archive — архив почты Dovecot, хранение 7 лет по юридическим требованиям. 1,8 ТБ.
- bucket: nextcloud-secondary — внешнее S3-хранилище для Nextcloud, туда перемещаются файлы старше 6 месяцев.
- bucket: opensearch-snapshots — snapshots индексов логов каждые 6 часов, retention 90 дней.
- bucket: pg-wal-g — непрерывный бэкап PostgreSQL для 1С-сервера с точкой восстановления любой минуты.
- bucket: immich-fotoarchive — фотоархив юрсобытий с 2018 года для юридического отдела.
У каждого бакета своя retention-политика (Lifecycle): object lock на критичных (бэкапы), версионирование на документных.
Защита от шифровальщиков
Ну а главная причина, почему SMB в 2025-м году прямо-таки кинулись ставить MinIO, — это, конечно же, надёжная защита бэкапов от всяких шифровальщиков. Что такое Object Lock в S3-совместимом хранилище? Это очень простая, но крайне важная штука: объект невозможно ни удалить, ни даже изменить до тех пор, пока не закончится retention-период. И это работает, даже если у тебя есть административный доступ!
Мы всё настроили следующим образом: бэкапы Veeam пишутся в режиме WORM (Write Once Read Many) и хранятся так 30 дней. И вот представьте: если вдруг какой-нибудь шифровальщик проберётся на Veeam-сервер, он просто физически не сможет ни удалить наши бэкапы, ни, тем более, перешифровать их. К тому же, MinIO мы подняли на совершенно отдельном хосте, с собственной сетью, и туда есть доступ исключительно с Veeam-сервера, да и то, только по S3-ключу. Максимальная безопасность!
Гео-репликация: вторая площадка
Кстати, у нашего клиента есть ещё и второй офис, который находится в Санкт-Петербурге. Там мы установили такой же, только чуть поменьше, MinIO-кластер: это один сервер с 4×4 ТБ диска, что даёт 12 ТБ полезных данных. И, конечно же, мы настроили между этими двумя кластерами репликацию site-to-site MinIO:
- Асинхронная репликация выбранных бакетов (archive-docs, mail-archive, pg-wal-g).
- Трафик по приватному тоннелю WireGuard между площадками.
- Задержка репликации 30–90 секунд при работе, полный ресинхронинг после разрыва — автоматический.
- При полном уничтожении московского офиса всё критичное восстанавливается из Петербурга.
Сравнение затрат: MinIO vs облачный S3
| Статья | Selectel S3 (20 ТБ) | MinIO self-hosted |
|---|---|---|
| Хранение в месяц | ~82 000 ₽ | амортизация 13 000 ₽ |
| Исходящий трафик | ~5–15 000 ₽/мес | 0 ₽ |
| Запросы (PUT/GET) | бесплатно в базе | 0 ₽ |
| Второй ЦОД (SPb) | +55 000 ₽/мес | амортизация 6 000 ₽ |
| Итого в месяц | ~137 000 ₽ | ~19 000 ₽ |
| В год | ~1,64 млн ₽ | ~228 000 ₽ |
Если посчитать амортизацию железа за 3 года, то это 480 тысяч за два сервера, плюс не забывайте про электричество и место. Вроде бы, немало. Но даже если учесть все наши работы от АйТи Фреш и сопровождение, разница в пользу MinIO получается просто колоссальная — около 1,2 млн ₽ в год! Вот такая экономия.
Что может пойти не так
- Заполнение дисков. MinIO не удаляет объекты автоматически — нужны Lifecycle-правила. Мы настраиваем их сразу при создании бакетов.
- Производительность поиска. Листинг миллионов объектов долгий. Это ограничение S3, не MinIO. Решение — нормальная структура префиксов (год/месяц/сущность).
- Репликация и пропускная способность. Репликация 20 ТБ на новую площадку по 100 Мбит-линку займёт 19 суток. Первый ресинхрон мы обычно делаем физически, отвозя диск.
- Обновление MinIO. В новых версиях меняются дефолты Erasure Coding, надо внимательно читать changelog перед апдейтом.
- Восстановление без MinIO. Если MinIO умрёт совсем — данные на дисках есть, но это чанки EC, вытащить отдельный файл невозможно. Значит нужен хотя бы один рабочий MinIO-инстанс.
Стоимость проекта
| Этап | Стоимость |
|---|---|
| Проектирование, подбор железа | 15 000 ₽ |
| Монтаж сервера и установка ОС | 15 000 ₽ |
| Установка и конфигурация MinIO | 20 000 ₽ |
| Миграция Veeam на MinIO | 20 000 ₽ |
| Миграция 20 ТБ архивов | 25 000 ₽ |
| Настройка репликации в Петербург | 18 000 ₽ |
| Настройка Object Lock и политик | 12 000 ₽ |
| Итого работы | 125 000 ₽ |
| Железо (два сервера) | ~480 000 ₽ |
Что мы ведём на абонентке
- Мониторинг дисков, SMART, erasure health — алерт в Telegram при проблемах.
- Обновление MinIO раз в квартал после теста в лабораторной инсталляции.
- Аудит Lifecycle-политик и чистка «хвостов» раз в месяц.
- Контроль репликации между Москвой и Петербургом.
- Замена дисков в течение 24 часов при отказе (есть склад).
- Ежегодный тест полного восстановления основных бакетов.
Хотите перестать платить за облачное S3?
Приеду, посмотрю, сколько и где у вас всё хранится, и посчитаю экономию от MinIO. Часто уже после первого взгляда за месяц удаётся сэкономить больше, чем стоит сам проект. Аудит бесплатный, по Москве и МО.
Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш
FAQ
- Что такое MinIO и зачем он SMB?
- Open-source объектное хранилище с S3-совместимым API. Разворачивается у вас на железе. Для бэкапов, архивов, медиа, логов — всего, что привычно класть в облако.
- Чем MinIO лучше обычной файловой шары?
- S3 API поддерживают Veeam, Restic, PostgreSQL WAL-G, Velero, сотни программ. Плюс версионирование, object lock, репликация.
- Какое железо нужно для 20 ТБ MinIO?
- Минимум 4 vCPU, 16 ГБ RAM, 4 диска в EC. Реально: 8 vCPU, 32 ГБ RAM, 8×6 ТБ = 48 ТБ сырых, ~36 ТБ после EC.
- Сколько стоит внедрение?
- Работы АйТи Фреш — от 55 000 ₽. Железо — 160–400 тысяч. Экономия относительно облачных S3 на 20 ТБ — около 600–900 тысяч в год.
