Blue/Green Deployments: Safe Major Version Upgrades

~10 min read

The step-by-step mechanics of how RDS validates a major upgrade before committing to it.

A Blue/Green Deployment creates a full, separate 'green' environment running the target engine version, kept continuously synchronized with the current 'blue' production environment via native replication for as long as the validation window lasts. During this window, teams run their test suites, and sometimes shadow a sample of real production read traffic, against the green environment without any risk to blue, since green is entirely separate infrastructure. Once satisfied, a 'switchover' is triggered: RDS handles briefly pausing writes, ensuring green is fully caught up with blue, and then redirecting the production endpoint to green — a fast, controlled operation measured in under a minute, unlike relying on DNS propagation which can take much longer and behaves unpredictably across different clients' DNS caches. Blue is retained after switchover (for a configurable period) specifically so an immediate rollback is possible if an issue surfaces that testing didn't catch.

💬 Deep Dive with AI

Key points

  • Green is a full separate environment kept in sync with blue via native replication during validation
  • Validation can include full test suites and shadowed production read traffic against green with zero risk to blue
  • Switchover is a fast, controlled operation — not DNS propagation — completing in under a minute typically
  • Blue is retained post-switchover specifically to enable instant rollback if an issue is discovered late