Question

Difficulty: MediumImplementing Auto Scaling and Fault Tolerance

An enterprise IoT data ingestion platform runs on Amazon EC2 instances inside an Auto Scaling group (ASG) spread across three Availability Zones. The instances require 5 minutes to download configuration files and bootstrap before they can accept requests from an Application Load Balancer (ALB). During sudden morning traffic spikes, the ALB returns HTTP 503 Service Unavailable errors, and the ASG launches far more instances than needed, leading to severe resource over-provisioning and high costs. Additionally, the current network architecture uses a single NAT Gateway located in a public subnet in Availability Zone A for all outbound traffic. If Availability Zone A suffers an outage, outbound connectivity for instances in Availability Zones B and C is completely lost. Which two modifications should the Solutions Architect implement to resolve the scaling issues and eliminate the single point of failure with the lowest recovery time objective (RTO)? (Select TWO.)

  1. Deploy a NAT Gateway in a public subnet in each Availability Zone, and update the route tables of the private subnets in each Availability Zone to route outbound traffic through their respective local NAT Gateway.Answer
  2. Implement an Auto Scaling group Warm Pool with pre-warmed instances in the Warmed:Running state, and adjust the scaling policy's warmup period to exceed the 5-minute instance bootstrapping time.Answer
  3. C
    Decrease the default cooldown period of the Auto Scaling group to 60 seconds to allow the group to launch new instances more rapidly in response to sudden traffic spikes.
  4. D
    Configure all private subnets across all Availability Zones to route outbound traffic through the single NAT Gateway in Availability Zone A, and use an AWS Lambda function to recreate the NAT Gateway in another Availability Zone during an outage.
  5. E
    Request AWS Support to pre-warm the Application Load Balancer prior to the morning traffic spikes, and configure the target tracking scaling policy to use a shorter cooldown period.

Answer

Deploy a NAT Gateway in a public subnet in each Availability Zone with corresponding route table updates, and implement an Auto Scaling group Warm Pool with a warmup period configured to exceed the 5-minute instance bootstrapping time.
Deploying a NAT Gateway in each Availability Zone removes the single point of failure by ensuring local outbound paths. Implementing an Auto Scaling group Warm Pool allows instances to boot, configure, and sit in a warmed state, which cuts down scaling latency. Combined with a warmup period longer than the bootstrap time, this ensures the scaling metric stabilizes and prevents instance over-provisioning.

Step-by-Step Solution

1
Address the network single point of failure (SPOF) for outbound internet traffic.
By deploying a NAT Gateway in a public subnet in each Availability Zone and updating the route tables of the private subnets to direct traffic to their local NAT Gateway, the architecture becomes resilient to Availability Zone outages.
This guarantees that outbound internet routing is localized and independent per Availability Zone.
2
Resolve target initialization delays and scaling over-provisioning.
By using an Auto Scaling group Warm Pool with pre-warmed instances, we significantly reduce the time needed for instances to handle requests from 5 minutes to seconds. Increasing the warmup period to exceed the 5-minute bootstrapping window prevents the Auto Scaling group from scaling out prematurely.
This prevents the scaling policy from initiating subsequent scale-out actions while the initial instances are still bootstrapping.

Key Concept

Multi-AZ NAT Gateway redundancy and Auto Scaling Warm Pools are critical for eliminating single points of failure and managing bootstrapping delays in high-availability workloads.
Rate this question