Question #824
An application is deployed on Amazon EC2 instances within an Auto Scaling group configured with a single instance type. The instances are over-provisioned, leading to higher-than-necessary costs despite stable CPU and memory utilization. A solutions architect must implement a solution to reduce costs and improve resource utilization while minimizing future configuration adjustments. Which solution meets these requirements?
Identify instance types with similar compute and memory characteristics as the current type. Update the Auto Scaling group's launch template to include these instance types, enabling it to use multiple instance types.
Analyze the application's resource utilization data to select a more cost-effective instance type. Update the Auto Scaling group's configuration to include the new instance type and remove the original instance type.
Define CPU and memory requirements in a revised launch template for the Auto Scaling group, removing the current instance type. This allows AWS to automatically select the most suitable instance type based on the specifications.
Develop a script that dynamically retrieves cost-optimized instance types from the AWS Price List API. Update the Auto Scaling group's launch template to use these instance types.
Explanation
Answer C is correct because it leverages AWS's attribute-based instance type selection. By specifying CPU and memory requirements in the launch template, AWS dynamically selects the cheapest instance type that meets the criteria. This ensures optimal resource utilization and cost efficiency without manual intervention.
Other options are incorrect because:
- A: Adding similar instance types does not address over-provisioning if all types are oversized.
- B: Manually selecting a new instance type requires future adjustments if requirements change.
- D: Custom scripts add complexity and maintenance overhead, conflicting with the requirement to minimize configuration changes.
Key Points:
1. Attribute-based instance selection automates cost optimization.
2. Defining resource requirements allows AWS to adapt to new instance types.
3. Minimizes manual intervention, aligning with the problem's constraints.
Answer
The correct answer is: C