Експертиза · Інфраструктура та операції
Ми розміщуємо застосунок на сервері, який контролюємо, з оборотним розгортанням, перевіреними резервними копіями та місцем, де видно, коли щось упало.
Хостинг, запуск, моніторинг і безперервність для вебдодатків і платформ із базою даних. Ми працюємо на інфраструктурі, яку клієнт може собі привласнити: віртуальні машини в європейських провайдерів, nginx, процеси під наглядом, контейнери, самохостингова база даних. Це включає відповідь на запитання «де фактично зберігаються мої дані».
Вже збудованоМи так експлуатуємо кілька власних систем, а конфігурації зберігаються в репозиторіях, а не лише на серверах. Цей сайт працює на nginx з Next.js 16 під PM2, в OVHcloud București. Платформа асистентів працює на Microsoft Azure, Poland Central, з MySQL, Redis і RabbitMQ в контейнерах, з’єднаних із локальним інтерфейсом. Власна громадська платформа використовує systemd units із публікацією через атомарне перемикання символічного посилання, щоденну перевірену резервну копію та окреме завдання з ретенції, яке запускається лише якщо ця копія вдалася. Внутрішня дошка публікується через власний runner, з GitHub actions, зафіксованими на повному fingerprint, і з автоматичним поверненням до попередньої версії, якщо перевірка стану падає після публікації. Застереження, яке треба сказати: рівень автоматизації різниться від системи до системи. Публікація цього сайту досі виконується вручну, а міграції бази даних застосовуються вручну, навмисно. Ми не продаємо автоматичний ланцюг, якого в нас немає всюди.
Застосунок, який працює на ноутбуці, і той, що працює в продакшені, відрізняються речами, яких не видно в інтерфейсі: що стається, коли процес помирає о третій ночі, що стається, коли розгортання йде невдало, куди потрапляють журнали, хто першим дізнається, що щось упало, і звідки відновлюється база даних, якщо диск зникає. Ця послуга займається саме тією частиною.
Базовий вибір, який ми пропонуємо, — це інфраструктура, на яку клієнт може претендувати: віртуальна машина в європейського постачальника, nginx спереду, процеси під наглядачем, контейнери там, де це має сенс, самостійно розміщена база даних там, де незалежність важливіша за зручність. Не тому, що керовані платформи погані — а тому, що одного дня ви захочете забрати все й піти, і якщо це не було продумано на початку, дешево цього вже не зробиш.
Питання про суверенітет даних має лише одну чесну відповідь: перевірену. Локацію підтверджують, звертаючись до сервісу метаданих віртуальної машини та реєстру адреси, а не читаючи маркетингову сторінку постачальника. Різниця не теоретична — для передавання всередині Європейського економічного простору розділ про передавання в Законі 195/2024 просто не застосовується. Міграція, яку ми виконали, перенесла платформу з бази даних, розміщеної у Сполучених Штатах, на самостійно розміщений стек у Європейському Союзі, саме з цієї причини.
Чого ми не обіцяємо: що все автоматично. Міграції схеми ми застосовуємо вручну, свідомо, тому що міграція, застосована автоматично в продакшені ланцюгом, який не знає, що в таблиці, — це звичайний спосіб втратити дані. Публікацію коду автоматизують; зміну структури бази залишають людським рішенням, зі свіжою резервною копією позаду.