A developer is planning the deployment of a new version of a critical web application hosted on AWS Elastic Beanstalk. The application runs on a fleet of Amazon EC2 instances managed by an Auto Scaling group behind an Application Load Balancer. The deployment must satisfy the following constraints:
* The update must be rolled out with zero downtime.
* The application must maintain of its instance capacity to handle the current traffic load at all times during the deployment.
* In the event of a deployment failure, the application must support an immediate rollback to the previous version without requiring a full redeployment of the original code.
Which two deployment strategies meet these requirements? (Select two.)
- Blue/Green deploymentAnswer
- Immutable deploymentAnswer
- CRolling with additional batch deployment
- DRolling deployment
- EAll at once deployment
Answer
Blue/Green deployment and Immutable deployment
Blue/Green deployment and Immutable deployment satisfy all requirements. Blue/Green deployment provisions a separate environment with the new version and performs a DNS CNAME swap, keeping both environments at capacity and allowing an instant swap back in case of failure. Immutable deployment creates a temporary Auto Scaling group with the new version alongside the existing one, maintaining capacity, and immediately rolls back by terminating the new Auto Scaling group if the deployment fails.
Step-by-Step Solution
Key Concept
AWS Elastic Beanstalk deployment strategies trade-offs including capacity, downtime, and rollback mechanisms.