An enterprise web application is hosted on Amazon EC2 instances in private subnets across three Availability Zones (, , and ). The instances are managed by an Auto Scaling Group (ASG) behind an Application Load Balancer (ALB). The instances execute a complex bootstrap script that downloads dependencies from external repositories, taking approximately minutes to become fully operational. Outbound internet traffic is routed through a single NAT Gateway located in .
The company is preparing for a scheduled marketing campaign that will generate a massive, instantaneous surge in traffic. Historically, during similar events, the ALB dropped initial requests, and the ASG launched far more instances than needed, leading to unnecessary costs.
Which TWO actions should the Solutions Architect implement to improve the system's fault tolerance and optimize its scaling behavior for the campaign?
- Deploy an active NAT Gateway in each of the three Availability Zones and update the private subnet route tables to direct outbound traffic () to the local NAT Gateway within the same zone.Answer
- Submit a request to AWS Support to pre-warm the Application Load Balancer to the expected peak traffic, and configure the Auto Scaling group's target tracking policy instance warmup to seconds.Answer
- CProvision a secondary NAT Gateway in , and configure a Route 53 private hosted zone with failover routing to automatically redirect outbound traffic to the secondary NAT Gateway if the gateway in fails.
- DReduce the Auto Scaling group's default cooldown period to seconds to ensure the ASG reacts faster to the traffic spike, and rely on the Application Load Balancer's built-in automatic scaling to handle the load.
- EEstablish a launch lifecycle hook with a heartbeat timeout of minutes to delay service registration, and use a step scaling policy with a -second cooldown to scale out rapidly.