Процесс, описанный в этом посте, был совместно разработан и протестирован с Ионутом Брумой, архитектором решений в подразделении Capital Markets Лондонской фондовой биржи (LSEG). В этом посте мы делимся тем, как бизнес-единица Capital Markets Лондонской фондовой биржи (LSEG) улучшила свою методологию Синее/зеленое развертывание, используя непрерывную логическую репликацию базы данных.
Ранее развертывания требовали ручного создания резервной копии и восстановления производственной базы данных для создания Зеленой среды. Этот шаг был трудоемким и включал отключение производственной базы данных для поддержания согласованности между Синей и Зеленой средами во время развертывания.
Логическая репликация: новый подход
Используя логическую репликацию, процесс резервного копирования и восстановления заменяется непрерывной репликацией. Это значительно минимизирует время развертывания за счет сокращения времени простоя Синей среды.
Синее/зеленое развертывание — это стратегия внедрения изменений на веб-сайт, приложение или базу данных путем чередования производственной и тестовой сред. Синяя среда представляет собой основную или активную бэкенд-среду, а Зеленая среда является репликой, которая синхронизируется с живой средой. Процесс включает внесение изменений или обновлений в Зеленую среду, а затем переключение, что минимизирует время простоя и позволяет вернуться к Синей среде в случае возникновения проблем.
Без методологии Синее/зеленое развертывание развертывания включают простой производственной системы, когда все действия выполняются в нерабочие часы, что влечет за собой дополнительные операционные затраты и снижение доступности. В рамках программного развертывания вы можете использовать Синее/зеленое развертывание для достижения большей гибкости в процессе развертывания, минимизируя время простоя производственной системы. Это позволяет внутренним командам по продуктам сократить время выхода на рынок новых функций, а также снизить усилия по развертыванию.
В дополнение к поддержке обновлений версий базы данных и некоторых изменений схемы базы данных, этот тип развертывания также помогает во время внутреннего тестирования изменений приложения путем зеркального отображения производственных конфигураций. Устранение необходимости создания резервной копии и восстановления производственной базы данных для каждой итерации тестового цикла предоставляет значительное преимущество.
Amazon Aurora PostgreSQL: упрощение развертываний
Amazon Aurora PostgreSQL-Compatible Edition и Amazon Relational Database Service (Amazon RDS) для PostgreSQL оба имеют Amazon RDS Blue/Green Deployments для Aurora. Управляемое Синее/зеленое развертывание значительно упрощает обновления и изменения схемы, но не поддерживается в сочетании с некоторыми функциями Amazon Aurora, такими как Amazon Aurora Global Database.
В этом посте мы показываем процесс реализации архитектуры Синее/зеленое развертывание с использованием Aurora PostgreSQL Global Database. В частности, мы исследуем лучшие практики и соображения при настройке архитектуры. Синее/зеленое развертывание служит надежным и эффективным подходом для обеспечения устойчивости и синхронизации приложений на протяжении всего процесса.
Обзор решения
Наше приложение обслуживает внутренних пользователей через Amazon Route 53, разрешая запросы к внутреннему Application Load Balancer, который распределяет трафик на кластер Kubernetes, развернутый через три Availability Zones.