An enterprise web application hosts a financial ledger service on Amazon EC2 instances inside an Auto Scaling group (ASG) behind an Application Load Balancer (ALB). The instances are deployed across two Availability Zones (AZ-A and AZ-B) and require exactly to bootstrap, retrieve cryptographic keys, and warm up local memory caches before passing target group health checks. Outbound internet traffic for both AZs is routed through a single NAT gateway located in AZ-A.
The application experiences two major operational issues:
1. During daily flash-sale events that cause immediate, massive traffic spikes, the ALB drops incoming requests with HTTP and errors before the ASG can respond. Additionally, the ASG experiences an "over-provisioning storm," launching far more instances than required because the scaling policy triggers additional scaling actions before the newly launched instances finish bootstrapping.
2. A recent fiber-cut outage in AZ-A caused all outbound internet traffic from instances in AZ-B to fail, disrupting transaction settlements.
Which solution resolves these issues with the lowest operational overhead?
- Configure scheduled scaling policies to scale out the Auto Scaling group in advance of the daily flash-sale events, and set the default cooldown and instance warmup timers to . Request Application Load Balancer pre-warming from AWS Support for the flash-sale periods. Deploy a dedicated NAT gateway in the public subnet of each Availability Zone, and update the private subnet route tables to route outbound traffic through the local NAT gateway.Answer
- BConfigure scheduled scaling policies to scale out the Auto Scaling group in advance of the daily flash-sale events, and set the default cooldown and instance warmup timers to . Request Application Load Balancer pre-warming from AWS Support for the flash-sale periods. Deploy a dedicated NAT gateway in the public subnet of each Availability Zone, and update the private subnet route tables to route outbound traffic through the local NAT gateway.
- CConfigure scheduled scaling policies to scale out the Auto Scaling group in advance of the daily flash-sale events, and set the default cooldown and instance warmup timers to . Request Application Load Balancer pre-warming from AWS Support for the flash-sale periods. Consolidate all outbound traffic from both Availability Zones through the existing NAT gateway in AZ-A, and configure an AWS Lambda function to automatically recreate the NAT gateway in AZ-B if AZ-A experiences an outage.
- DConfigure target tracking scaling policies on the Auto Scaling group based on average CPU utilization with the default cooldown and instance warmup timers set to . Deploy a dedicated NAT gateway in the public subnet of each Availability Zone, and update the private subnet route tables to route outbound traffic through the local NAT gateway. Rely on the Application Load Balancer's automatic scaling to handle the traffic spikes during the flash-sale events.