A water-utility container shows CPU throttling metrics even though the node still has spare CPU. What is the most likely cause?
Select an answer to reveal the explanation.
Short Explanation
Limits are a personal speed limit. Even on an empty highway, a tiny CPU limit still puts the throttle on that container.
Full Explanation
CPU limits are enforced by the container runtime through CFS quota throttling even when the worker node still has spare cycles. If a water-utility container shows CPU throttling metrics while the node is otherwise idle, the most likely cause is that the container’s CPU limit is set too low—its personal speed limit—regardless of unused node capacity on the highway beside it. Disabled ServiceAccount token projection is an identity and projected-volume concern; it does not produce CPU throttling metrics on an otherwise running container. A CNI plugin assigning duplicate pod IPs would present as networking failures and identity confusion, not as classic CPU throttle counters while spare node CPU remains. etcd compaction not having run for thirty days is a control-plane maintenance concern and does not cause worker-container CPU throttling. Exam caveat: Throttling often looks like mysterious application slowness without restarts—inspect throttling metrics and compare the limit to actual usage before blaming the application code alone. Operational check: Compare container CPU usage against its limit, raise the limit based on observed need, roll the utility Deployment, and confirm throttle metrics drop as spare node CPU is used productively.