Struggling to understand if Guaranteed
Qos class (by same limits and requests) behavior for CPU, would actually Guarantee my pods get the requested CPU when they ask for it , even if a noisy neighbour with Burstable
Qos is using more CPU then available for both Guaranteed
and Burstable
pods.
Consider the following (simplfied) scenario:
Node has 2 CPU and 2 scheduled pods:
1 pod with
Burstable
requests 1 CPU limit 2 CPU1 pod with
Guaranteed
requests 1 CPU Limit 1 CPU
Now consider that the Guaranteed
pod is currently using 0.6 cpu (by the language runtime inside the container) and the burstable
pod bursts to use 1.4 CPU.
What happens when the guaranteed pod needs more CPU? Would it get the extra CPU while the burstable
one be throttled?
- Or would it be throttled?
- It won't be allowed to the to 1.4 because the "requested" cpu is reserved even if not in actual use?
- the
Guaranteed
pod won't get the CPU it needs now?