A safe, evidence-based doctor for Kubernetes resources stuck in Terminating.
It pinpoints the finalizer and the dead controller / APIService blocking
deletion, cleans truly-orphaned resources first, and clears finalizers only as
a gated last resort — dry-run by default.
Highlights
- 🩺 Diagnose any finalizer-blocked resource — namespaces, CRs, PVs, arbitrary CRDs.
- ⚖️ Evidence-based verdict (
strictdefault,scoreopt-in) — clears only on hard proof the owner is dead; a live or unreadable signal vetoes it, and time alone never does. - 🧹 Safe ordering — clean true orphans first, refuse on a dead-backed
failurePolicy=Failwebhook, clear the finalizer last. - 🔒 Proof-bound apply —
--confirmdigest + per-action re-verify +resourceVersionpreconditions + RBAC pre-flight. - 📦 Homebrew, krew, or static binaries —
kubectl finalizer-doctor(aliaskubectl fid).
Install
brew install alexremn/tap/finalizer-doctor
# or download a binary from the assets below
safely — read the safety model first.
Full Changelog: v0.1.2...v0.1.3