Supported resources and requirements - AWS Compute Optimizer

Supported resources and requirements

AWS Compute Optimizer generates recommendations for the following resources:

  • Amazon Elastic Compute Cloud (Amazon EC2) instances

  • Amazon EC2 Auto Scaling groups

  • Amazon Elastic Block Store (Amazon EBS) volumes

  • AWS Lambda functions

  • Amazon Elastic Container Service (Amazon ECS) services on AWS Fargate

  • Commercial software licenses

  • Amazon Relational Database Service (Amazon RDS) DB instances and storage

To receive recommendations, the resources must meet the following Amazon CloudWatch (CloudWatch) metric and resource-specific requirements.

CloudWatch metric requirements

To generate recommendations, Compute Optimizer has different CloudWatch metric data requirements for each resource type. The CloudWatch metric data requirements for each resource type are the following:

  • Amazon EC2 instances require at least 30 hours of metric data in the past 14 days. If you enabled the enhanced infrastructure metrics feature, EC2 instances require at least 30 hours of metric data over the past 93 days. For more information, see Enhanced infrastructure metrics.

  • Auto Scaling groups require at least 30 consecutive hours of metric data.

  • Amazon EBS volumes require at least 30 consecutive hours of metric data.

  • Amazon ECS services on Fargate require at least 24 hours of metric data.

  • Lambda functions don't require CloudWatch metric data.

  • Commercial software licenses require at least 30 consecutive hours of metric data.

  • Amazon RDS DB instances and storage require at least 30 hours of 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.

If your resources don't have enough metric data, allow for more time before the recommendations start appearing in the Compute Optimizer console. For more information about the metrics that Compute Optimizer analyzes, see Metrics analyzed by AWS Compute Optimizer.

Suppose that 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.

Amazon EC2 instance requirements

Compute Optimizer generates recommendations for several instance types. You can run unsupported instance types in addition to supported types. However, Compute Optimizer only generates recommendations for supported instances. Not all instance types are available in every AWS Region that Compute Optimizer is available in. To determine the supported Regions for each of these instance types, see Finding an Amazon EC2 instance type in the Amazon EC2 User Guide for Linux Instances.

The following table lists the EC2 instance types that are supported by Compute Optimizer.

Instance family Type

C

C1 | C3 | C4 | C5 | C5a | C5ad | C5d | C5n | C6a | C6g | C6gd | C6gn | C6i | C6in | C7a | C7g | C7gd | C7gn | C7i

D

D2 | D3 | D3en

G

G4dn

Hpc

H1 | Hpc6a | Hpc6id | Hpc7a | Hpc7g

I

I2 | I3 | I3en | I4g | I4i | Im4gn | Is4gen

M

M1 | M2 | M3 | M4 | M5 | M5a | M5ad | M5d | M5dn | M5n | M5zn | M6a | M6g | M6gd | M6i | M6id | M6idn | M6in | M7a | M7g | M7gd | M7i | M7i-flex

P

P3

R

R3 | R4 | R5 | R5a | R5ad | R5b | R5d | R5dn | R5n | R6a | R6g | R6gd | R6i | R6id | R6idn | R6in | R7a | R7g | R7gd | R7i | R8g

T

T1 | T2 | T3 | T3a | T4g

X

X1 | X1e | X2gd | X2idn | X2iedn | X2iezn

z

z1d

Note
  • If an EC2 instance isn't listed, then it isn't supported by Compute Optimizer.

  • Compute Optimizer doesn't generate recommendations for Spot instances.

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 preceding Amazon EC2 instance requirements section.

Additionally, the Auto Scaling groups must meet the following requirements:

  • 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 the following EBS volume types that are attached to an instance:

  • HDD st1 and sc1

  • General Purpose SSD gp2 and gp3

  • Provisioned IOPS SSD io1, io2, and io2 Block Express

Compute Optimizer also generates recommendations to move your data out from previous generation HDD Magnetic volumes. For more information, see Amazon EBS previous generation volumes.

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.

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.

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

Note

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:

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 Amazon RDS MySQL and Amazon RDS PostgreSQL database engines. To generate recommendation for your RDS DB instances, Compute Optimizer requires the following:

  • At least 30 hours of 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.

The following sections outline the Amazon RDS resources Compute Optimizer generates recommendation for.

RDS DB instances

Compute Optimizer generates recommendations for several RDS DB instance types. Not all instance types are available in every AWS Region that Compute Optimizer is available in. To determine the supported Regions for each of these instance types, see DB instance classes in the Amazon Relational Database Service User Guide.

The following table lists the RDS DB instance types that are supported by Compute Optimizer.

DB instance class family Type

General purpose

db.m7g | db.m6g | db.m6i | db.m5 | db.m3 | db.m1 | db.m2 | db.m5d | db.m6gd | db.m6i

Memory-optimized R family

db.r3 | db.r4 | db.r5 | db.r5b | db.r5d | db.r6g | db.r6gd | db.r6i | db.r7g

Burstable-performance

db.t3 | db.t4g

Memory-optimized Z family

db.x2g | db.x2idn | db.x2iedn

RDS DB instance storage

Compute Optimizer generates recommendations for the following RDS DB instance storage volume types:

  • General Purpose SSD gp2 and gp3

  • Provisioned IOPS SSD io1