A company runs a critical OLTP application on Amazon RDS for PostgreSQL (db.r6g.4xlarge, Multi-AZ). During a recent incident, the RDS instance experienced a storage-full event, causing the database to become read-only and the application to fail. The team wants to prevent this from happening again with the least operational overhead. Which combination of actions should the solutions architect take? (Select TWO)
- A. Schedule a weekly AWS Lambda function to check storage utilization and manually increase storage
- B. Create an Amazon CloudWatch alarm on the FreeStorageSpace metric and trigger an SNS notification✓ Correct
- C. Migrate to Amazon Aurora to benefit from Aurora's auto-scaling distributed storage
- D. Enable automated backups with a 35-day retention period to recover from storage-full events
- E. Increase the current storage allocation by 100% immediately to provide headroom
- F. Enable RDS Storage Auto Scaling with a maximum storage threshold of 10 TB✓ Correct
Explanation
RDS Storage Auto Scaling automatically expands storage when free space is low, with no manual intervention — directly preventing the storage-full event from recurring. Setting a maximum threshold protects against runaway growth. A CloudWatch alarm on FreeStorageSpace provides early warning so the team can monitor trends and act proactively before any threshold is reached, even if auto scaling is enabled. Migrating to Aurora would solve the storage problem (Aurora auto-scales in 10 GB increments) but is a major migration effort with significant operational overhead. Scheduling a Lambda function to check and increase storage manually is operationally complex, error-prone, and can miss rapid storage growth. Increasing storage by 100% immediately provides temporary headroom but is a one-time fix that doesn't prevent future recurrence. Automated backups help with recovery after a failure but do not prevent storage exhaustion.