← Problem Library
K8s L6 K8S 1365 · 15 min

An OpenSearch StatefulSet keeps one replica Pending because zone spread constraints reference the new zone label while anti-affinity still keys off the previous one

The scheduler has enough nodes, yet the replica never lands because its two placement rules now speak different zone vocabularies.

K8sPlatform ReliabilityLevel 6Pro15 min
Scenario

A label migration finishes and later one search replica remains unschedulable despite apparent cluster capacity.

What to check first
  • Identify the primary failure signal in the The Scheduler Was Told to Spread by the New Labels and Avoid by the Old Ones scenario.
  • Separate visible symptoms from the underlying technical dependency.
  • Describe the safest recovery path and the follow-up prevention work.
Checking checklist
  1. Summarize the current impact and the last known change.
  2. Collect direct evidence from logs, runtime state, and configuration before changing anything.
  3. Separate immediate recovery from permanent prevention work.
Recovery and prevention

Compare all scheduler label references before adding more nodes or lowering replica counts.

Questions worth viewing together
What should you verify first when An OpenSearch StatefulSet keeps one replica Pending appears?

Community-field Kubernetes problem inspired by OpenSearch and Kubernetes scheduler discussions where placement rules diverged after a zone-label migration. Unschedulable state often comes from contradictory placement logic after label migrations, not from raw capacity shortage.

What usually causes An OpenSearch StatefulSet keeps one replica Pending in production?

Teams often blame lack of nodes when spread and anti-affinity constraints simply reference different label generations.

What should you document after resolving An OpenSearch StatefulSet keeps one replica Pending?

Label migrations should include a full scheduler-policy audit for stateful workloads.