5.5. Argo CD インスタンスのセットアップ

デフォルトでは、Red Hat OpenShift GitOps は Argo CD のインスタンスを openshift-gitops namespace にインストールし、特定のクラスタースコープのリソースを管理するための追加のアクセス許可を使用します。クラスター設定を管理したり、アプリケーションをデプロイメントしたりするために、新しい Argo CD インスタンスをインストールしてデプロイメントできます。デフォルトでは、新しいインスタンスには、デプロイされた namespace でのみリソースを管理する権限があります。

5.5.1. Argo CD のインストール

クラスター設定を管理したり、アプリケーションをデプロイメントしたりするために、新しい Argo CD インスタンスをインストールしてデプロイメントできます。

手順

  1. OpenShift Container Platform Web コンソールにログインします。
  2. OperatorsInstalled Operators をクリックします。
  3. Project ドロップダウンメニューから Argo CD インスタンスをインストールするプロジェクトを作成または選択します。
  4. インストールした Operator から OpenShift GitOps Operator を選択し、Argo CD タブを選択します。
  5. Create をクリックして、パラメーターを設定します。

    1. インスタンスの Name を入力します。デフォルトでは、Nameargocd に設定されています。
    2. 外部 OS ルートを作成して Argo CD サーバーにアクセスします。ServerRoute をクリックし、Enabled にチェックを入れます。
  6. Argo CD Web UI を開くには、Argo CD インスタンスがインストールされているプロジェクトで Networking → Routes → <instance name>-server に移動して、ルートをクリックします。

5.5.2. Argo CD サーバーとレポサーバーのレプリカを有効にする

Argo CD-server と Argo CD-repo-server のワークロードはステートレスです。ワークロードを Pod 間でより適切に分散するには、Argo CD サーバーと Argo CD リポジトリーサーバーのレプリカの数を増やすことができます。ただし、Argo CD サーバーで水平オートスケーラーが有効になっている場合は、設定したレプリカの数が上書きされます。

手順

  • reposerver スペックの replicas パラメーターを、実行するレプリカの数に設定します。

    Argo CD カスタムリソースの例

    apiVersion: argoproj.io/v1alpha1
    kind: ArgoCD
    metadata:
      name: example-argocd
      labels:
        example: repo
    spec:
      repo:
        replicas: <number_of_replicas>
      server:
        replicas: <number_of_replicas>
        route:
          enabled: true
          path: /
          tls:
            insecureEdgeTerminationPolicy: Redirect
            termination: passthrough
          wildcardPolicy: None

5.5.3. 別の namespace へのリソースのデプロイ

Argo CD がインストール先以外の namespace のリソースを管理できるようにするには、対象の namespace に argocd.argoproj.io/managed-by ラベルを設定します。

手順

  • namespace を設定します。

    $ oc label namespace <namespace> \
    argocd.argoproj.io/managed-by=<instance_name> 1
    1
    Argo CD がインストールされている namespace 。