1.2. Argo CD インスタンスを使用してクラスタースコープのリソースの管理
Argo CD インスタンスのアクセス許可をクラスタースコープの権限を昇格させないでください。ただし、それを必要とする特殊なユースケースがない限りです。cluster-admin
権限を持つユーザーのみが、昇格したインスタンスを管理する必要があります。クラスタースコープのインスタンスの namespace にアクセスできるユーザーであれば誰でも、クラスター上で権限を昇格してクラスター管理者自体にすることができます。
クラスタースコープのリソースを管理するには、Red Hat OpenShift GitOps Operator の既存の Subscription
オブジェクトを更新し、Argo CD インスタンスの名前空間を spec
セクションの ARGOCD_CLUSTER_CONFIG_NAMESPACES
環境変数に追加します。
手順
-
Web コンソールの Administrator パースペクティブで、Operators
Installed Operators Red Hat OpenShift GitOps Subscription に移動します。 - Actions リストをクリックし、Edit Subscription をクリックします。
openshift-gitops-operator サブスクリプションの詳細ページの YAML タブで、Argo CD インスタンスの namespace を仕様セクションの
ARGOCD_CLUSTER_CONFIG_NAMESPACES
環境変数に追加して、spec
セクションのSubscription
YAML ファイルを編集します。apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: openshift-gitops-operator namespace: openshift-gitops-operator # ... spec: config: env: - name: ARGOCD_CLUSTER_CONFIG_NAMESPACES value: openshift-gitops, <list of namespaces of cluster-scoped Argo CD instances> # ...
- Save、Reload を順にクリックします。
Argo CD インスタンスがクラスタースコープのリソースを管理するクラスターロールで設定されていることを確認するには、次の手順を実行します。
-
User Management
Roles に移動し、Filter リストから Cluster-wide Roles を選択します。 Search by name フィールドを使用して、
argocd-application-controller
を検索します。Roles ページには、作成されたクラスターロールが表示されます。
ヒントあるいは、OpenShift CLI で次のコマンドを実行します。
oc auth can-i create oauth -n openshift-gitops --as system:serviceaccount:openshift-gitops:openshift-gitops-argocd-application-controller
出力
yes
は、Argo インスタンスがクラスタースコープのリソースを管理するクラスターロールで設定されていることを確認します。それ以外の場合は、設定を確認し、必要に応じて必要な手順を実行します。
-
User Management