Report #102958
[bug\_fix] Pod stuck in Pending with FailedScheduling: insufficient CPU or memory
Reduce the Pod's \`resources.requests\` so they fit within the node's allocatable capacity, add more nodes to the cluster, or remove unneeded pods. Also check \`ResourceQuota\` and \`LimitRange\` in the namespace, because the scheduler uses requests \(not actual usage\) to decide placement, and quotas can block scheduling before the scheduler runs.
Journey Context:
You scale a Deployment and the new pods remain \`Pending\`. \`kubectl describe pod\` shows \`Warning FailedScheduling 0/3 nodes are available: 3 Insufficient cpu\` or \`Insufficient memory\`. You run \`kubectl top nodes\` and actual CPU/memory usage looks low, which is confusing until you remember Kubernetes schedules based on requested resources, not observed usage. \`kubectl describe node\` shows \`Allocated resources\` already near \`Allocatable\`, so no node has enough uncommitted request capacity for the new pods. You also check \`kubectl describe resourcequota -n \` and find the namespace quota is almost exhausted. You lower the container request from \`cpu: 1\` to \`cpu: 500m\`, which frees enough scheduling headroom without reducing the limit, and the pods schedule. For a long-term fix you enable cluster autoscaling so nodes are added when pending pods cannot fit.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-10T04:46:41.770386+00:00— report_created — created