1.2. autotls を有効にして Redis の TLS を設定する
新規または既存の Argo CD インスタンスで autotls 設定を有効にすることで、Redis の TLS 暗号化を設定できます。この設定では 、argocd-operator-redis-tls シークレットが自動的にプロビジョニングされるため、それ以上の手順は必要ありません。現時点で、OpenShift Container Platform は唯一サポートされているシークレットプロバイダーです。
デフォルトでは、autotls 設定は無効になっています。
手順
- OpenShift Container Platform Web コンソールにログインします。
autotlsを有効にして Argo CD インスタンスを作成します。-
Web コンソールの Administrator パースペクティブで、左側のナビゲーションパネルを使用して、Administration
CustomResourceDefinitions に移動します。 -
argocds.argoproj.ioを検索し、ArgoCDカスタムリソース定義 (CRD) をクリックします。 - CustomResourceDefinition の詳細 ページで、Instances タブをクリックし、Create ArgoCD をクリックします。
次の例のように YAML を編集または置換します。
autotls を有効にした Argo CD CR の例
apiVersion: argoproj.io/v1beta1 kind: ArgoCD metadata: name: argocd1 namespace: openshift-gitops2 spec: redis: autotls: openshift3 ha: enabled: true4 ヒントあるいは、次のコマンドを実行して、既存の Argo CD インスタンスで
autotlsに設定を有効にすることもできます。$ oc patch argocds.argoproj.io <instance-name> --type=merge -p '{"spec":{"redis":{"autotls":"openshift"}}}'- Create をクリックします。
Argo CD Pod が準備ができており、実行中であることを確認します。
$ oc get pods -n <namespace>1 - 1
- Argo CD インスタンスが実行されている namespace (例:
openshift-gitops)を指定します。
HA を無効にした場合の出力例
NAME READY STATUS RESTARTS AGE argocd-application-controller-0 1/1 Running 0 26s argocd-redis-84b77d4f58-vp6zm 1/1 Running 0 37s argocd-repo-server-5b959b57f4-znxjq 1/1 Running 0 37s argocd-server-6b8787d686-wv9zh 1/1 Running 0 37s注記HA 対応の TLS 設定には、少なくとも 3 つのワーカーノードを備えたクラスターが必要です。HA 設定で Argo CD インスタンスを有効にしている場合、出力が表示されるまでに数分かかることがあります。
HA を有効にした場合の出力例
NAME READY STATUS RESTARTS AGE argocd-application-controller-0 1/1 Running 0 10m argocd-redis-ha-haproxy-669757fdb7-5xg8h 1/1 Running 0 10m argocd-redis-ha-server-0 2/2 Running 0 9m9s argocd-redis-ha-server-1 2/2 Running 0 98s argocd-redis-ha-server-2 2/2 Running 0 53s argocd-repo-server-576499d46d-8hgbh 1/1 Running 0 10m argocd-server-9486f88b7-dk2ks 1/1 Running 0 10m
-
Web コンソールの Administrator パースペクティブで、左側のナビゲーションパネルを使用して、Administration
argocd-operator-redis-tlsシークレットが作成されていることを確認します。$ oc get secrets argocd-operator-redis-tls -n <namespace>1 - 1
- Argo CD インスタンスが実行されている namespace (例:
openshift-gitops)を指定します。
出力例
NAME TYPE DATA AGE argocd-operator-redis-tls kubernetes.io/tls 2 30sシークレットは
kubernetes.io/tlsタイプで、サイズが2である必要があります。