Kubernetes: Pod stuck in Pending — FailedScheduling: 0/3 nodes are available
The scheduler can’t find a node that satisfies the pod’s resource requests, selectors, taints or volume constraints.
Seen on:
Kubernetes
Meaning
The FailedScheduling event explains why for every node: insufficient CPU/memory, node selector/affinity mismatch, untolerated taints, or a PersistentVolumeClaim that can’t bind in that zone.
Common causes
- Resource requests larger than any node’s free capacity
- nodeSelector / affinity matching no nodes
- Taints without matching tolerations
- PVC unbound or volume in another zone
- Cluster autoscaler at max nodes
⚡ Quick fix
kubectl describe pod <pod>→ Events- Lower requests or add/scale nodes
- Fix selectors/affinity labels
- Add tolerations or remove taints
- Check
kubectl get pvc
Detailed fix by platform
Kubernetes
- Investigate capacity and constraints:bash
kubectl describe pod api-5c9d7 | sed -n '/Events/,$p' kubectl describe nodes | grep -A5 "Allocated resources" kubectl get nodes --show-labels kubectl get pvc
How to diagnose
- Events — What does FailedScheduling say per node?
- Requests — CPU/memory requests vs allocatable
- Placement — Selectors, affinity, taints
- Storage — PVC bound?
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
Was this page helpful?
Report a correction or suggest an improvement
Last updated 2 Oct 2026