A developer is managing a production web application deployed on AWS Elastic Beanstalk. The application experiences consistent high traffic, and the environment's capacity must remain at at all times during updates to prevent performance degradation. In the event of a deployment failure, the application must support an immediate rollback with minimal impact, without requiring a manual rollback deployment. Additionally, to avoid issues with client-side DNS caching, the deployment must not involve swapping DNS CNAMEs or changing Route 53 configurations.
Which Elastic Beanstalk deployment strategy should the developer select?
- ImmutableAnswer
- BRolling with additional batch
- CBlue/Green deployment
- DRolling
Answer
The immutable deployment strategy
The immutable deployment strategy meets all requirements. It maintains capacity by deploying the new version to a temporary Auto Scaling group alongside the existing one under the same load balancer. If the deployment fails, Elastic Beanstalk immediately deletes the temporary Auto Scaling group, resulting in an immediate rollback with zero downtime. Since it uses the same environment and load balancer, no CNAME swaps or DNS changes are required.
Step-by-Step Solution
Key Concept
AWS Elastic Beanstalk Deployment Strategies
Estimated Time:2m 30s