A cloud engineer needs to deploy a stateless application across multiple availability zones. The application must scale horizontally based on CPU utilization. Which of the following is the BEST configuration?
This provides automated horizontal scaling and fault tolerance.
Why this answer
An auto-scaling group spanning multiple availability zones ensures high availability and fault tolerance by distributing instances across zones, while the load balancer distributes traffic and the scaling policy adjusts capacity based on CPU utilization. This configuration meets the requirements for a stateless, horizontally scalable application without manual intervention.
Exam trap
A common trap is choosing vertical scaling (Option A) because it seems simpler, but it does not meet the requirement for multi-AZ distribution and automated horizontal scaling.
How to eliminate wrong answers
Option A is wrong because scaling vertically (increasing instance size) does not provide horizontal scalability or multi-AZ resilience, and it introduces a single point of failure. Option C is wrong because manually adding containers lacks automation and does not leverage auto-scaling based on CPU utilization, making it inefficient for dynamic workloads. Option D is wrong because deploying instances in a single zone with spot instances does not ensure multi-AZ fault tolerance, and spot instances can be terminated at any time, risking application availability.