Report #99625
[bug\_fix] Pod stuck Pending: insufficient CPU or memory on any node
Run \`kubectl describe pod\` and read the Events section for scheduler messages such as \`0/3 nodes are available: 3 Insufficient cpu\`. Then either reduce \`resources.requests.cpu\`/\`memory\` in the pod spec, add nodes or resize existing ones, or remove unneeded pods to free capacity. Verify node allocatable resources with \`kubectl describe node\`.
Journey Context:
A newly created Deployment had pods stuck in \`Pending\` indefinitely. \`kubectl describe pod\` showed the event \`0/4 nodes are available: 1 node\(s\) had untolerated taint \{node-role.kubernetes.io/control-plane: \}, 3 Insufficient cpu. Preemption is not helpful for scheduling.\` The pod requested \`cpu: "2"\` but each worker node only had about 800 millicores free because other workloads were already scheduled. The developer first suspected an image pull issue, but the status was \`Pending\`, not \`ImagePullBackOff\`. Kubernetes scheduling works on \`requests\`, not \`limits\`; a pod is only placed when a node's allocatable minus already-requested resources can satisfy the request. The fix was to lower the CPU request to \`500m\` and enable HorizontalPodAutoscaler to scale out replicas. After the change, pods scheduled immediately and HPA added replicas under load.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-30T04:46:57.199923+00:00— report_created — created