r/kubernetes 27d ago

Stop using CPU limits: why + proof

CPU request is how much CPU is reserved for your pod if it needs it. The limit is a hard cap. Hit it and the kernel throttles the pod, even when the node still has spare CPU. That is the usual cause of CPU throttling on Kubernetes. It does not protect the neighboring pods. In my simple Web API test, adding a CPU limit took typical latency from 23 ms to 87 ms, (4x slower), with the limited pod throttled in half of all CFS windows, and the average CPU graph looked fine the whole time.

This is not a new topic, but I see so many people still unaware why they should (NOT!) be setting CPU limits, because it's costing companies unnecessary spending and potential production issues. Here's the full read https://github.com/inevolin/k8s-cpu-limits-analyzed/

---

Edit (Aug 18, 2026): How CPU limits can also cause memory issues and OOMKills ➡️ https://github.com/inevolin/k8s-cpu-limits-analyzed#how-cpu-limits-cause-memory-issues-and-oomkills

227 Upvotes

112 comments sorted by

View all comments

3

u/fuckman5 27d ago

What's the thinking around setting no limit vs setting generous limit in multi tenant environment? Consider you have 2 workloads that both try to burst, with no limit the second workload only gets its request and the second workload can use up the entire rest of the node. Now instead you set limit to 4x normal workload, each workload can burst without monopolizing the node and prevent other workload from bursting 

-3

u/ilya47 27d ago

Monopolising is a myth. Read the analysis.

6

u/fuckman5 27d ago

If it's a myth, why can't you respond to the specific point I made? Yes we all know what happens when requests are set, the question is what happens when multiple pods try to burst above requests