Техподдержка образовательной платформы Juz40: от 1 штатного DevOps к полноценному IT-отделу

Компания обратилась к нам после ухода единственного DevOps-инженера — нужно было забрать на себя сопровождение инфраструктуры, навести в ней порядок и доработать мониторинг.

Результаты

Решение

Задача

  • Инвентаризация физических серверов и виртуальных машин
  • Аудит инфраструктуры с рекомендациями и последующим исправлением
  • Доработка мониторинга и алертинга
  • Резервное копирование логов Elasticsearch
Вместо одного штатного инженера платформу сопровождает полноценный IT-отдел. Инфраструктура описана, мониторинг доработан, задачи идут через единый канал — 20–30 задач в месяц, от инцидентов до плановых работ.
Cопровождать инфраструктуру платформы. Параллельно — навести порядок в инфраструктуре и довести мониторинг до состояния, когда о проблемах узнают инженеры, а не пользователи.

О клиенте

JUZ40 ONLINE — казахстанская компания, развивающая образовательную онлайн-платформу juz40-edu.kz для подготовки школьников к ЕНТ — Единому национальному тестированию.


Инфраструктура гибридная: физические сервера и около 60 виртуальных машин на собственном железе, часть нагрузки — в Yandex Cloud. Данные — в PostgreSQL, очереди — RabbitMQ, кэш — Redis, логи — в ELK. Развёрнуты два кластера Kubernetes, продовый и препрод, на Ubuntu 24.04.

Проблема

Всю эту инфраструктуру обслуживал один штатный DevOps-инженер. Когда он ушёл, компания осталась без человека, который знал, как устроены её серверы, кластеры и мониторинг.


Такая конфигурация опасна не только в момент увольнения. Один инженер — это единственная точка отказа: он не может дежурить круглосуточно, уходит в отпуск и болеет, а вся картина инфраструктуры хранится у него в голове, а не в документах. До обращения к нам компания уже пережила несколько крупных инцидентов, которые вызвали заметный негатив у пользователей платформы.


Мониторинг в компании был, но требовал доработки: часть систем не была покрыта, алерты нуждались в отладке.

Ход проекта

Клиент сформулировал задачу как поэтапную передачу технической поддержки — сначала частично, затем полностью. Мы работали по такой схеме:


  • Инвентаризация. Описали парк физических серверов и виртуальных машин. Без этого невозможно ни принять инфраструктуру на поддержку, ни оценить риски.
  • Аудит и исправления. Провели аудит инфраструктуры, собрали рекомендации, согласовали их с клиентом и перешли к исправлению. Мы не вносим изменения в чужую инфраструктуру без согласования — каждая правка обсуждается.
  • Мониторинг. Доработали существующую систему: Prometheus, Alertmanager, Blackbox exporter и Grafana. У клиента уже было много дашбордов — мы добавили свои, замониторили то, что не мониторилось, и отладили алерты. Оповещения приходят в Telegram.
  • Логи и бэкапы. Логи в Elasticsearch — рабочий инструмент поддержки: именно по ним разбирают, что происходило, когда приходит жалоба от пользователя. Настроили резервное копирование и выгрузку в холодное хранилище S3, чтобы логи не забивали место и при этом оставались доступны для разбора.
  • Процесс работы. Заявки приходят через бота и общий чат, в котором работают обе команды — наша и клиента, всего 30 участников.

Результат

  • Инфраструктура больше не зависит от одного человека. Вместо одного штатного инженера платформу сопровождает целая команда инженеров, поддержки и тимлида.
  • Есть полная картина парка инфраструктуры.
  • Мониторинг доработан. Системы, которые раньше оставались вне наблюдения, покрыты; алерты отлажены и приходят в Telegram.
  • Поддержка идёт через единый канал. 20–30 задач в месяц — инциденты, изменения, консультации и плановые работы — с прозрачной историей обращений.

Cтек технологий

  • Kubernetes
  • PostgreSQL
  • RabbitMQ
  • Redis
  • S3
  • Prometheus
  • Grafana / Alertmanager / Blackbox
  • ELK

Поможем в решении DevOps-задач

Если и у вас есть задача для нас — обращайтесь. Можем начать с аудита инфраструктуры и после этого перейти к полноценному проекту.

Заказать аудит