A maintenance window starts and node drains stop progressing even though replacement pods appear to be coming up normally.
A PodDisruptionBudget blocks every node drain
Drain requests hang because disruption accounting still includes pods that are in shutdown but not fully gone.
Scenario
What to check first
- Identify the primary failure signal in the Graceful Shutdown Still Counted as Real Disruption scenario.
- Separate visible symptoms from the underlying technical dependency.
- Describe the safest recovery path and the follow-up prevention work.
Checking checklist
- Summarize the current impact and the last known change.
- Collect direct evidence from logs, runtime state, and configuration before changing anything.
- Separate immediate recovery from permanent prevention work.
Recovery and prevention
Review disruption accounting timing before lowering PDB safety or forcing evictions.
Questions worth viewing together
Community-field Kubernetes problem inspired by drain and PDB discussions where terminating pods still blocked eviction. Terminating is not the same as absent from the budget calculation.
Teams often blame slow scheduling when the PDB math is still waiting on terminating pods to fully exit.
Maintenance playbooks should be tested against how PDBs count terminating workloads, not only running replicas.
Similar cases seen in the field