Question

Difficulty: MediumIdentify design principles of the AWS Cloud

An agricultural technology company runs complex crop growth simulation models that require hundreds of temporary compute instances for a few hours each week. The company wants to optimize its cloud architecture by applying the AWS design principle of 'disposable resources instead of fixed servers'. Which of the following architectural practices should the company implement to align with this principle? (Select TWO.)

  1. Define the entire simulation infrastructure using AWS CloudFormation to programmatically deploy and destroy resources as needed.Answer
  2. Bootstrap the compute instances using EC2 user data scripts to dynamically configure software dependencies at startup.Answer
  3. C
    Migrate the simulation workload to a single large virtual machine and scale it vertically to handle peak execution loads.
  4. D
    Pre-provision a static fleet of always-on EC2 instances to ensure they are permanently configured and ready for the weekly runs.
  5. E
    Manually log into each running server using SSH to install dependencies and apply OS patches before starting a simulation run.

Answer

To align with the principle of disposable resources, the company should define infrastructure using AWS CloudFormation for automated deployment and teardown, and bootstrap compute instances using EC2 user data scripts to dynamically configure dependencies at startup.
The AWS design principle of 'disposable resources instead of fixed servers' encourages treating resources as temporary and interchangeable. Defining infrastructure using AWS CloudFormation allows environments to be created and destroyed programmatically, ensuring consistency and cost-efficiency. Bootstrapping compute instances using EC2 user data allows the instances to configure themselves automatically at launch, removing the need for manual configuration or maintaining pre-existing, static instances.

Step-by-Step Solution

1
Identify the core requirement of the disposable resources design principle.
The principle emphasizes automated provisioning, configuration, and tearing down of resources rather than maintaining static, long-running servers.
This establishes the criteria for evaluating the choices based on automation and resource temporality.
2
Evaluate the practice of defining infrastructure as code.
Using AWS CloudFormation allows resources to be created dynamically for each run and completely destroyed afterward, minimizing costs and configuration drift.
This directly aligns with the concept of temporary, disposable infrastructure.
3
Evaluate instance configuration methods.
Bootstrapping instances dynamically at launch using EC2 user data scripts ensures that new, clean instances can be brought online automatically without requiring manual installation.
This supports the disposable resources pattern by automating the server setup process.
4
Identify and eliminate anti-patterns, such as vertical scaling of a single instance, maintaining always-on static fleets, or performing manual server administration.
Options recommending vertical scaling, static fleets, or manual SSH logins are marked as incorrect.
These practices treat servers as permanent assets rather than disposable resources.

Key Concept

The 'disposable resources instead of fixed servers' design principle in the AWS Cloud relies on automation, Infrastructure as Code, and dynamic bootstrapping to treat servers as temporary, interchangeable resources.
Rate this question