Question #752
A social media platform is being developed using microservices architecture on Amazon ECS with AWS Fargate. The platform expects 3 million users at launch and will scale to 20 million users within 4 months. The application uses HTTPS and requires blue/green deployments. The solution must route traffic through a load balancer and automatically adjust the number of tasks based on Amazon CloudWatch alarms.
Which solution meets these requirements?
Configure the ECS services to use blue/green deployment with a Network Load Balancer. Request increases to the service quota for tasks per service to accommodate scaling.
Configure the ECS services to use blue/green deployment with a Network Load Balancer. Implement Auto Scaling groups for each service using the Cluster Autoscaler.
Configure the ECS services to use blue/green deployment with an Application Load Balancer. Implement Auto Scaling groups for each service using the Cluster Autoscaler.
Configure the ECS services to use blue/green deployment with an Application Load Balancer. Implement Service Auto Scaling for each ECS service.
Explanation
Answer D is correct because:
1. Application Load Balancer (ALB): Required for HTTPS (Layer 7) and seamless blue/green deployments via ECS/CodeDeploy integration.
2. Service Auto Scaling: Directly scales ECS tasks (not EC2 instances) based on CloudWatch alarms, which aligns with Fargate's serverless architecture.
Why other options are incorrect:
- A/B: Use Network Load Balancer (NLB), which lacks native HTTPS termination and blue/green deployment support.
- B/C: Mention Auto Scaling Groups/Cluster Autoscaler, which manage EC2 instances, not Fargate tasks.
Key Points:
- ALB supports HTTPS and blue/green deployments.
- Fargate uses Service Auto Scaling (not ASGs) for task-level scaling.
- CloudWatch alarms trigger scaling policies for ECS services.
Answer
The correct answer is: D