highScheduling
GPU pod stuck Pending
A pod requesting a GPU won't schedule and sits in Pending.
Scope
Usually a scheduling constraint, not a hardware fault. Start from the scheduler's own explanation.
Check recent changes
- ·New workload with different requests
- ·Taints added to GPU nodes
- ·Quota changes
Guided diagnosis
What does `kubectl describe pod` say under Events?
Ask the scheduler why
bash
kubectl describe pod <pod> | sed -n '/Events/,$p'Expect: A message like 'Insufficient nvidia.com/gpu' or a taint mismatch.
Is there any allocatable GPU?
bash
kubectl get nodes -o custom-columns=NAME:.metadata.name,GPU:.status.allocatable.'nvidia\.com/gpu'Expect: At least one node with free GPUs ≥ the request.
- high likelihoodNo node has enough free GPUs
Fix · Free capacity, scale out, or reduce the request.
- high likelihoodToleration missing for the GPU node taint
Fix · Add the matching toleration to the pod.
- medium likelihoodRequest exceeds any single node's GPU count
Fix · Split the job or use nodes with more GPUs.
- medium likelihoodNamespace GPU quota exhausted
Fix · Raise the quota or reclaim usage.
Validation
- ✓Pod transitions to Running and lands on a GPU node
Escalation
If capacity is genuinely exhausted cluster-wide, escalate for more GPUs.
Data to collect first
- ·Pod scheduling events
- ·Node allocatable GPUs vs. requests
- ·Taints/tolerations
- ·Namespace quota
Related alerts