- The version names contain alpha (e.g. v1alpha1).
- Might be buggy. Enabling the feature may expose bugs. Disabled by default.
- Support for feature may be dropped at any time without notice.
- The API may change in incompatible ways in a later software release without notice.
- Recommended for use only in short-lived testing clusters, due to increased risk of bugs and lack of long-term support.
When you run a Pod on a Node, the Pod itself takes an amount of system resources. These resources are additional to the resources needed to run the container(s) inside the Pod. Pod Overhead is a feature for accounting for the resources consumed by the pod infrastructure on top of the container requests & limits.
When Pod Overhead is enabled, the overhead is considered in addition to the sum of container resource requests when scheduling a pod. Similarly, Kubelet will include the pod overhead when sizing the pod cgroup, and when carrying out pod eviction ranking.
You need to make sure that the
PodOverhead feature gate is enabled (it is off by default) across your cluster. This means:
- in kube-schedulerControl Plane component that watches for newly created pods with no assigned node, and selects a node for them to run on.
- in kube-apiserverControl plane component that serves the Kubernetes API.
- in the kubeletAn agent that runs on each node in the cluster. It makes sure that containers are running in a pod. on each Node
- in any custom API servers that use feature gates
Note: Users who can write to RuntimeClass resources are able to have cluster-wide impact on workload performance. You can limit access to this ability using Kubernetes access controls. See Authorization Overview for more details.