DOP-C02 Question 167
Single answerAn organization is running a high-traffic e-commerce application on AWS. They want to implement a CI/CD pipeline using AWS services to ensure zero-downtime deployments. The application is deployed on an Auto Scaling group behind an Application Load Balancer (ALB). Which deployment strategy should they use to meet these requirements?
- A
Blue/Green Deployment using AWS CodeDeploy with ALB traffic shifting
- B
Rolling Deployment using AWS Elastic Beanstalk
- C
Recreate Deployment using AWS CodePipeline
- D
Canary Deployment using AWS Lambda and API Gateway
Show answer and explanation
Correct answer: A
Explanation
Blue/Green Deployment with AWS CodeDeploy and ALB traffic shifting is the best fit for zero-downtime deployment in an Auto Scaling group behind an ALB. This strategy allows the organization to deploy a new version in a separate environment and gradually redirect traffic while validating the new version. If issues arise, traffic can be reverted to the previous version seamlessly, ensuring high availability.
- A. Correct.
Blue/Green Deployment with AWS CodeDeploy and ALB traffic shifting is ideal for zero-downtime deployments. It creates a new environment and shifts traffic gradually, ensuring the old environment remains intact until the new one is validated.
- B. Incorrect.
Rolling Deployment replaces a subset of instances with new ones incrementally. While it minimizes downtime, it doesn’t ensure zero downtime, as there could be a temporary imbalance during the replacement process.
- C. Incorrect.
Recreate Deployment involves replacing all instances with new ones at once, which causes downtime during the switch, making it unsuitable for zero-downtime requirements.
- D. Incorrect.
Canary Deployment using AWS Lambda and API Gateway is primarily for serverless applications. It does not align with the requirements of an Auto Scaling group and ALB for this scenario.