1.11. ArgoCD エージェントを伴う Red Hat OpenShift GitOps アドオンを有効にする
プルモデルの Agent モードは、OpenShift GitOps アドオンを、ArgoCD エージェントを伴う Advanced プルモデル向けに有効化し、アプリケーションの健全性について詳細なステータスを取得できるようにします。この Agent モードは、ネットワーク制限やセキュリティー要件が強化されている環境、またはアプリケーション配信にプルモデルを実装する場合に使用します。高度なプルモデルは ArgoCD エージェントによって実行され、完全に自動化された OpenShift GitOps エクスペリエンスを提供します。
ArgoCD エージェントで OpenShift GitOps アドオンを有効にするには、次のセクションを完了します。
前提条件
- Red Hat Advanced Cluster Management ハブクラスターがインストールされている。
- Red Hat Advanced Cluster Management に登録されたマネージドクラスター
- ハブクラスターにインストールされた OpenShift GitOps Operator
-
ターゲットマネージドクラスターを選択するための
Placementリソース -
ターゲット namespace にバインドされた
ManagedClusterSet -
ArgoCDエージェント環境で設定された OpenShift GitOps Operator サブスクリプション -
Agentモード用に設定されたArgoCDカスタムリソース
1.11.1. サブスクリプションとリソースの設定 リンクのコピーリンクがクリップボードにコピーされました!
ArgoCD エージェントを有効にするには、OpenShift GitOps Operator のサブスクリプションと ArgoCD カスタムリソースを設定する必要があります。必要なサブスクリプションとリソースを設定するには、次の手順を実行します。
ハブクラスターでのみ、次のコマンドを実行して、OpenShift GitOps Operator サブスクリプションを変更し、必要な環境変数を含めます。
oc edit subscription gitops-operator -n openshift-gitops-operator
oc edit subscription gitops-operator -n openshift-gitops-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の YAML サンプルを追加して、次の環境変数を
spec.config.envファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の YAML サンプルを追加して、既存の
ArgoCDカスタムリソースを互換性のあるAgentモード設定に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、YAML サンプルを適用します。
oc apply -f argocd-example.yaml
oc apply -f argocd-example.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
注記: ハブクラスターのみで、この設定により従来の
ArgoCDコントローラーが無効になり、相互 TLS 認証を使用したエージェントプリンシパルが有効になります。
-
注記: ハブクラスターのみで、この設定により従来の
1.11.2. ArgoCD エージェントの有効化 リンクのコピーリンクがクリップボードにコピーされました!
ArgoCD エージェントアドオンのデプロイメントを管理するための GitOpsCluster リソースを作成します。コントローラーは、Placement によって選択された各マネージドクラスターに対して、以下のリソースを自動的に作成します。
GitOpsCluster コントローラーは、次の操作を実行します。
- PKI 管理を作成して自動化する
-
エージェントモード用に設定された
ArgoCDクラスターシークレットを作成する - 選択された各マネージドクラスターに Argo CD Agent をデプロイする
高度なプルモデル Argo CD Agent アーキテクチャーを有効にするには、次の手順を実行します。
マネージドクラスターで、次の YAML サンプルを追加して、
ArgoCDエージェントが有効になっているGitOpsCluster`リソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、YAML サンプルを適用します。
oc apply -f gitopscluster-example.yaml
oc apply -f gitopscluster-example.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.11.3. ArgoCD のインストールの検証 リンクのコピーリンクがクリップボードにコピーされました!
ArgoCD エージェントが正常にデプロイされたら、ハブクラスターにアプリケーションを作成し、それがマネージドクラスターで動作することを確認することで、高度な Pull Model ワークフローが完了したことを確認します。
正常なデプロイメントに必要なインストールとリソースを確認するには、次の手順を実行します。
次のコマンドを実行して、特定の
Agent条件のGitOpsClusterステータスを確認します。oc get gitopscluster gitops-agent-clusters -n openshift-gitops -o jsonpath='{.status.conditions}' | jqoc get gitopscluster gitops-agent-clusters -n openshift-gitops -o jsonpath='{.status.conditions}' | jqCopy to Clipboard Copied! Toggle word wrap Toggle overflow ステータスに次の条件タイプが表示されていることを確認します。
-
Ready:GitOpsClusterの準備が完了し、すべてのコンポーネントが機能しています。 -
PlacementResolved:Placement参照が解決され、マネージドクラスターが取得済みです。 -
ClustersRegistered: マネージドクラスターがArgoCDサーバーに正常に登録されています。 -
AddOnDeploymentConfigsReady: すべてのマネージドクラスターに対してAddOnDeploymentConfigsが作成済みです。 -
ManagedClusterAddOnsReady:ManagedClusterAddonsは、マネージドクラスターを作成および更新します。 -
AddOnTemplateReady:ArgoCDエージェントモード用に作成された動的AddOnTemplate。 -
ArgoCDAgentPrereqsReady: エージェントの前提条件がセットアップされています。 -
CertificatesReady: TLS 証明書が署名されています。 -
ManifestWorksApplied: マネージドクラスターに伝播された CA 証明書。
-
次の YAML ファイルを追加して、マネージドクラスター namespace に
ArgoCDアプリケーションリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、YAML サンプルを適用します。
oc apply -f application-example.yaml
oc apply -f application-example.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターで、次のコマンドを実行して、アプリケーションリソースがデプロイされていることを確認します。
oc get all -n guestbook
oc get all -n guestbookCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハブクラスターで次のコマンドを実行して、アプリケーションステータスが反映されていることを確認します。
oc get application guestbook -n <managed cluster name>
oc get application guestbook -n <managed cluster name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
アプリケーションが正常にデプロイされたら、ステータスが
Syncedと表示されていることを確認します。
関連情報
Red Hat OpenShift GitOps アドオンの管理 を完了して、OpenShift GitOps アドオンのセットアップを続行します。