×

默认情况下,Argo Rollouts 支持 Argo Rollouts 自定义资源 (CR) 的集群范围安装模式。此安装模式使用CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量来指定可用于管理 rollout 资源的命名空间列表。

要在集群上安装 Red Hat OpenShift GitOps Operator 后管理 Argo Rollouts 资源,您可以在您选择的命名空间中创建和配置RolloutManager自定义资源 (CR) 实例。然后,您可以更新 Red Hat OpenShift GitOps Operator 的现有Subscription对象,并将用户定义的命名空间添加到 Argo CD 实例的spec部分中的CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量中。

先决条件

  • 您已以管理员身份登录到 OpenShift Container Platform 集群。

  • 您已在 OpenShift Container Platform 集群上安装了 Red Hat OpenShift GitOps Operator。

  • 您已创建了RolloutManager自定义资源。

配置集群范围的 Argo Rollouts 实例以管理 rollout 资源

要配置用于管理 rollout 资源的集群范围 Argo Rollouts 实例,请在Subscription资源中添加CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量。此变量包含可为集群范围的 Argo Rollouts 安装配置的用户定义命名空间列表。如果CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量为空,则可以在openshift-gitops命名空间中创建集群范围的 Argo Rollouts 安装。

只有在NAMESPACE_SCOPED_ARGO_ROLLOUTS变量设置为false时,才能创建集群范围的 Argo Rollouts 实例。默认情况下,如果未定义NAMESPACE_SCOPED_ARGO_ROLLOUTS变量,则将其设置为false

步骤
  1. 在 Web 控制台的**管理员**视角中,导航到**Operators** → **已安装的 Operators** → **Red Hat OpenShift GitOps** → **Subscription**。

  2. 单击**操作**列表,然后单击**编辑订阅**。

  3. 在**openshift-gitops-operator**订阅详情页面,在**YAML**选项卡下,编辑Subscription YAML 文件。在spec 部分的CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量中添加 Argo CD 实例的命名空间。

    配置CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES环境变量示例
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: openshift-gitops-operator
    spec:
      config:
       env:
        - name: NAMESPACE_SCOPED_ARGO_ROLLOUTS
          value: 'false' (1)
        - name: CLUSTER_SCOPED_ARGO_ROLLOUTS_NAMESPACES
          value: <list_of_namespaces_in_the_cluster-scoped_Argo_CD_instances> (2)
     ...
    1 指定此值以启用或禁用集群范围安装。如果该值设置为'false',则表示已启用集群范围安装。如果设置为'true',则表示已启用命名空间范围安装。如果该值为空,则默认为false
    2 指定可以托管集群范围 Argo Rollouts 实例的命名空间的逗号分隔列表,例如test-123-cluster-scoped,test-456-cluster-scoped
  4. 点击**保存**和**重新加载**。