An organization runs a critical web application on a fleet of Amazon EC2 instances managed by an Auto Scaling group. The developer needs to configure a deployment strategy for application updates that guarantees the application maintains 100% of its capacity throughout the deployment process. Additionally, if the new version fails health checks, the system must support the fastest possible rollback to the previous version with minimal operational overhead. The organization accepts the temporary additional cost of provisioning duplicate resources during the deployment.
Which two deployment strategies meet these requirements?
- Blue/green deploymentAnswer
- Immutable deploymentAnswer
- CAll-at-once deployment
- DRolling deployment
- ERolling with additional batch deployment
Answer
Blue/green deployment and Immutable deployment
Blue/green deployment and immutable deployment are the correct choices. Both strategies deploy the new version on new, separate resources while the original resources remain fully functional, ensuring 100% capacity is maintained. If a failure occurs, rollback is nearly instantaneous: traffic is directed back to the original instances (for blue/green) or the new resources are deleted (for immutable), requiring no redeployment overhead.
Step-by-Step Solution
Key Concept
Deployment strategies present different trade-offs among deployment time, capacity during deployment, rollback speed, and resource costs.