Soru

Zorluk: OrtaImplementing Auto Scaling and Fault Tolerance

A company operates an online multiplayer game session manager that runs on Amazon EC2 instances in an Auto Scaling group (ASG) behind an Application Load Balancer (ALB). The instances are located in private subnets across two Availability Zones. The instances require internet access to fetch game assets and configuration files during startup, which takes approximately 6 minutes. Outbound internet access is currently routed through a single NAT Gateway located in one public subnet.

During sudden game updates and player surges, new instances are launched to handle the load. However, the company notices two issues:
1. The NAT Gateway bandwidth limit is temporarily saturated, causing asset download timeouts and causing the EC2 instance bootstrapping process to stall.
2. Newly launched instances are terminated by the ASG's health check mechanism before they can complete bootstrapping, leading to continuous instance replacements.

Which combinations of architectural changes should a Solutions Architect implement to improve the fault tolerance and scalability of this system? (Select TWO.)

  1. Deploy a NAT Gateway in each Availability Zone and update the route tables of the private subnets to route outbound traffic through the local NAT Gateway.Cevap
  2. Increase the Health Check Grace Period of the Auto Scaling group to at least 450 seconds.Cevap
  3. C
    Decrease the default cooldown period of the Auto Scaling group to 120 seconds to allow faster replacement of failed instances.
  4. D
    Request an Application Load Balancer pre-warming limit increase from AWS Support to handle the game update surges.
  5. E
    Route outbound traffic from all private subnets to a single NAT Gateway in one Availability Zone to simplify route management.

Cevap

Deploy a NAT Gateway in each Availability Zone and increase the Health Check Grace Period of the Auto Scaling group to at least 450 seconds.
Deploying a NAT Gateway in each Availability Zone ensures that outbound traffic remains localized to each zone, eliminating the single point of failure and increasing the total outbound bandwidth capacity. Increasing the Health Check Grace Period of the Auto Scaling group to 450 seconds ensures that the group waits long enough for the EC2 instances to complete their 6-minute bootstrapping process before evaluating their health, preventing premature terminations and scaling loops.

Adım Adım Çözüm

1
Analyze the outbound dependency traffic path.
The single NAT Gateway represents a single point of failure (SPF) and is experiencing bandwidth saturation during surges.
Outbound traffic from all instances in both Availability Zones traverses a single NAT Gateway.
2
Redesign the outbound NAT routing topology.
Deploy one NAT Gateway per Availability Zone and update the private route tables accordingly.
This setup provides zone-level fault tolerance and doubles the available outbound bandwidth for bootstrapping instances.
3
Evaluate the instance bootstrapping duration against Auto Scaling group settings.
Instances require 6 minutes (360 seconds) to boot, but are being marked unhealthy and terminated prematurely by the ASG.
The default health check grace period is shorter than the bootstrapping time, causing the ASG to terminate instances before they can serve traffic.
4
Adjust the health check grace period.
Set the Health Check Grace Period to a value greater than the bootstrap time (e.g., 450 seconds).
This allows newly launched instances sufficient time to complete initialization before being evaluated by the ASG health checks.

Anahtar Kavram

Designing multi-AZ fault tolerance and alignment of Auto Scaling health check grace periods with instance bootstrapping times.
Bu soruyu puanla