Is there a default memory request and\or limits for pods\containers in k8s? [closed] Is there a default memory request and\or limits for pods\containers in k8s? [closed] kubernetes kubernetes

Is there a default memory request and\or limits for pods\containers in k8s? [closed]


By default there are no resource requests or limits, which means every pod is created using BestEffort QoS. If you want to configure default values for requests and limits you should make use of LimitRange.

BestEffort pods by definition is "for a Pod to be given a QoS class of BestEffort, the Containers in the Pod must not have any memory or CPU limits or requests." BestEffort pods have the lowest priority for Kubernetes scheduler and can be evicted in case of resource contention

All above said is true for all Kubernetes distributions including OpenShift.


There isn't a default limit or request.In order to configure default resources you should create a LimitRange resource as described here: https://docs.openshift.com/container-platform/3.11/dev_guide/compute_resources.html#dev-viewing-limit-ranges

If you want every new project to be created with certain resources limits you can modify the default project template as described here: https://docs.openshift.com/container-platform/3.11/admin_guide/managing_projects.html#modifying-the-template-for-new-projects

This doesn't change in 4.6 as well, only the implementation of how to modify the LimitRange or default project template. (The methodology is exactly the same)

As for your question of predicting resources of applications, there are some players around this issue. I've only heard about turbonomic which can even change your Deployments resources automatically by utilization and maybe also some custom metrics.