Question

Difficulty: MediumAWS Elastic Beanstalk

A developer is updating a critical, high-traffic API application deployed on AWS Elastic Beanstalk. The application must maintain full serving capacity during the deployment process. If any instance running the new version fails, the system must trigger an automatic rollback to the previous version with the absolute minimum time to restore the original state. The developer wants to avoid the overhead of managing a separate environment for Blue/Green deployments. Which deployment policy best satisfies these requirements?

  1. ImmutableAnswer
  2. B
    Rolling with additional batch
  3. C
    Rolling
  4. D
    All at once

Answer

The Immutable deployment policy satisfies these requirements by maintaining full capacity and allowing rapid, clean rollbacks.
The Immutable deployment policy creates a temporary Auto Scaling group and launches a new set of instances running the updated version alongside the original instances. This ensures 100% of the active serving capacity is maintained. If the new instances fail health checks, AWS Elastic Beanstalk immediately terminates the temporary Auto Scaling group. This results in an extremely fast rollback with zero impact on the original instances and requires no manual intervention or secondary environment management.

Step-by-Step Solution

1
Analyze the capacity requirement during deployment.
The application must maintain 100% serving capacity, which rules out 'Rolling' (which reduces capacity during deployment) and 'All at once' (which takes all instances out of service).
Eliminating deployment policies that reduce or eliminate service capacity.
2
Evaluate the rollback speed and complexity requirement.
The rollback must be automatic and extremely fast. 'Rolling with additional batch' requires updating instances in batches back to the original version, which takes time. 'Immutable' deployments can be rolled back immediately by terminating the temporary Auto Scaling group.
Determining the policy that provides the fastest recovery from a deployment failure.
3
Check the infrastructure overhead constraint.
The developer wants to avoid managing a separate environment, which is required for Blue/Green deployments but not for Immutable deployments.
Selecting the policy that performs the update within the existing environment without external management overhead.

Key Concept

AWS Elastic Beanstalk Immutable Deployment Policy
Estimated Time:1m 30s
Rate this question