Авторизация
Забыли пароль?
Сброс пароля
Вернуться к авторизации

Внедрение подхода IaC в сервис бронирования жилья

17 июля ‘24

Заказчик: Ведущая компания в сфере туризма
Страница кейса/результат: https://redlab.dev/success/vnedrenie-podhoda-iac-v-servis-bronirovanija-zhilja/

Компания RedLab приняла участие в реализации проекта по автоматизации развертывания ИТ-инфраструктуры.

Агентство-исполнитель кейса

RedLab

RedLab — глобальная ИТ-компания, предоставляющая экспертизу и ресурсы для реализации ИТ-проектов. Компания обогащает in-house команды клиентов ценнейшим опытом экспертов, а также самостоятельно реализует проекты и создает ИТ-продукты в интересах заказчиков.

1. Вводная задача от заказчика, проблематика, цели

ИТ-инфраструктура продукта росла, заказчик нуждался в автоматизации процесса доставки кода и обеспечении непрерывной работы сервиса. Ранее инхаус-команда клиента управляла ИТ-ресурсами вручную, что приводило к непредвиденным сбоям в работе системы и затрудняло масштабирование инфраструктуры. Требовалось внедрить технологии, нацеленные на быструю, гибкую и безошибочную разработку.

Клиент сформулировал следующие задачи:

  • Осуществить непрерывное развертывание ПО: автоматизация процессов сборки, тестирования и выхода новых версий программы.
  • Улучшить масштабируемость сервиса: увеличение инфраструктуры по мере роста пользовательской базы без ручного вмешательства.
  • Повысить надежность ИТ-продукта: обеспечение высокой отказоустойчивости сервиса, возможность откатить кодовую базу к последним известным стабильным файлам конфигурации.

2. Описание реализации кейса и творческого пути по поиску оптимального решения

Для создания новой ИТ-системы команда RedLab приняла решение использовать подход «инфраструктура как код» (Infrastructure as Code, IaC). Технология позволяет последовательно развертывать одну и ту же структуру в различных средах, управлять как одной, так и 1000 машинами, и сокращать жизненный цикл разработки.

DevOps-инженеры RedLab реализовали ряд задач:

  • Написали кастомные дашборды для разработчиков и бизнеса, которые предоставляют возможность отслеживать ключевые метрики проекта в реальном времени и принимать решения на основе данных.
  • Организовали непрерывную доставку в GitLab CI. В итоге сборка и тестирование кода происходят в автоматическом режиме, без необходимости вручную настраивать каждый этап.
  • Создали конфигурационный файл Dockerfile для каждого микросервиса. Технология определяет окружение и зависимости для контейнеров, что обеспечивает гибкость разработки.
  • Подготовили Helm чарты, пакетные менеджеры, которые помогают быстро и удобно управлять жизненным циклом программы.
  • Реализовали observability на GAP-стеке (Grafana, Prometheus, Alertmanager) и Istio/Jaeger. Это позволило более точно понимать текущее состояние системы и быстрее реагировать на инциденты.
  • Написали инфраструктурный код с помощью систем Ansible и Terraform. Удалось сократить время, затрачиваемое на добавление новых машин в кластеры, и улучшить воспроизводимость всех элементов.
  • Организовали переезд с монолитной архитектуры на микросервисную в Kubernetes (K8s). Теперь разработка, тестирование и развертывание отдельных компонентов происходит независимо друг от друга, что облегчает обновление и поддержку программы.

3. Результаты сотрудничества

Использование подхода IaC позволило автоматизировать и ускорить процессы развертывания инфраструктуры и программного обеспечения, а также улучшить масштабируемость, надежность и гибкость сервиса.

4. Заключение

Компания-заказчик в сфере туризма смогла предоставить пользователям оптимизированный ИТ-сервис для бронирования жилья.

Агентство-исполнитель кейса

RedLab

RedLab — глобальная ИТ-компания, предоставляющая экспертизу и ресурсы для реализации ИТ-проектов. Компания обогащает in-house команды клиентов ценнейшим опытом экспертов, а также самостоятельно реализует проекты и создает ИТ-продукты в интересах заказчиков.