A stateful workload scales one replica further and the new pod never schedules despite spare cluster capacity.
A StatefulSet stays Pending because topology spread and anti-affinity leave no node that also matches the PVC zone
Scheduling logic appears individually reasonable, yet together the rules produce an empty set for the next replica.
Scenario
What to check first
- Identify the primary failure signal in the Stateful Placement Deadlock 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
Treat anti-affinity, spread, and volume topology as one placement contract.
Questions worth viewing together
Community-field Kubernetes scheduling problem inspired by Stack Overflow threads about StatefulSet placement deadlocks with spread and storage constraints. Stateful scheduling failures often come from multiple reasonable constraints colliding rather than one obviously broken rule.
Teams often keep adding nodes in the wrong zone when the current constraints still make scheduling impossible.
Volume topology makes spread and anti-affinity stricter than they look on stateless workloads.
Similar cases seen in the field