Question

Difficulty: MediumImplementing Auto Scaling and Fault Tolerance

A media company operates a video transcoding application on Amazon EC2 instances in an Auto Scaling group (ASG) behind an Application Load Balancer (ALB). The instances require 7 minutes to download custom profiles and initialize the transcoding daemon before they can accept tasks. During scheduled flash promotional events, the application experiences sudden, massive surges in traffic. The ASG scales out, but it continuously launches unnecessary instances, leading to excessive costs. Additionally, the ALB drops connection requests during the first few minutes of the event. Which combination of actions will resolve the over-provisioning issue and prevent connection drops?

  1. A
    Decrease the default cooldown period of the Auto Scaling group to 60 seconds to allow faster resource provisioning, and configure the Application Load Balancer to use cross-zone load balancing.
  2. B
    Implement a target tracking scaling policy on the Auto Scaling group with an instance warmup period of 450 seconds, and route all outbound internet traffic through a single NAT Gateway to speed up the instance bootstrapping process.
  3. Implement a target tracking scaling policy on the Auto Scaling group with an instance warmup period of 450 seconds, and submit a request to AWS Support for Application Load Balancer pre-warming prior to the promotional events.Answer
  4. D
    Implement a target tracking scaling policy on the Auto Scaling group with an instance warmup period of 450 seconds, and rely on the default auto-scaling behavior of the Application Load Balancer to dynamically scale out during the traffic spikes.

Answer

Implement a target tracking scaling policy on the Auto Scaling group with an instance warmup period of 450 seconds, and submit a request to AWS Support for Application Load Balancer pre-warming prior to the promotional events.
The correct option is the configuration that recommends setting the instance warmup period to 450 seconds and requesting ALB pre-warming. Since the EC2 instances require 7 minutes (420 seconds420 \text{ seconds}) to bootstrap, the warmup period must exceed this value to prevent the Auto Scaling group from launching extra instances before the first batch is ready. Furthermore, pre-warming the Application Load Balancer ensures that it is provisioned with sufficient capacity to absorb the massive, sudden traffic surge without dropping incoming requests.

Step-by-Step Solution

1
Convert the bootstrapping time of the instances from minutes to seconds.
The bootstrapping time is 7 minutes×60 seconds/minute=420 seconds7 \text{ minutes} \times 60 \text{ seconds/minute} = 420 \text{ seconds}.
This calculation establishes the minimum timeframe that a new instance needs before it can contribute to handling the application load.
2
Determine the minimum warmup duration for the Auto Scaling group's target tracking scaling policy.
The instance warmup period must be configured to be greater than the bootstrap time, which is why 450 seconds is selected.
Setting the warmup period to 450 seconds ensures the Auto Scaling group waits for the newly launched instances to become fully ready before evaluating the metric again, preventing over-provisioning.
3
Select the appropriate load balancer scaling strategy to prevent connection drops during flash traffic spikes.
Submit a pre-warming request to AWS Support before the scheduled promotional events.
Application Load Balancers scale dynamically but gradually. For a massive, instantaneous traffic spike, pre-warming ensures that the ALB has pre-allocated capacity ready to handle the load immediately without dropping packets.

Key Concept

Aligning scaling policy warmup durations with instance bootstrap time and requesting Application Load Balancer pre-warming for sudden traffic surges.
Estimated Time:2m 0s
Rate this question