$ cat ~/writing/terraform-patterns-aurora.md
Terraform patterns for Aurora
November 2025 · 1 min read · #terraform#aws#aurora#devops
Managing Aurora with Terraform is easy to start and easy to get wrong. These are the patterns that kept our clusters boring — in the good way.
Module boundaries
Keep the cluster, its parameter groups, and its security groups in one module with a small surface: environment name, instance class, and count. Everything else is an opinionated default inside the module, not a knob callers can turn.
Parameter groups are code
Cluster and instance parameter groups live in the module, versioned like everything else. A parameter change is a PR with a diff, not a console click nobody remembers six months later.
Safe rollout habits
- Plan output reviewed on every change that touches the cluster resource — Aurora replacements are expensive surprises.
lifecycle { prevent_destroy = true }on production clusters.- Instance class changes roll through readers before the writer.
What I’d write more about
Snapshot-and-restore drills, and the seam between Terraform-managed infrastructure and migration-managed schema. Follow-up post material.