Blue-Green Deployment
Blue-green deployment is a release strategy that runs two identical production environments, deploys the new version to the idle one and then switches all traffic to it, allowing near-instant rollback by switching back.
Blue-green deployment is a release technique that uses two identical production environments. One, called blue, serves live traffic while the new version is deployed to the other, called green. After the green environment passes testing, traffic is switched to it, usually by changing a load balancer target, router rule or DNS record. Blue is kept running unchanged for a period so traffic can be switched back if problems appear.
The technique gives near-zero-downtime releases and a fast, low-risk rollback, which is valuable for customer-facing services and systems that cannot accept long maintenance windows. Cloud and container platforms make it practical because a second environment can be created on demand and removed after the release. AWS CodeDeploy and progressive delivery tools for Kubernetes such as Argo Rollouts support the pattern.
Running two full environments temporarily doubles infrastructure cost. Database schema changes are the hardest part, because both versions may need to work with the same data, so changes are usually made backwards compatible in separate steps. Long-running sessions and in-flight transactions must be drained carefully during the switch. Unlike a canary release, all users move to the new version at once.
Key points
- Two identical environments: one live, one receiving the new release
- Traffic switches at the load balancer, router or DNS once the new version is verified
- Rollback means switching traffic back to the unchanged previous environment
- Database changes must stay backwards compatible with both versions
Where AiVibe comes in
AiVibe Software Services delivers cloud solutions on AWS, Microsoft Azure, Google Cloud or on-premise, together with cloud security, legacy modernisation, data analytics and AI and machine learning services.