1.2. 使用 Argo CD 实例管理集群范围的资源


警告

不要将 Argo CD 实例的权限提升为集群范围的,除非您具有不同的用例需要它。只有具有 cluster-admin 特权的用户才应管理您提升的实例。有权访问集群范围实例的任何人都可以提升其对集群的权限,使其具有集群管理员本身。

要管理集群范围的资源,请更新 Red Hat OpenShift GitOps Operator 的现有 Subscription 对象,并将 Argo CD 实例的命名空间添加到 spec 部分中的 ARGOCD_CLUSTER_CONFIG_NAMESPACES 环境变量中。

流程

  1. 在 Web 控制台的 Administrator 视角中,进入到 Operators Installed Operators Red Hat OpenShift GitOps Subscription
  2. 单击 Actions 列表,然后单击 Edit Subscription
  3. openshift-gitops-operator 订阅详情页面的 YAML 选项卡下,通过将 Argo CD 实例的命名空间添加到 spec 部分中的 ARGOCD_CLUSTER_CONFIG_NAMESPACES 环境变量来编辑 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>
    # ...
  4. 单击 Save and Reload
  5. 要验证 Argo CD 实例是否已配置有集群角色来管理集群范围的资源,请执行以下步骤:

    1. 导航到 User Management Roles,然后从 Filter 列表中选择 Cluster-wide Roles
    2. 使用 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 实例配置了集群角色来管理集群范围的资源。否则,检查您的配置并根据需要执行必要的步骤。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.