1.2. 在非 control plane 命名空间中启用应用程序设置资源
作为集群管理员,您可以定义一组特定的非 control plane 命名空间,用户可以在其中创建、更新和协调 ApplicationSet
资源。您必须根据要求明确启用并配置 ArgoCD
和 ApplicationSet
自定义资源(CR)。
流程
将
applicationSet
spec 的sourceNamespaces
参数设置为包含非 control plane 命名空间:Argo CD 自定义资源示例
apiVersion: argoproj.io/v1beta1 kind: ArgoCD metadata: name: example namespace: spring-petclinic spec: applicationSet: sourceNamespaces: 1 - dev 2
注意目前,
.spec.applicationSet.sourceNamespaces
字段不支持使用通配符(*
)。验证 GitOps Operator 是否创建或修改以下基于角色的访问控制(RBAC)资源:
Name Kind 用途 <argocd_name>-<argocd_namespace>-argocd-applicationset-controller
ClusterRole
和ClusterRoleBinding
对于 Argo CD ApplicationSet Controller,以观察和列出集群级别的
ApplicationSet
资源<argocd_name>-<argocd_namespace>-applicationset
Role
和RoleBinding
对于 Argo CD ApplicationSet Controller,以管理目标命名空间中的
ApplicationSet
资源<argocd_name>-<target_namespace>
Role
和RoleBinding
要使 Argo CD 服务器通过 UI、API 或 CLI 管理目标命名空间中的
ApplicationSet
资源注意Operator 将
argocd.argoproj.io/applicationset-managed-by-cluster-argocd
标签添加到目标命名空间。