BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News AWS Announces Blue/Green Deployments for MySQL on Aurora and RDS

AWS Announces Blue/Green Deployments for MySQL on Aurora and RDS

At the beginning of the re:Invent conference, AWS announced the general availability of RDS Blue/Green Deployments, a new feature for Aurora with MySQL compatibility, RDS for MySQL, and RDS for MariaDB to perform blue/green database updates.

The new replication option creates a separate and synchronized staging environment that mirrors the production cluster, cloning the primary database and in-region replicas and keeping the two environments synchronized using logical replication. Channy Yun, principal developer advocate at AWS, writes:

In as fast as a minute, you can promote the staging environment to be the new production environment with no data loss. During switchover, Blue/Green Deployments blocks writes on blue and green environments so that the green catches up with the blue, ensuring no data loss. Then, Blue/Green Deployments redirects production traffic to the newly promoted staging environment, all without any code changes to your application.

The new feature can be used for major and minor version upgrades, schema modifications, and operating system or maintenance updates without impacting the production workload.

Source: https://aws.amazon.com/blogs/aws/new-fully-managed-blue-green-deployments-in-amazon-aurora-and-amazon-rds/

The configuration of blue/green deployments relies on logical replication from the primary instance in the blue environment to the primary instance in the green environment to keep the green environment in sync with the green environment. To enable the feature in Aurora, binary logging should be enabled, changing the value for the binlog_format parameter from OFF to MIXED in the cluster parameter group.

The green environment is read-only by default but developers have the option to make the DB instance writable or accept write traffic if necessary. Yun adds:

You may also set a timeout setting to determine the maximum time limit for your switchover. If Blue/Green Deployments’ switchover guardrails detect that it would take longer than the specified duration, then the switchover is canceled, and no changes are made to the environments. We recommend that you identify times of low or moderate production traffic to initiate a switchover.

Source: https://aws.amazon.com/blogs/aws/new-fully-managed-blue-green-deployments-in-amazon-aurora-and-amazon-rds/

RDS Blue/Green Deployments was not the only announcement at re:Invent targeting MySQL workloads: AWS introduced RDS Optimized Reads to provide higher write throughput on memory-optimized R6i and R5b instances and RDS Optimized Reads to improve query performances on M5d, R5d, M6gd, and R6gd instances that support local NVMe SSD storage.

As a new staging environment is created, the customer will be charged for the green database, including read replicas and DB instances in Multi-AZ deployments, doubling the costs of the original blue cluster.

The RDS Blue/Green Deployments feature is available on Aurora with MySQL Compatibility 5.6 or higher, RDS for MySQL major version 5.6 or higher, and RDS for MariaDB 10.2 and higher. The feature is not available at the moment for PostgreSQL engines, with the cloud provider suggesting blue/green deployments using Aurora fast database cloning.

About the Author

Rate this Article

Adoption
Style

BT