Опыт перехода на микросервисную архитектуру от «Ренессанс Жизнь»

О компании
Страховая компания «Ренессанс Жизнь
ИТ-страховка для страховой компании
Деятельность страховой компании, работающей в 11 часовых поясах, всегда предъявляла повышенные требования к надёжности сервисов и доступности инфраструктуры. До 2017 года вопрос решался по стандартной схеме для крупной финансовой организации: в штаб-квартире располагались сервера, ядро системы было собрано на Oracle, к нему подключались b2b- и b2c-клиенты.
В 2017 году, согласно требованиям ЦБ РФ, все критические сервисы компании должны были быть переведены на новый режим работы, обеспечивающий доступность 24/7. Одновременно значительно возрос партнёрский спрос на API для удобства работы.
Была проведена оценка текущей ситуации и сформулированы следующие проблемы:
- высокие технологические риски при организации и эксплуатации собственного ЦОД,
- недостаточное количество ресурсов,
- высокая стоимость,
- медленное расширение,
- низкая утилизация.
Расчёты показали, что решение задач собственными силами экономически нецелесообразно. Начался поиск альтернативных путей. Сначала компания отказалась от идеи организации собственного ЦОД и перешла на виртуальное частное облако. При этом затраты оставались высокими, а ресурсы и утилизация низкими.
В конце 2018 года задача повышения утилизации была решена с внедрением Kubernetes, но затраты оставались высокими, в том числе на персонал. Тогда было принято решение использовать управляемый сервис.
В итоге к моменту перехода в Yandex Cloud сформировалось несколько задач:
- переход от сложного, с точки зрения поддержки и доработки, монолита к решению cloud-native;
- переход к микросервисной архитектуре без увеличения расходов на ИТ-специалистов;
- перенос в Yandex Cloud фронт-офисных решений и микросервисной архитектуры, минимизация расходов на инфраструктуру.
Выбор PaaS вместо IaaS
В этой статье:
Весной 2019 года СК «Ренессанс Жизнь» стала одним из трёх первых клиентов Яндекса, которые участвовали в закрытом превью новой технологии Yandex Managed Service for Kubernetes. В результате к июлю были последовательно перенесены все ресурсы и задействованы различные сервисы. В процессе миграции специалисты платформы Yandex Cloud оперативно реагировали на обратную связь от клиента, что помогло внести ряд улучшений в управляемый сервис для Kubernetes к моменту его запуска в публичный доступ. Изначально заказчик планировал использовать ресурсы Yandex Cloud в качестве резервной площадки, но в итоге на инфраструктуру PaaS был перенесен production.
На первом этапе были развёрнуты кластеры Kubernetes в Yandex Cloud. Специалисты СК «Ренессанс Жизнь» сразу ощутили удобство использования и снижение нагрузки на команду по администрированию и поддержанию кластера в рабочем состоянии и снижение стоимости.
Оценив преимущества управляемых сервисов, в СК решили масштабировать этот опыт. На втором этапе перенесли базы данных в Managed Service for PostgreSQL и данные в Managed Service for Redis. Это решило проблему перерасхода ресурсов. Также был осуществлён частичный отказ от кластера RabbitMQ в пользу сервиса очередей сообщений — Message Queue.
Заключительным шагом стал перенос хранилища, что потребовало написать свой сервис для работы с облачным хранилищем — Object Storage.

Перенос и развёртывание инфраструктуры и ИТ-системы (ядро было перенесено по частям в виде сервисов) крупной страховой компании заняли всего полтора месяца.
В проекте была задействована оперативная команда из 8 человек, принимавших участие в процессе по мере необходимости параллельно другим обязанностям:
- 4 разработчика;
- 1 DevOps;
- 1 сетевой инженер;
- 1 системный администратор;
- 1 архитектор.

Стабилизировав объём ресурсов, потребляемых по модели pay as you go, клиент решил зарезервировать эти ресурсы на длительный срок. Это позволило дополнительно оптимизировать стоимость решения. Изначально проект запускали на базе IPsec-инстансов, расположенных в разных зонах доступности для обеспечения высокой доступности. Сейчас клиент занимается подключением к услуге Yandex Cloud Interconnect, которая даёт возможность установить выделенное сетевое соединение между локальной инфраструктурой и Yandex Cloud, что позволяет организовать канал с высокой доступностью и низкими задержками.
Cloud-native решение
По итогам переезда решены следующие задачи:
- сняты технологические риски, решён вопрос с отказоустойчивостью;
- повысилось удобство использования;
- снизились затраты за счёт оплаты OPEX и модели резервирования CPU/RAM (компания понимает, сколько тратится на инфраструктуру, что даёт сокращение расходов);
- команда СК «Ренессанс Жизнь» сосредоточилась на улучшении своих сервисов.
В настоящее время продолжается работа по оптимизации инфраструктуры, оценивается возможность использования других новых сервисов Yandex Cloud, включая Cloud Functions, представленный на октябрьской конференции, и сервис компьютерного зрения Yandex Vision.

