О клиенте
Компания является поставщиком облачных услуг и разрабатывает более 80 IaaS-, PaaS-, ML-сервисов для бизнеса и государственных учреждений. Организациям в сфере логистики клиент предлагает облачные мощности для размещения и хранения данных о грузах, пользователях и поставщиках. Энергетическим компаниям помогает внедрить сервис для простой и удобной коммуникации с абонентами, а для заказчиков из сферы здравоохранения — разместить офисное ПО в георезервированном облаке с двумя дата-центрами. Поставщик входит в экосистему российского банка из Топ-5.
О продукте
Клиент развивает ML-платформу, которая предназначена для создания и развертывания моделей машинного обучения с помощью высокопроизводительной ИТ-инфраструктуры. Изначально система была размещена на серверах поставщика, но хранение данных на стороннем оборудовании не позволяло установить собственное приватное ПО. Такое публичное решение не вызывало доверия у потенциальных клиентов заказчика, в связи с чем, требовалось создать отчуждаемый ИТ-продукт.
Описание задачи
Для миграции из облака в инфраструктуру пользователя предстояло разместить весь программный код «внутри предприятия». Требовалось спроектировать новую архитектуру инсталляции программного продукта и внедрить инструменты DevOps, которые помогут более эффективно управлять процессами разработки. Из основных задач выделили следующие:
— Переработать существующую архитектуру: обеспечить соответствие новым требованиям бизнеса, независимость от поставщиков и улучшенную производительность.
— Разработать новую логику развертывания продукта: повысить безопасность, предоставить полный контроль над инфраструктурой и возможность быстро реагировать на изменения в компании.
Реализация
DevOps-инженеры RedLab приняли решение использовать метод On-Premise. Подход позволяет устанавливать и обслуживать ПО на собственных серверах, самостоятельно настраивать систему и быть независимым от инфраструктуры вендора и интернет-провайдера. Также On-Premise обеспечивает необходимый уровень безопасности, поскольку компания имеет полный контроль над ИТ-продуктом.
Специалисты реализовали следующие задачи:
— Организовали процесс инсталляции «с нуля» двух кластеров Kubernetes. Переписали 2000 манифестов под Kustomize на менеджер пакетов Helm, который позволил автоматизировать процессы установки, обновления и управления системой.
— Построили процесс в GitLab CI. Для этого написали Ansible роли, скрипты на Bash и Python, собрали сервисные Docker образы. Технологии обеспечили интеграцию с хранилищем кода, что сделало процесс сборки и развертывания кода удобнее и проще.
— Перенесли конфигурацию приложений в Vault, а также использовали интеграцию с Vault для быстрой, безопасной и масштабируемой доставки ключей API, логинов и паролей и другой чувствительной информации.
— Весь код IaC покрыли инфраструктурными тестами, что позволило выявлять потенциальные ошибки до их возникновения в реальной среде.
Результат
Новая логика ИТ-инфраструктуры разработана с учетом особенностей зависимостей и обмена конфигурациями. Благодаря новому On-premise решению провайдер получил инсталлятор отчуждаемого продукта, улучшил меры безопасности и существенно ускорил процесс развертывания продукта — с 2 месяцев до 2 часов.
Источник: https://redlab.dev/success/on-premise-reshenie-dlja-migracii-v-infrastrukturu-zakazchika/
On-Premise решение для миграции в инфраструктуру заказчика
06.11.2024
Аутсорс ИТ-специалисты RedLab выполнили развертывание программного обеспечения в ИТ-инфраструктуре компании-заказчика. В этой статье делимся кейсом.