О чём эта история
Компания «ЭНЕРГОГАРАНТ» была основана в 1992 году для страхования крупных рисков в энергетической сфере. Входит в топ-20 российских страховщиков по объёму страховых взносов. Компания предоставляет клиентам одноимённый продукт, на базе которого оказывает услуги по страхованию жизни, здоровья, имущества, путешествий, авто и ипотечному страхованию.
Весной 2024 года команда «ЭНЕРГОГАРАНТА» перенесла личный кабинет пользователя на облачную платформу Yandex Cloud. Компания выстроила отказоустойчивую высокодоступную инфраструктуру с помощью нескольких нод Yandex Managed Service for Kubernetes®: количество инцидентов сократилось на 60%, а время восстановления — до 15 минут. Благодаря механизмам отказоустойчивости Yandex Cloud до 99,9% повысился SLA. Кроме того, команда проекта ускорила выпуск новых функций на 50%, а обновлений личного кабинета и исправлений ошибок — на 30% благодаря настроенному процессу CI/CD.
Развитая облачная инфраструктура для масштабирования страхового сервиса
Страховая компания «ЭНЕРГОГАРАНТ» работает на российском рынке более 30 лет, имеет сеть филиалов и представительств во всех субъектах РФ и входит в список системно значимых компаний России. Среди клиентов — крупные энергетические, нефтеперерабатывающие, металлургические и машиностроительные предприятия, строительные, телекоммуникационные, производственные, транспортные и лизинговые компании, банки, медицинские учреждения и сотни тысяч частных клиентов.
Ключевой канал взаимодействия компании с клиентами — сервис «ЭНЕРГОГАРАНТ» с личным кабинетом пользователя. Изначально архитектура сервиса была монолитной, и его развернули на единственном сервере в облаке IaaS с локальной базой данных. Код сервиса обновляли вручную. Инфраструктура и архитектура ограничивали масштабирование сервиса и влияли на отказоустойчивость. Кроме того, компания была вынуждена держать резерв мощностей на случай пиковых нагрузок.
Чтобы улучшить качество обслуживания, компания решила изменить архитектуру проекта и искала для новой версии развитую облачную инфраструктуру, включающую управляемые сервисы. Кроме того, платформа должна была соответствовать требованиям 152-ФЗ «О персональных данных» и отраслевому стандарту по безопасности финансовых и банковских операций ГОСТ Р 57580.1-2017.
Компания выбирала облачного провайдера среди ведущих игроков IT-рынка России. Основные требования: наличие управляемых сервисов для Kubernetes, СУБД PostgreSQL и MySQL, GitLab, балансировщика нагрузки, а также возможность самостоятельно управлять облачными ресурсами.
Изучив предложения на рынке, команда выбрала Yandex Cloud. Платформа подходила под все технические и регуляторные требования компании, имела качественную документацию и предоставляла возможность управлять инструментами IaC. Дополнительными плюсами стали прозрачная тарификация и поддержка инфраструктуры и ПО со стороны команды Yandex Cloud в режиме 24/7.
От монолита к микросервисам в облаке
Изначально часть информации сервиса хранилась в облаке, но система была развёрнута в физической инфраструктуре.
Основная цель проекта — создать отказоустойчивый масштабируемый сервис. Для этого команда решила сначала выделить в виде микросервисов и разместить в облаке фронтенд и бэкенд личного кабинета пользователя. Чтобы обеспечить высокую производительность, выбрали развёртывание в кластере Yandex Managed Service for Kubernetes. Для безопасности и управляемости инфраструктуры планировали реализовать подход Infrastructure as Code (IaC), а для ускорения выпуска обновлений и новых функций настроили пайплайн CI/CD. Ядро сервиса оставили на физических серверах до следующего этапа миграции.
Первое, что команда сделала при миграции, — занялась рефакторингом кода, чтобы вынести ресурсы во внешние сервисы. Сейчас личный кабинет развёрнут на нескольких нодах Kubernetes, которые обеспечивают отказоустойчивость, а при росте нагрузки HPA автоматически тиражирует подсистемы сервиса, обеспечивая масштабируемость. Для хранения оперативной информации выбрали Yandex Managed Service for PostgreSQL и Yandex Managed Service for MySQL®, а для статических данных — Yandex Object Storage. Чтобы управлять трафиком, подключили Yandex Network Load Balancer.
Микросервисы взаимодействуют с ядром системы, которое находится в другом вычислительном контуре. Безопасную передачу данных в гибридной инфраструктуре реализовали с помощью Interconnect.
В процессе миграции команда реализовала подход IaC. Для страховой компании такая практика — залог безопасности бизнеса. Подход обеспечивает полный контроль над изменениями инфраструктуры и отсутствие зависимости от конкретных людей (все сущности описаны в коде). Основной инструмент — менеджер пакетов для Kubernetes — Helm. С помощью Helm Charts команда описывает, устанавливает и обновляет приложения.
Также настроили пайплайн CI/CD, что позволило значительно ускорить выпуск обновлений. Развернули Yandex Managed Service for GitLab и Yandex Container Registry для собранных образов приложений.
Для мониторинга и логирования команда «ЭНЕРГОГАРАНТА» развернула Loki, VictoriaMetrics и Grafana.
Весь проект занял один год. За это время команда не только провела миграцию, но и прошла обучение в Яндекс Практикуме по направлению DevOps для разработки и эксплуатации. Такой комплексный подход помог существенно поднять компетенции команды.
Модернизация стека и ускорение time to market
В Yandex Cloud перенесли личный кабинет, который позволяет клиентам управлять их продуктами на сервисе. В дальнейшем, по мере обучения команды, компания планирует перенести в облако ядро системы, сервис, который отвечает за расчёты, а также вспомогательные сервисы. Для этого нужно продолжить работу над созданием микросервисной архитектуры всего проекта и его адаптацией к облачной инфраструктуре. В планах использовать Yandex Cloud Functions и Yandex Message Queue.
При переносе личного кабинета пользователя в облако компания полностью модернизировала технологический стек и создала отказоустойчивую инфраструктуру. В итоге количество инцидентов сократилось на 60%, а время восстановления — до 15 минут. Команда повысила SLA сервиса до 99,9%, а масштабируемая инфраструктура проекта готова к росту нагрузки. Кроме того, создали CI/CD-конвейер, что ускорило выпуск новых функций на 50%, а обновлений личного кабинета и исправлений ошибок — на 30%.
Мнение
Мы заложили основу для масштабируемости и оперативного реагирования на изменения рынка, что даст возможность в будущем значительно сократить операционные затраты и ускорить вывод продуктов на рынок. Эти технологии обеспечивают высокую гибкость и отказоустойчивость, что особенно важно для стабильного роста компании в дальнейшем. С ростом объёма сервисов и увеличением числа развёртываний мы ожидаем увидеть существенный экономический эффект от этих инвестиций.