A company is designing the deployment strategy for a microservice running on Amazon ECS with the AWS Fargate launch type. The microservice requires a baseline of 10 tasks to meet performance requirements. The deployment process must adhere to the following constraints:
* The service must experience zero downtime.
* The compute cost during the deployment must not exceed 130% of the normal baseline cost.
* If a new version fails container health checks, the deployment must automatically roll back to the previous version without manual intervention.
Which two configurations should the Solutions Architect specify in the ECS service definition and deployment pipeline to meet these requirements? (Select TWO.)
- Configure the service to use the ECS rolling update (ECS) deployment controller, and enable the deployment circuit breaker with rollback.Answer
- Set the deployment configuration parameters minimumHealthyPercent to 100 and maximumPercent to 130.Answer
- CConfigure the service to use the AWS CodeDeploy (CODE_DEPLOY) deployment controller, and specify the ECSLinear10PercentEvery1Minute deployment configuration.
- DSet the deployment configuration parameters minimumHealthyPercent to 70 and maximumPercent to 100.
- EConfigure the service to use the ECS rolling update (ECS) deployment controller, and set minimumHealthyPercent to 100 and maximumPercent to 200.
Answer
Configure the service to use the ECS rolling update deployment controller with the deployment circuit breaker and rollback enabled, and set the deployment configuration parameters to a minimum healthy percent of 100 and a maximum percent of 130.
To achieve zero downtime without exceeding a 30% temporary increase in compute cost, the ECS service must perform a rolling update (using the ECS deployment controller) where the minimum healthy percentage is set to 100% (ensuring all 10 baseline tasks remain running) and the maximum percentage is set to 130% (limiting the maximum tasks to 13). Additionally, enabling the ECS deployment circuit breaker with the rollback feature ensures that if the new tasks fail health checks, the service automatically rolls back to the previous stable state.
Step-by-Step Solution
Key Concept
ECS Rolling Updates and Deployment Circuit Breaker Capacity Management