8.5.3.5. 使用 CPU CFS 配额禁用或强制实施 CPU 限制
您可以为机器配置池中的节点禁用 CPU 限值的默认强制。
默认情况下,节点使用 Linux 内核中完全公平调度程序(CFS)配额支持来强制实施指定的 CPU 限值。
如果禁用了 CPU 限制强制实施,了解其对节点的影响非常重要:
- 如果容器有 CPU 请求,则请求仍由 Linux 内核中的 CFS 共享来实施。
- 如果容器没有 CPU 请求,但没有 CPU 限制,则 CPU 请求默认为指定的 CPU 限值,并由 Linux 内核中的 CFS 共享强制。
- 如果容器同时具有 CPU 请求和限制,则 CPU 请求由 Linux 内核中的 CFS 共享强制实施,且 CPU 限制不会对节点产生影响。
先决条件
-
对于您要配置的节点类型,您有与静态
MachineConfigPoolCRD 关联的标签。
流程
为配置更改创建自定义资源 (CR)。
禁用 CPU 限制的示例配置
apiVersion: machineconfiguration.openshift.io/v1 kind: KubeletConfig metadata: name: disable-cpu-units spec: machineConfigPoolSelector: matchLabels: pools.operator.machineconfiguration.openshift.io/worker: "" kubeletConfig: cpuCfsQuota: false其中:
metadata.name- 为 CR 指定名称。
spec.machineConfigPoolSelector.matchLabels- 指定机器配置池中的标签。
spec.kubeletConfig.cpuCfsQuota-
将
cpuCfsQuota参数指定为false。
运行以下命令来创建 CR:
$ oc create -f <file_name>.yaml