Frederic , thanks for quick reply. You are touching QOS tier.

Let us take a scenario to better understand me.  pod  A has 7000 shared as 
requests ( --cpu-shares) but no limits. Pod B has 1000 shares as requests and 
3000 as limits. In CPU contention situation, how scheduling and QOS works in 
Kubernet world?

Will Pod A get more CPU time then Pod B? or POD B get its guaranteed cpu slices 
first before CPU scheduling pod A since it doesn’t have limits?


--
Srinivas Kotaru
From: Frederic Giloux <[email protected]>
Date: Thursday, March 22, 2018 at 9:22 AM
To: Srinivas Naga Kotaru <[email protected]>
Cc: users <[email protected]>
Subject: Re: Limits for CPU worth? Vs benefits

Hi Srinivas,
here are a couple of scenarios where I find setting limits useful:
- When I do performance tests and want to compare results between runs, setting 
CPU limits=CPU requests give me confidence that the CPU cycles available 
between the runs were more or less the same. If you don't set a limit or have a 
higher limit anything between the two values is best effort and depend on what 
is happening on the node, including resources consumed by other pods.
- You may also set CPU limits when you want to differentiate between 
applications that are able to consume the "extra" CPU cycles, the ones that 
haven't been "requested". Or you may want to limit how much "extra" these 
applications can get. An example is batch processing, which can use lots of CPU 
cycles but you may not mind it to finish a bit earlier or later.
I hope this helps.
Regards,
Frédéric

On Thu, Mar 22, 2018 at 4:59 PM, Srinivas Naga Kotaru (skotaru) 
<[email protected]<mailto:[email protected]>> wrote:
CPU requests enforced using shares. Even in contention situation, kernel still 
scheduling based on shares and depending on shares, pods getting their own 
shares and never lead to cpu bottleneck or high load on the nodes. Basically it 
never cause noise Neighbour problem.

I understand cpu limits enforced using cpu quota and helps throttling.

Question or argument is do we still need when cpu shares already doing their 
job well both non-contention and contention situation? What extra benefits it 
bringing?

Need some clarity for in the context of noise neighbors problem and prevent 
node going down or prevent one or few bad pods disturbing every pod in node?

Basically looking for what is benefit of having or not having cpu limits for 
pods ?

Sent from my iPhone

_______________________________________________
users mailing list
[email protected]<mailto:[email protected]>
http://lists.openshift.redhat.com/openshiftmm/listinfo/users



--
Frédéric Giloux
Principal App Dev Consultant
Red Hat Germany

[email protected]<mailto:[email protected]>     M: 
+49-174-172-4661<tel:+49-174-172-4661>

redhat.com<http://edhat.com> | TRIED. TESTED. TRUSTED. | 
redhat.com/trusted<http://redhat.com/trusted>
________________________________________________________________________
Red Hat GmbH, http://www.de.redhat.com/ Sitz: Grasbrunn,
Handelsregister: Amtsgericht München, HRB 153243
Geschäftsführer: Paul Argiry, Charles Cachera, Michael Cunningham, Michael 
O'Neill
_______________________________________________
users mailing list
[email protected]
http://lists.openshift.redhat.com/openshiftmm/listinfo/users

Reply via email to