Resource requirements
This page provides you with an overview of the resource requirements needed for AWS Compute Optimizer to generate optimization recommendations. In order for Compute Optimizer to generate recommendations, your AWS resources must meet Amazon CloudWatch metric and resource-specific requirements. Compute Optimizer has different CloudWatch metric data requirements for each resource type.
If your resources don't have enough metric data, allow for more time before the recommendations start appearing in the Compute Optimizer console. For example, if your resources have enough metric data but the recommendations aren't showing up, this probably means that Compute Optimizer is still analyzing your resources. It can take up to 24 hours to complete the analysis. After the analysis is complete, resource recommendations appear in the Compute Optimizer console.
Topics
Amazon EC2 instance requirements
Amazon EC2 instances require at least 30 hours of CloudWatch metric data in the past 14 days. For a list of the instance types supported by Compute Optimizer, see Supported Amazon EC2 instance types.
If you enabled the enhanced infrastructure metrics feature, EC2 instances require at least 30 hours of CloudWatch metric data over the past 93 days. For more information, see Enhanced infrastructure metrics.
Auto Scaling group requirements
Compute Optimizer generates recommendations for Auto Scaling groups that run supported instance types. The supported instance types are listed in the Supported Amazon EC2 instance types section of this user guide. To generate Auto Scaling group recommendations, the Auto Scaling groups must meet the following requirements:
-
They require at least 30 consecutive hours of CloudWatch metric data.
-
They run only a single instance type (no mixed instance types).
-
The values for desired, minimum, and maximum capacity are all the same. For example, an Auto Scaling group with a fixed number of instances.
-
They don't use Spot instances.
-
No overrides are configured.
Compute Optimizer generates recommendations for instances in Auto Scaling groups that meet all of these configuration requirements.
Amazon EBS volume requirements
Compute Optimizer generates recommendations for EBS volume types that are attached to an instance. Data is only reported to CloudWatch when the volume is attached to an instance. The volume must be attached to an instance for at least 30 consecutive hours.
For a list of Amazon EBS volume types supported by Compute Optimizer, see Supported Amazon EBS volume types.
Lambda function requirements
Compute Optimizer generates memory size recommendations only for Lambda functions that meet the following requirements:
-
The configured memory is less than or equal to 1,792 MB.
-
The functions were invoked at least 50 times in the last 14 days.
Functions that don't meet these requirements are given a finding of Unavailable. The reason code of Inconclusive applies to functions that have configured memory greater than 1,792 MB. Insufficient data applies to functions that have been invoked fewer than 50 times in the last 14 days.
Functions with a finding of Unavailable don't appear in the Compute Optimizer console and don't receive recommendations.
Note
Lambda functions don't require CloudWatch metric data.
Requirements for Amazon ECS services on Fargate
To generate recommendations for Amazon ECS services on Fargate, Compute Optimizer requires the following:
-
Your services have at least 24 hours of CloudWatch and Amazon ECS utilization metrics in the past 14 days.
-
No step scaling policy is attached.
-
No target scaling policy is attached to CPU and memory.
Note
If a target tracking policy is attached to the service’s CPU only, Compute Optimizer only generates memory size recommendations. Or, if a target tracking policy is attached to the service’s memory only, Compute Optimizer only generates CPU size recommendations.
-
The service run status is SteadyState or MoreWork.
For more information about the metrics analyzed, see Metrics for Amazon ECS services on Fargate.
Commercial software license requirements
Compute Optimizer only generates license recommendations for Microsoft SQL Server on Amazon EC2.
To generate recommendations for commercial software licenses, Compute Optimizer requires the following:
-
At least 30 consecutive hours of CloudWatch metric data.
-
Enable CloudWatch Application Insights using your Microsoft SQL Server database credentials.
For more information about how to enable CloudWatch Application Insights, see Set up Amazon CloudWatch Application Insights for monitoring in the Amazon CloudWatch User Guide.
-
Attach the required instance role and policy for CloudWatch Application Insights. For more information, see Policies to enable commercial software license recommendations.
For more information about the metrics analyzed, see Metrics for commercial software licenses.
Amazon RDS DB instance requirements
Compute Optimizer generates RDS DB instances and RDS DB instance storage recommendations for RDS for MySQL, RDS for PostgreSQL, and Amazon Aurora databases. To generate recommendations for your RDS DB instances, Compute Optimizer requires the following:
-
At least 30 hours of CloudWatch metric data in the past 14 days. If you enabled the enhanced infrastructure metrics feature, RDS DB instances require at least 30 hours of metric data over the past 93 days. For more information, see Enhanced infrastructure metrics.
-
In order to receive recommendations for RDS DB instances that are over-provisioned, you need to enable Amazon RDS Performance Insights. To enable Performance Insights for your DB instances, see Turning Performance Insights on and off for Amazon RDS in the Amazon Relational Database Service User Guide.
-
No application autoscaling policy is attached to the Aurora DB cluster. For more information about Aurora Auto Scaling, see Amazon Aurora Auto Scaling with Aurora Replicas in the Amazon Aurora User Guide.