5.9. クラスター内のノードの特定 CPU の割り当て

静的 CPU マネージャーポリシー を使用する場合、クラスター内の特定のノードで使用できるように特定の CPU を予約できます。たとえば、24 CPU のあるシステムでは、コントロールプレーン用に 0 - 3 の番号が付けられた CPU を予約して、コンピュートノードが CPU 4 - 23 を使用できるようにすることができます。

5.9.1. ノードの CPU の予約

特定のノード用に予約される CPU の一覧を明示的に定義するには、KubeletConfig カスタムリソース (CR) を作成して reservedSystemCPUs パラメーターを定義します。この一覧は、systemReserved および kubeReserved パラメーターを使用して予約される可能性のある CPU に対して優先されます。

手順

  1. 設定する必要のあるノードタイプの Machine Config Pool (MCP) に関連付けられたラベルを取得します。

    $ oc describe machineconfigpool <name>

    以下に例を示します。

    $ oc describe machineconfigpool worker

    出力例

    Name:         worker
    Namespace:
    Labels:       machineconfiguration.openshift.io/mco-built-in=
                  pools.operator.machineconfiguration.openshift.io/worker= 1
    Annotations:  <none>
    API Version:  machineconfiguration.openshift.io/v1
    Kind:         MachineConfigPool
    ...

    1
    MCP ラベルを取得します。
  2. KubeletConfig CR の YAML ファイルを作成します。

    apiVersion: machineconfiguration.openshift.io/v1
    kind: KubeletConfig
    metadata:
      name: set-reserved-cpus 1
    spec:
      kubeletConfig:
        reservedSystemCPUs: "0,1,2,3" 2
      machineConfigPoolSelector:
        matchLabels:
          pools.operator.machineconfiguration.openshift.io/worker: "" 3
    1
    CR の名前を指定します。
    2
    MCP に関連付けられたノード用に予約する CPU のコア ID を指定します。
    3
    MCP からラベルを指定します。
  3. CR オブジェクトを作成します。

    $ oc create -f <file_name>.yaml

関連情報