5.6.5.3. カスタマイズされたマシン設定プールを使用するときに修復を適用する
カスタム MachineConfigPool を作成するときは、MachineConfigPool にラベルを追加して、KubeletConfig に存在する machineConfigPoolSelector がそのラベルを MachineConfigPool と一致させることができるようにします。
KubeletConfig ファイルでは、protectKernelDefaults: false を設定しないでください。Compliance Operator が修復の適用を完了した後、MachineConfigPool オブジェクトが予期せず一時停止解除に失敗する可能性があるためです。
手順
ノードを一覧表示します。
$ oc get nodes -n openshift-compliance出力例
NAME STATUS ROLES AGE VERSION ip-10-0-128-92.us-east-2.compute.internal Ready master 5h21m v1.33.4 ip-10-0-158-32.us-east-2.compute.internal Ready worker 5h17m v1.33.4 ip-10-0-166-81.us-east-2.compute.internal Ready worker 5h17m v1.33.4 ip-10-0-171-170.us-east-2.compute.internal Ready master 5h21m v1.33.4 ip-10-0-197-35.us-east-2.compute.internal Ready master 5h22m v1.33.4ノードにラベルを追加します。
$ oc -n openshift-compliance \ label node ip-10-0-166-81.us-east-2.compute.internal \ node-role.kubernetes.io/<machine_config_pool_name>=出力例
node/ip-10-0-166-81.us-east-2.compute.internal labeledカスタム
MachineConfigPoolCR を作成します。apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfigPool metadata: name: <machine_config_pool_name> labels: pools.operator.machineconfiguration.openshift.io/<machine_config_pool_name>: ''1 spec: machineConfigSelector: matchExpressions: - {key: machineconfiguration.openshift.io/role, operator: In, values: [worker,<machine_config_pool_name>]} nodeSelector: matchLabels: node-role.kubernetes.io/<machine_config_pool_name>: ""- 1
labelsフィールドは、マシン設定プール (MCP) に追加するラベル名を定義します。
MCP が正常に作成されたことを確認します。
$ oc get mcp -w