Skip to main content

🛡️ AWS RDS Instance is underutilized🟢

Stats

not available

Logic

Description

Open File

Description

This policy identifies Amazon RDS Instances that appear to be underutilized based on their performance metrics over the last 30 days. An instance is flagged as underutilized when it is available, has existed for at least 30 days, and meets the following conditions:

  1. Average CPU utilization is below 20%.
  2. Average disk read IOPS is below 50.
  3. Average disk write IOPS is below 50.
  4. Average database connections are below 5.
  5. Maximum database connections do not exceed 20.

Instances that meet the idle-instance criteria, including near-zero disk I/O, are evaluated by the AWS RDS Instance is idle policy instead.

Rationale

Right-sizing underutilized RDS instances helps reduce costs while maintaining application performance. Aligning resources with actual workload requirements improves infrastructure efficiency and prevents unnecessary spend.

Impact

Review performance data and workload patterns carefully before resizing. An overly aggressive downsize can affect database availability, stability, or responsiveness.

... see more

Remediation

Open File

Remediation

Right-Size Underutilized RDS Instances

Key Considerations
  • Review CPU, read IOPS, write IOPS, connection count, and workload seasonality before changing the instance class.
  • Ensure that the new instance class supports your workload and storage requirements.
  • Coordinate with application owners before resizing to avoid unexpected performance issues.
  • Prefer applying changes during a maintenance window for production workloads.
Modify the DB Instance Class
From AWS CLI

To apply during the next maintenance window (recommended for production):

aws rds modify-db-instance \
--db-instance-identifier {{db-instance-id}} \
--db-instance-class {{new-instance-class}} \
--apply-immediately false

To apply immediately (causes a brief outage while resizing):

aws rds modify-db-instance \
--db-instance-identifier {{db-instance-id}} \
--db-instance-class {{new-instance-class}} \
--apply-immediately true

policy.yaml

Open File

Linked Framework Sections

SectionSub SectionsInternal RulesPoliciesFlagsCompliance
💼 Cloudaware Framework → 💼 Resource Right-Sizing18no data
💼 Cloudaware Framework → 💼 Workload Efficiency24no data