A real-time sports betting platform hosts its live analytics and odds-calculation service on Amazon EC2 instances within private subnets across two Availability Zones ( and ). The EC2 instances are managed by an Auto Scaling Group (ASG) behind an Application Load Balancer (ALB). Outbound API requests to external sports data feeds are routed through a single NAT Gateway located in the public subnet of .
The platform experiences a predictable, massive spike in traffic at the start of major sporting events. During these spikes, the following issues occur:
1. The ALB returns HTTP Service Unavailable errors during the first few minutes of the traffic spike.
2. The ASG launches new instances in response to the CPU utilization target tracking policy. However, because each instance takes approximately to download reference datasets and bootstrap, the ASG continuously launches unnecessary instances during this period, leading to over-provisioning and high costs.
3. When a transient infrastructure failure occurs in , all outbound communication to external sports data feeds is lost for instances in both Availability Zones.
Which set of actions should a Solutions Architect recommend to address all of these issues while optimizing cost and fault tolerance?
- Request Application Load Balancer pre-warming from AWS Support before scheduled events. Deploy a NAT Gateway in the public subnet of , and configure the route table of the private subnet in to use this new NAT Gateway. Set the `EstimatedInstanceWarmup` parameter of the target tracking scaling policy to .Cevap
- BRequest Application Load Balancer pre-warming from AWS Support before scheduled events. Keep the single NAT Gateway in and route all outbound traffic from both Availability Zones through it. Set the `EstimatedInstanceWarmup` parameter of the target tracking scaling policy to .
- CRequest Application Load Balancer pre-warming from AWS Support before scheduled events. Deploy a NAT Gateway in the public subnet of , and configure the route table of the private subnet in to use this new NAT Gateway. Set the default cooldown period of the Auto Scaling Group to .
- DConfigure a Route active-active failover routing policy to distribute the sudden traffic spikes across multiple target groups. Deploy a NAT Gateway in the public subnet of , and configure the route table of the private subnet in to use this new NAT Gateway. Set the `EstimatedInstanceWarmup` parameter of the target tracking scaling policy to .