Стандартизация инструментов и подходов CI/CD
- DevOps-инженеры
- Terraform
- Ansible
- JCasC
- Jenkins
- HashiCorp Vault
У вас есть задача?
Давайте обсудим?
О клиенте
Одна из крупнейших букмекерских компаний России и СНГ, осуществляющая прием ставок на спортивные и киберспортивные события через сайт, приложение или пункты приема ставок, сеть которых насчитывает более 100 клубов в Москве и 1000 отделений в 82 регионах России. Ежедневная активная аудитория составляет более 500 тысяч пользователей.
О проекте
Команда RedLab сотрудничает с беттинговой компанией уже 16 лет и за это время помогла букмекеру пройти множество важных шагов в развитии. По мере роста бизнеса клиента, его масштабирования на одном из этапов у букмекера стали появляться более высокие требования к скорости разработки продукта и частоте обновлений. В связи с чем компания стала использовать инструменты для реализации концепции CI/CD. Т.к. управление инструментами было ручным, требовалось стандартизировать и автоматизировать их работу.
Описание задачи
Для повышения темпов сборки, частоты обновлений, удобства и надежности развертывания изменений сервисов компания использовала несколько разрозненных инструментов в рамках методологии CI/CD: Teamcity, GitLab, Codefreash, конфигурирование которых осуществлялось вручную.
Управление доступами выполнялось для каждого инструмента отдельно, поэтому букмекерская компания несла высокие накладные расходы на поддержку систем и сервисов, сталкивалась со сложностями при внесении изменений, долгим процессом выпуска обновлений и рисками, связанными с человеческим фактором.
Реализация
В процессе аудита компания RedLab выявила узкие места существующей системы CI/CD и предложила решение на основе единого инструмента (Jenkins), покрывающего все потребности заказчика.
Новую инфраструктуру CI/CD полностью описали как код с использованием Terraform, Ansible и JCasC (Jenkins Configuration as Code).
Все пайплайны реализовали в коде в декларативном формате (Jenkinsfile). В качестве выделенного хранилища секретов использовали Vault by HashiCorp. Также было принято использовать в дальнейшем единую авторизацию через корпоративные учетные записи Google.
Результат
Поддержка решений упростилась, а стоимость ее сократилась в 3 раза. В несколько раз возрос темп выкладки изменений. А время полного деплоя всех систем заказчика сократилось с 60 до 15 минут.
Деплой изменений полностью автоматизирован и выполняется одной кнопкой, что существенно снижает влияние человеческого фактора на процесс. Теперь сервисы букмекера соответствуют требованиям рынка, а компания продолжает сохранять конкурентные преимущества, т.к. смогла обеспечивать высокую скорость и качество сборки продукта.