A reference architecture for implementing blue/green deployments on Amazon ECS using AWS CloudFormation and CodePipeline.
ECS Blue/Green Deployment is a reference architecture for implementing blue/green deployments on Amazon ECS. It automates the deployment process using AWS CloudFormation templates and AWS CodePipeline to enable safe, zero-downtime updates for containerized applications. The architecture creates a continuous delivery pipeline that builds and deploys containers to an ECS cluster, with a manual approval step to validate changes before promoting them to production.
AWS developers and DevOps engineers managing containerized applications on Amazon ECS who need to implement safe, automated deployment strategies with rollback capabilities. It is specifically for teams using AWS services like CloudFormation, CodePipeline, and Application Load Balancer.
Developers choose this project because it provides a pre-built, automated pipeline for blue/green deployments on ECS using Infrastructure as Code, reducing manual effort and risk. Its unique selling point is the integration of a manual approval step and target group swapping via AWS Lambda, allowing controlled promotion of new versions with zero downtime and easy rollback.
Reference architecture for doing blue green deployments on ECS.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages AWS CodePipeline and CodeBuild to automatically build and deploy container images, as detailed in the README's Build and Deploy stages, reducing manual effort.
Includes a manual review stage in the pipeline, allowing approvers to validate changes before promotion, which minimizes risk in production deployments.
Uses CloudFormation templates to provision all AWS resources (VPC, ALB, ECS services), enabling reproducible and version-controlled infrastructure setup.
Employs a Lambda function to swap Application Load Balancer target groups, shifting traffic between blue and green environments without downtime, as described in the implementation details.
The README's UPDATE note indicates that ECS now supports native blue/green deployments, making this reference architecture potentially redundant and less maintained for new projects.
Requires specific AWS CLI version (>=1.11.37), IAM policies like PowerUserAccess, and multiple steps including forking repos and S3 bucket configuration, which can be error-prone.
Heavily dependent on AWS services such as CloudFormation, CodePipeline, and Lambda, limiting flexibility and portability to other cloud platforms.