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