grafclouds.com / documents / training / devops-challenges / terraform-destructive-apply

Terraform Wants to Replace the Database. Apply Now?

Advanced ~14 min read
Terraform

Scenario

The change was supposed to be trivial: update one tag on the production RDS instance. But the Terraform plan comes back with the line every operator dreads — the database is marked for replacement, # forces replacement, destroy then create. It is mid-afternoon on a Tuesday, traffic is at its daily peak, and three engineers are pinging you because their branches are stacked behind this change. Hourly automated snapshots exist, and the pipeline's apply stage is one approval click away.

The temptation assembles itself: snapshots mean recoverable, the change is "just a tag," teammates are blocked, and Terraform itself presents replacement as a perfectly normal plan. One click and everyone is unblocked.

The Quick Fix on the Table

Approve the apply. Terraform says this is the state transition; snapshots are the safety net; and holding the queue for a tag change feels disproportionate.

Interview · Round 1

The quick fix is on the table and the room is waiting for your call. Would you sign off on it? Take a position and justify it — out loud or on paper — before revealing the analysis.