1.4. クラスターレベルでの Argo CD インスタンスの実行
Red Hat OpenShift GitOps Operator によってインストールされるデフォルトの Argo CD インスタンスおよび付随するコントローラーは、単純な設定の切り替えを設定して、クラスターのインフラストラクチャーノードで実行できるようになりました。
手順
既存のノードにラベルを付けます。
oc label node <node-name> node-role.kubernetes.io/infra=""
$ oc label node <node-name> node-role.kubernetes.io/infra=""Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 必要な場合は、テイントを適用し、インフラストラクチャーノードでワークロードを分離し、他のワークロードがそれらのノードでスケジュールされないようにすることもできます。
oc adm taint nodes -l node-role.kubernetes.io/infra \ infra=reserved:NoSchedule infra=reserved:NoExecute
$ oc adm taint nodes -l node-role.kubernetes.io/infra \ infra=reserved:NoSchedule infra=reserved:NoExecuteCopy to Clipboard Copied! Toggle word wrap Toggle overflow GitOpsServiceカスタムリソースにrunOnInfraトグルを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: テイントがノードに追加された場合は、
tolerationsをGitOpsServiceカスタムリソースに追加します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
コンソール UI の Pod を Pods
Pod details で表示して、 openshift-gitopsnamespace のワークロードがインフラストラクチャーノードでスケジュールされていることを確認します。
デフォルトの Argo CD カスタムリソースに手動で追加された nodeSelectors および tolerations は、GitOpsService カスタムリソースのトグルおよび tolerations によって上書きされます。