Когда у заказчика нет своего сисадмина, серверы обычно живут по принципу «пока гром не грянет»: о железе вспоминают в день, когда база перестала помещаться в тариф, и решают уже в аварийном режиме. Осенью 2021-го платформа «Аналитика сертификатов» целиком помещалась на одном общем хостинге. К 2026 году это связка из основного сервера, отдельного сервера под ClickHouse, дочернего сервера вычислений и фермы парсинг-машин, с ежедневными бэкапами в S3 и мониторингом, который сам пишет в рабочий чат. Между этими двумя точками — ни одного переезда «на вырост»: каждый новый сервер появлялся, когда продукт упирался в потолок, и проходил короткое согласование с заказчиком. Этот кейс о том, как бюро держит серверы так, что клиент про них почти не думает.
Сводка
| Отрасль | Сертификация продукции, B2B-аналитика рынка |
| Конечный клиент | «Аналитика сертификатов» |
| Формат сотрудничества | Серверное сопровождение как услуга: ёмкость, бэкапы, мониторинг, аварийная реакция, профилактика |
| Тип проекта | Инфраструктура внутренней B2B-платформы на всём жизненном цикле |
| Длительность | октябрь 2021 — июнь 2026 (4,5 года без перерыва) |
| Эволюция | Один общий хостинг (2021) → основной сервер + сервер ClickHouse + сервер вычислений + ферма парсинг-VPS (2026) |
| Бэкапы | От еженедельной выгрузки на FTP до ежедневных дампов всей базы в S3, пять копий |
| Команда | Антон Херсун (руководитель), инфраструктурная команда |
| Технологический стек | Linux, MySQL/MariaDB, ClickHouse, Redis, nginx + PHP-FPM, Grafana, S3 |
Постановка задачи
Своего системного администратора у заказчика нет, и нанимать его под один продукт не имело смысла. При этом продукт живёт на серверах целиком: база, которая со временем перестала помещаться в прежние тарифы, ночные сборы данных из реестров, экспорты на миллионы строк, десятки активных пользователей каждый день. Упадёт сервер — встанет всё.
Серверная часть с первого дня была зоной ответственности бюро: выбрать тариф, следить за местом и нагрузкой, делать бэкапы, поднимать упавшее, вовремя предлагать апгрейд. Требование к этой работе проще всего сформулировать от обратного: заказчик занимается продуктом и продажами, а про серверы вспоминает только в момент согласования очередного шага.
Второе ограничение — деньги. Расходы на инфраструктуру согласуются, мощности «про запас» никому не нужны. Значит, каждый апгрейд должен опираться на цифры: упали, выросли, перестали помещаться.
Как мы это сделали
1. Ёмкость добавлялась по факту, маленькими шагами. Первые полтора года весь продукт жил на одном общем хостинге — и этого хватало. В марте 2023-го серия падений показала, что аналитика упирается в ресурсы: за ночь серверу добавили 8 ГБ оперативной памяти и ядро процессора, после чего «аналитик наконец не отваливается». В начале 2024-го разговор об апгрейде начался с вопроса заказчику «у вас увеличилось количество активных пользователей?», а через три недели закончился коротким «давайте увеличим» — счётчик к тому моменту показал 66 активных пользователей за день. Хостер потребовал проводить миграцию с полной остановкой, поэтому её поставили на день, когда никто не работает. В мае 2024-го аналитическая база ClickHouse переехала на отдельный сервер, чтобы тяжёлые запросы не толкались с продакшеном. Ещё раньше под тяжёлые преобразования данных появился дочерний сервер вычислений (подробности в кейсе об аналитике и отчётах). Точку в этой эволюции поставил январь 2026-го: переезд платформы на тариф «Премиум» с диском 200 ГБ.
2. Парсинг получил собственную ферму. Летом 2022-го российские реестры закрылись от европейских прокси, и привычная схема сбора данных умерла за выходные. Дорогие прокси-сервисы покупать не стали. Бюро развернуло мини-ферму из дешёвых российских VPS: парсер работает с этих машин, а основной сервер разгружен. К ноябрю 2022-го ферма по отдельному ТЗ оформилась в три машины и переварила реестр аккредитованных лиц на 30 тысяч записей. Абонентская плата за мини-серверы с тех пор идёт отдельной строкой в ежемесячном счёте, и заказчик видит, из чего складывается его инфраструктура.
3. Бэкапы росли вместе с базой. Весной 2022-го появилась первая система: автоматический еженедельный бэкап всей базы с выгрузкой на FTP — «если в базе происходят необратимые изменения или кто-то что-то удаляет по неосторожности». Когда дампы ClickHouse перестали помещаться на диск, под них согласовали сетевой HDD. К концу 2025-го схема доросла до ежедневных дампов всей базы в S3-хранилище с хранением пяти последних копий. Мотивация в чате сформулирована без канцелярита: «потерять такое сокровище во время сбоев было бы обидно».
4. Мониторинг сам сообщает о проблемах. С июня 2025-го оба главных сервера наблюдаются в Grafana, а бот с алертами добавлен прямо в рабочий Telegram-чат заказчика. Сигнал вида «свободного места на диске меньше 3%» приходит туда же, где обсуждаются задачи, и обе стороны видят его одновременно. Раньше первым датчиком были жалобы пользователей, теперь автоматика чаще успевает первой.
5. Авария закрывается за часы. В июле 2022-го у хостера упал DNS, и региональные офисы потеряли доступ к платформе. Через час после жалобы пользователи получили запасной вход — аварийный реверс-прокси через резервный сервер бюро, с честной пометкой «так делать не очень правильно, но в критичных случаях пойдёт». В январе 2023-го отвалился Redis: восстановили за полчаса. В ноябре 2023-го панель хостинга при смене параметров сервера сбросила настройки, и аналитика «умерла у всех»; подъём занял две минуты от сообщения, а причину закрыли системно: подняли таймауты PHP и nginx до 600 секунд под долгие поисковые запросы. В августе 2025-го посреди ночного сбора «база самоубилась и чудом восстановилась» — зависший парсер подняли за ночь, а сам инцидент стал аргументом для переезда на более мощный сервер, который заказчик наутро подтвердил словами «давайте планировать».
6. Правила вместо повторного тушения. В мае 2022-го пользовательские экспорты распухли до десяти гигабайт, и место на диске кончилось в ноль. После чистки появилось правило, согласованное с заказчиком: экспорты хранятся три месяца, дальше удаляются. С апреля 2025-го профилактика оформлена в отдельный серверный абонемент обслуживания и защиты со счётом раз в квартал: регулярная проверка, обновление ПО, аудит. Сюжет о защите серверов, заражении криптомайнером и большой миграции января 2026-го вынесен в отдельный кейс о безопасности.
Результаты
| Метрика | Значение |
|---|---|
| Непрерывность | 4,5 года сопровождения; ни одна инфраструктурная авария не стоила продукту больше ночи |
| Эволюция ёмкости | Один общий хостинг → основной сервер, сервер ClickHouse, сервер вычислений, ферма парсинг-VPS |
| Скорость аварийной реакции | Redis за полчаса; подъём аналитики за две минуты; обход падения DNS хостера за час; восстановление после сбоя базы за ночь |
| Бэкапы | От еженедельной выгрузки на FTP до ежедневных дампов всей базы в S3, пять копий |
| Мониторинг | Grafana по двум главным серверам, алерты в рабочий чат заказчика |
За 4,5 года продукт вырос в разы по данным и пользователям, а инфраструктура шла за ним маленькими обоснованными шагами: ни одного апгрейда впрок, ни одного счёта за мощности, без которых можно было обойтись. Заказчик за всё это время ни разу не разбирался с серверами сам — каждое решение приходило к нему уже в виде короткого предложения с цифрами, на которое достаточно ответить «давайте».
Процесс и хронология
| Период | Что происходило с инфраструктурой |
|---|---|
| 2021–2022 | Весь продукт на одном общем хостинге; еженедельные бэкапы базы на FTP; после переполнения диска правило хранения экспортов 3 месяца |
| 2022 | Мини-ферма российских VPS под парсинг после блокировки европейских прокси; ферма из трёх машин по отдельному ТЗ; аварийный реверс-прокси при падении DNS хостера |
| 2023 | Кризис мощностей и ночной апгрейд (8 ГБ ОЗУ, +1 ядро); дочерний сервер вычислений; таймауты 600 секунд после инцидента с панелью хостинга |
| 2024 | Апгрейд тарифа под рост до 66 активных пользователей в день, миграция в нерабочий день; отдельный сервер под ClickHouse |
| 2025 | Серверный абонемент обслуживания и защиты поквартально; Grafana и алерты в рабочий чат; сетевой HDD под бэкапы ClickHouse; подъём базы за ночь и решение о переезде; ежедневные дампы всей базы в S3 |
| 2026 | Переезд платформы на тариф «Премиум» с диском 200 ГБ (миграция описана в кейсе о безопасности) |
Команда
- Антон Херсун, Xaver Pro, руководитель: серверная архитектура, согласование апгрейдов с заказчиком, аварийная координация.
- Инфраструктурная команда: мониторинг, бэкапы, профилактика и обновления под руководством Антона.
- Разработчики направлений (аналитическая панель, виджеты и парсеры) опираются на эту инфраструктуру: им достаются серверы, на которых код просто работает.
Серверное направление все 4,5 года остаётся в одних руках. Когда у хостера падает DNS или ночью сбоит база, человеку, который это чинит, не нужно восстанавливать контекст — он сам эту инфраструктуру собирал, шаг за шагом.
Скриншоты и материалы
Для этого кейса не критично: его суть в модели сопровождения и непрерывности, а не в визуальной составляющей.
Если ваш сервер последний раз апгрейдили, когда он упал, а бэкап проверяли ещё раньше, пришлите конфигурацию. Скажем, что в ней не переживёт рост нагрузки вдвое, какие копии реально восстановимы и с чего начать мониторинг. Разбор ничего не стоит.