docs/doc/source/admintasks/kubernetes-cpu-manager-policies.rst
Juanita-Balaraj 0c4aa91ca4 Updated Patch Set 5 to include review comments
Changed name of file to:
admin-application-commands-and-helm-overrides.rst

Updated Strings.txt

Updated formatting issues:
installing-and-running-cpu-manager-for-kubernetes.rst

Updated Patch Set 4 to include review comments

Admin Tasks Updated

Changed name of include file to:
isolating-cpu-cores-to-enhance-application-performance.rest

Change-Id: I0b354dda3c7f66da3a5d430839b5007a6a19cfad
Signed-off-by: Juanita-Balaraj <juanita.balaraj@windriver.com>
Signed-off-by: Stone <ronald.stone@windriver.com>
Signed-off-by: Juanita-Balaraj <juanita.balaraj@windriver.com>
2021-01-11 23:40:36 -05:00

2.4 KiB

Kubernetes CPU Manager Policies

You can apply the kube-cpu-mgr-policy host label from the Horizon Web interface or the CLI to set the Kubernetes CPU Manager policy.

The kube-cpu-mgr-policy host label supports the values none and static.

Setting either of these values results in kubelet on the host being configured with the policy of the same name as described at https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies, but with the following differences:

Static policy customizations

  • Pods in the kube-system namespace are affined to platform cores only. Other pod containers (hosted applications) are restricted to running on either the application or isolated cores. CFS quota throttling for Guaranteed QoS pods is disabled.
  • When using the static policy, improved performance can be achieved if one also uses the Isolated CPU behavior as described at Isolating CPU Cores to Enhance Application Performance <isolating-cpu-cores-to-enhance-application-performance>.
  • For Kubernetes pods with a Guaranteed QoS (see https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/ for background information), CFS quota throttling is disabled as it causes performance degradation.
  • Kubernetes pods are prevented by default from running on CPUs with an assigned function of Platform. In contrast, pods in the kube-system namespace are affined to run on Platform CPUs by default. This assumes that the number of platform CPUs is sufficiently large to handle the workload. These two changes further ensure that low-latency applications are not interrupted by housekeeping tasks.

Limitations

recommends using the static policy.