Chapter 57 · Amazon Aurora MySQL
Subchapter 57.2
references/commitment-pricing-instructions.mdMarkdown7 KBView on GitHub
Estimate monthly cost savings from Aurora Reserved Instances (RI) and Database Savings Plans (DSP) for one cluster, a fleet, or user-supplied workloads (including Aurora serverless). Three edge cases govern the math — DSP family coverage, I/O-Optimized handling, and serverless being DSP-only — all stated fully in Step 4 and . Purchases are blocked — see SKILL.md Safety guidance. Execute commands via the AWS MCP server when connected (sandboxed, audited); else use the AWS CLI or shell.
User mentions: Reserved Instance, RI, Savings Plan, DSP, commitment pricing, No/Partial/All Upfront, 1-year vs 3-year, or whether a commitment is worth buying.
Before running ANY analysis on a specific cluster, check whether it has DB instances attached. If aws rds describe-db-clusters --db-cluster-identifier <id> returns an empty DBClusterMembers: [] array, OR the analyzer returns skipped: true, the cluster EXISTS but has no compute — you CANNOT run a commitment-pricing analysis on it.
See skipped-cluster.md for the cluster-name heuristic (treat empty / no-instances identifiers as skipped), the causes (last instance deleted, paused, mid-migration), the required response template, and the MUST NOT guardrails.
Modes:
--io-optimized flag.--io-optimized flag.Constraints for parameter acquisition:
Constraints:
--region matching the workload’s region--format json when post-processing and --format table for direct user display# Live single cluster
python scripts/commitment_pricing_analyzer.py --cluster my-cluster --region us-east-1
# Fleet
python scripts/commitment_pricing_analyzer.py --all --region us-east-1
# Offline provisioned
python scripts/commitment_pricing_analyzer.py offline \
--instance db.r7g.2xlarge --num-instances 2 --region us-east-1
# Offline Aurora serverless (DSP only)
python scripts/commitment_pricing_analyzer.py offline \
--serverless --avg-acu 8 --region us-east-1The analyzer returns skipped: true for clusters with no DB instances (last writer/reader deleted, paused, or mid-migration) — no compute to commit to. An auto-paused scale-to-zero serverless instance still appears in the cluster and is analyzable; it is not an empty cluster.
Constraints:
reason stringConstraints:
notes array to the user — these are the most common misconceptionsEvery comparison MUST include:
notes when present (DSP ineligibility, I/O-Optimized interaction)Constraints:
For workload-pattern questions (steady vs variable, fleet mix, migration horizon), pull guidance from scenarios.md.
Constraints:
See worked-examples.md §Troubleshooting for common failure modes: cluster-not-found, empty offerings, 3-year DSP requests, DSP-ineligible families, over-baseline commits, and max-capacity=0 auto-pause warnings.
Run the analyzer when shell is available; otherwise compute inline using the references below.