Unschedulable
KubernetesWARNINGNotableSchedulingHIGH confidence

Pod cannot be placed on any node

Production Risk

Pod contributes no capacity; scaled-out workloads may not meet their replica count.

What this means

An Unschedulable pod has been accepted by the API server but the scheduler cannot find a node that satisfies all of the pod's constraints. The pod remains in Pending state. Common causes include insufficient CPU/memory on all nodes, node selector or affinity mismatches, and taint/toleration conflicts.

Why it happens
  1. 1No node has sufficient CPU or memory to satisfy the pod resource requests
  2. 2nodeSelector or nodeAffinity rules do not match any node labels
  3. 3Node taints are not tolerated by the pod
  4. 4Pod requires a specific topology (zone, region) that is at capacity
How to reproduce

Pod stays in Pending state; kubectl describe shows Unschedulable condition.

trigger — this will error
trigger — this will error
kubectl describe pod mypod | grep -A 5 "Events:"
# Warning  FailedScheduling  default-scheduler  0/3 nodes are available:
#   3 Insufficient memory.

expected output

Warning  FailedScheduling  ...  0/3 nodes are available: 3 Insufficient memory.

Fix 1

Read the scheduler failure reason

WHEN Pod is stuck in Pending

Read the scheduler failure reason
kubectl describe pod mypod | grep -A 20 "Events:"
kubectl get events --field-selector involvedObject.name=mypod,reason=FailedScheduling

Why this works

The scheduler emits a detailed event explaining exactly why each node was rejected.

Fix 2

Scale up the cluster or reduce resource requests

WHEN Cluster capacity is exhausted

Scale up the cluster or reduce resource requests
# Check current node capacity
kubectl describe nodes | grep -A 5 "Allocated resources:"

# Reduce pod requests if over-specified
resources:
  requests:
    cpu: "100m"
    memory: "128Mi"

Why this works

Adding capacity or right-sizing requests allows the scheduler to place the pod.

Sources
Official documentation ↗

Kubernetes Documentation

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All Kubernetes errors