β Repository β π Compliance Engine β π CloudAware β π AWS β π RDS
π‘οΈ AWS RDS Instance is idleπ’
- Contextual name: π‘οΈ Instance is idleπ’
- ID:
/ce/ca/aws/rds/instance-idle
- Tags:
- π’ Policy with categories
- π’ Policy with type
- π’ Production policy
- Policy Type:
COMPLIANCE_POLICY
- Policy Categories:
PERFORMANCE
,COST
Logicβ
- π§ prod.logic.yamlπ’
Descriptionβ
Descriptionβ
This policy identifies AWS RDS instances that appear to be idle based on their performance metrics over the past 30 days. An instance is considered idle if it meets all of the following criteria:
- Average CPU utilization has been less than 5%.
- Average Database Connections is zero.
Rationaleβ
Idle RDS instances generate costs without delivering business value. Identifying and decommissioning these resources can significantly reduce monthly AWS spend. Regular cleanup of unused resources also improves operational efficiency and reduces cloud management overhead.
Auditβ
This policy evaluates an RDS Instance based on its 30-day performance metrics.
The Instance is marked as
INCOMPLIANT
if all the following criteria are met:
CloudWatch: CPU, 30-Day
metric is less than 5%.CloudWatch: Database Connections, 30-Day
metric is zero.The Instance is marked as
INAPPLICABLE
if it is not in an availableStatus
or has been running for less than 30 days.The Instance is marked as
UNDETERMINED
if any of the evaluated metrics are empty, indicating insufficient data in the CMDB to assess whether the instance is idle.
Remediationβ
Remediationβ
Decommission Idle RDS Instancesβ
Key Considerationsβ
- If deletion is not an option (e.g., business constraints), consider downsizing the instance.
- Confirm with application and database owners that the instance is no longer required before stopping or deleting it.
- Stopping an instance retains the underlying data and allows it to be restarted later.
- Deleting an instance permanently removes it. Always take a final snapshot (if needed) before deletion.
Stop or Delete the Instanceβ
From Command Lineβ
Stop the instance:
aws rds stop-db-instance \
--db-instance-identifier {{db-instance-id}}Take a final snapshot before deletion:
aws rds create-db-snapshot \
--db-snapshot-identifier {{final-snapshot-name}} \
--db-instance-identifier {{db-instance-id}}Delete the idle instance:
aws rds delete-db-instance \
--db-instance-identifier {{db-instance-id}} \
--skip-final-snapshotDownsize the DB instanceβ
From Command Lineβ
To apply during the next maintenance window (recommended for production):
... see more
policy.yamlβ
Linked Framework Sectionsβ
Section | Sub Sections | Internal Rules | Policies | Flags | Compliance |
---|---|---|---|---|---|
πΌ Cloudaware Framework β πΌ Waste Reduction | 25 | no data | |||
πΌ Cloudaware Framework β πΌ Workload Efficiency | 24 | no data |