Как платформа «Вкомандировке» масштабировала бизнес в облаке
Расскажем, как команда Hilbert Team помогла сервису для автоматизации командировок мигрировать в облако, масштабировать свою инфраструктуру и повысить качество обслуживания пользователей.
О проекте
«Вкомандировке» — это комплексная платформа для управления командировками под управлением компании «Випсервис Путешествия», входящей в холдинг «Випсервис». Платформа позволяет автоматизировать весь цикл поездки, от бронирования и выписки тревел-услуг до создания авансового отчёта, и обеспечивает прозрачность расходов для бизнеса любого масштаба.
По мере увеличения пользовательской базы стало ясно, что существующая инфраструктура требует модернизации. Чтобы справиться с растущей нагрузкой и обеспечить бесперебойную работу сервиса, компания решила мигрировать в Yandex Cloud. Данный провайдер имеет хорошую репутацию на рынке и предоставляет широкий спектр управляемых сервисов.
Для реализации этого амбициозного проекта компания «Випсервис Путешествия» обратились к команде Hilbert Team — партнеру Yandex Cloud, провайдеру IT-услуг в области облачных технологий, DevOps, DevSecOps, DataOps, MLOps и FinOps.
Как мы решали задачу
Инженерная команда Hilbert Team провела комплексную работу, состоящую из нескольких ключевых этапов:
1. Анализ исходной инфраструктуры
Специалисты Hilbert Team провели детальный анализ IT-инфраструктуры, что позволило разработать оптимальный план по миграции в новое облако, а также выбрать наиболее подходящий инструментарий для реализации миграции.
IT-аудит – это основа грамотного подхода к миграции. Он позволяет перейти к новой инфраструктуре с уверенностью, что она будет соответствовать потребностям бизнеса и сможет поддерживать его рост.
2. Проектирование целевой облачной инфраструктуры
На основе результатов аудита и требований заказчика была спроектирована новая архитектура платформы в Yandex Cloud, включающая в себя:
- управляемый кластер Kubernetes, в котором были развернуты микросервисы платформы заказчика;
- управляемые кластеры СУБД для хранения данных платформы заказчика;
- системы мониторинга, алертинга и логирования;
- балансировщики нагрузки;
- сервисы для безопасного управления секретами и др.
При проектировании учитывались особенности нагрузки, требования к масштабируемости, безопасности, экономической эффективности и возможности эффективной доработки сервиса, а также возможности интеграции со сторонними системами компаний-партнеров.
Новая облачная инфраструктура представляет собой закрытый контур для работы сервиса. В ней созданы 4 каталога – INFRA, DEV, PREPROD и PROD – что позволяет четко разграничить окружения для разработки, тестирования и эксплуатации. Это обеспечивает безопасность и позволяет эффективно использовать ресурсы Yandex Cloud.
На данном этапе были сформированы следующие артефакты:
архитектурная диаграмма целевой облачной инфраструктуры в Yandex Cloud;
расчет ее ожидаемой стоимости;
подробное техническое задание на миграцию: перечень работ, которые нужно выполнить, чтобы успешно перейти в Yandex Cloud;
бюджет проекта по миграции;
календарный план.
Далее инженеры приступили к самому переезду.
3. Создание целевой инфраструктуры
❗Есть два популярных типа миграции в облако – «Lift & Shift» (инфраструктура приложений и данные переносятся в облако без изменений) и «Lift & Optimize» (миграция с оптимизацией). В данном кейсе мы применили второй тип «Lift & Optimize», потому что требовалось спроектировать новую архитектуру инфраструктуру и внедрить новые облачные сервисы для оптимизации работы.
Для создания инфраструктуры инженеры провели следующие работы:
1. Развернули окружения INFRA
Создали базовую инфраструктуру для последующих сред.
2. Развернули окружения DEV
Подготовили среды для разработки и тестирования.
3. Кубернизировали сервисы на DEV
Ключевые компоненты платформы были перенесены в контейнерное окружение на базе Docker и Kubernetes. Это обеспечило гибкость, упрощенное управление и высокую масштабируемость инфраструктуры.
4. Настроили CI/CD-пайплайн
Команда автоматизировала процессы разработки, тестирования и развертывания (CI/CD). Для упрощения развертывания использовался GitOps-подход и инструмент Argo CD.
5. Создали PREPROD и PROD-окружения
Подготовили окружение для UA-тестирования и продуктивной эксплуатации.
6. Выполнили миграцию данных заказчика
7. Внедрили мониторинг, алертинг, логирование
Развернули и настроили системы мониторинга и алертинга на базе PROM стека (Prometheus, Alertmanager, Grafana), а также настроили систему логирования на базе Yandex Cloud Logging.
8. Провели интеграционное тестирование
Это обязательный этап, когда мы проводим совместное тестирование с заказчиком для комплексной проверки работы облачной инфраструктуры и платформы заказчика.
9. Выполнили переключение на новую инфраструктуру
10. Разработали эксплуатационную документацию
Финальный этап проекта включал подготовку полного комплекта документации для дальнейшего сопровождения и развития инфраструктуры.
Интересные особенности проекта:
❗Внедрили функционал запуска/остановки окружения (On-demand), который позволяет включать и выключать окружения по требованию, что снижает потребление ресурсов и расходы заказчика.
❗В рамках проекта мы помогли заказчику выполнить миграцию с .NET Framework на .NET Core, что позволило перевести их приложения на Linux-платформу. Наша команда обеспечила техническую экспертизу и консультации по вопросам совместимости, производительности и безопасности.
Результаты
Миграция сервиса «Вкомандировке» в Yandex Cloud и работы по оптимизации и автоматизации инфраструктуры привели к значительным улучшениям:
- Платформа заказчика стала устойчивой даже в периоды пиковых нагрузок, что привело к снижению риска финансовых потерь.
Сократилось количество рутины и риска «человеческого фактора».
Сократилось время релиза новых версий платформы.
Проект по миграции в Yandex Cloud стал важным шагом в развитии платформы «Вкомандировке» и обеспечил её готовность к будущим вызовам.
Благодаря профессионализму инженерной команды Hilbert Team мы получили высокопроизводительную и масштабируемую IT-инфраструктуры, которая позволила повысить качество обслуживания пользователей и эффективность бизнес процессов.
Если вы также планируете мигрировать свой бизнес в облако и вам нужна помощь, то Hilbert Team к вашим услугам: вы можете связаться с нами через почту contact@hilbertteam.com или заполните форму на сайте.