kubernetes node shows limit, but no limit set

7/12/2019

i have not configured any rangelimit or pod limit but my nodes show requests and limits, is that a limit? or the max-seen value?

having around 20 active nodes all of them are the same hardware size - but each node shows diffrent limit with kubctl describe node nodeXX

does that mean i cannot use more than the limit?

usage

cli

-- Helmut Januschka
kubernetes

1 Answer

7/12/2019

If you check the result of kubectl describe node nodeXX again more carefully you can see that each pod has the columns: CPU Requests, CPU Limits, Memory Requests and Memory Limits. The total Requests and Limits as shown in your screenshot should be the sum of your pods requests and limits.
If you haven't configured limits for your pods then they will have 0%. However I can see in your screenshot that you have a node-exporter pod on your node. You probably also have pods in the kube-system namespace that you haven't scheduled yourself but are essential for kubernetes to work.

About your question:

does that mean i cannot use more than the limit

This article is great at explaining about requests and limits:

Requests are what the container is guaranteed to get. If a container requests a resource, Kubernetes will only schedule it on a node that can give it that resource.

Limits, on the other hand, make sure a container never goes above a certain value. The container is only allowed to go up to the limit, and then it is restricted.

For example: if your pod requests 1000Mi of memory and your node only has 500Mi of requested memory left, the pod will never be scheduled. If your pod requests 300Mi and has a limit of 1000Mi it will be scheduled, and kubernetes will try to not allocate more than 1000Mi of memory to it.

It may be OK to surpass 100% limit, specially in development environments, where we trade performance for capacity. Example:

enter image description here

-- victortv
Source: StackOverflow