In Kubernetes terms, cluster operators that want to restrict the amount of resources a single container or pod may consume are able to define allowable ranges per Kubernetes namespace. In the absence of any explicit assignments, the Kubernetes system is able to apply default resource limits and requests if desired in order to constrain the amount of resource a pod consumes on a node.
By default, pods run with unbounded CPU and memory limits. This means that any pod in the system will be able to consume as much CPU and memory on the node that executes the pod.
Users may want to impose restrictions on the amount of resources a single pod in the system may consume for a variety of reasons. In general, users may:
- configure default memory requests and limits for a namespace
- configure default CPU requests and limits for a namespace
- configure minimum and maximum memory constraints for a namespace
- configure minimum and maximum CPU constraints for a namespace
- configure memory and CPU quotas for a namespace
- configure a pod quota for a namespace
Many thanks Boris Zaikin and Densify 🇨🇦 team for their contribution to community (Boris's article on Dev.to is here)! Canadian guys wrote some good examples in the blog.
Photo by Glasscon of Germany.
Top comments (0)