1.3. 在任意命名空间中启用 ApplicationSet 资源


您可以在 hub 集群上的任何命名空间中启用 ApplicationSet 资源。

要启用 Argo CD ApplicationSet 资源,请完成以下部分:

需要的访问权限:集群管理员

要在 hub 集群上的任何命名空间中启用 Argo CD ApplicationSet 资源,请完成以下步骤:

  1. 在命令行界面中运行以下命令来克隆 GitHub 存储库:

    git clone https://github.com/stolostron/multicloud-integrations
    Copy to Clipboard Toggle word wrap
  2. 运行以下命令,进入您克隆的 GitHub 存储库:

    cd multicloud-integrations/deploy/appset-any-namespace
    Copy to Clipboard Toggle word wrap
  3. 运行以下命令,在任何命名空间中启用 ApplicationSet 资源:

     ./setup-appset-any-namespace.sh --namespace openshift-gitops --argocd-name openshift-gitops
    Copy to Clipboard Toggle word wrap
  4. 验证 OpenShift GitOps 实例是否已重启并在 hub 集群中运行。在 hub 集群中运行以下命令:

    oc get pods -n openshift-gitops
    Copy to Clipboard Toggle word wrap

Red Hat Advanced Cluster Management OpenShift GitOps 附加组件启动一个 OpenShift GitOps 实例,您可以用来在受管集群上的任意命名空间中启用 应用程序资源。要在受管集群中在任何命名空间中启用 Argo CD Application 资源,请完成以下步骤:

  1. 通过添加以下 YAML 文件示例来创建全局 ManagedClusterSetBinding 资源:

    apiVersion: apps.open-cluster-management.io/v1beta1
    apiVersion: cluster.open-cluster-management.io/v1beta2
    kind: ManagedClusterSetBinding
    metadata:
      name: global
      namespace: openshift-gitops
    spec:
      clusterSet: global
    Copy to Clipboard Toggle word wrap
  2. 运行以下命令来应用 YAML 文件示例:

    oc apply -f managedclustersetbinding-example.yaml
    Copy to Clipboard Toggle word wrap
  3. 创建一个 Placement 自定义资源,用于选择启用了gitops-short)附加组件的受管集群。添加以下 YAML 文件示例:

    apiVersion: cluster.open-cluster-management.io/v1beta1
    kind: Placement
    metadata:
      name: all-openshift-clusters
      namespace: openshift-gitops
    spec:
      tolerations:
      - key: cluster.open-cluster-management.io/unreachable
        operator: Exists
      - key: cluster.open-cluster-management.io/unavailable
        operator: Exists
      predicates:
      - requiredClusterSelector:
          labelSelector:
            matchExpressions:
            - key: vendor
              operator: "In"
              values:
              - OpenShift
    Copy to Clipboard Toggle word wrap
  4. 运行以下命令来应用 YAML 文件示例:

    oc apply -f placement-example.yaml
    Copy to Clipboard Toggle word wrap
  5. 创建 GitOpsCluster 资源并添加 gitopsAddon 规格。您的 YAML 文件可能类似以下示例:

    apiVersion: apps.open-cluster-management.io/v1beta1
    kind: GitOpsCluster
    metadata:
      name: argo-acm-importer
      namespace: openshift-gitops
    spec:
      argoServer:
        cluster: notused
        argoNamespace: openshift-gitops
      placementRef:
        kind: Placement
        apiVersion: cluster.open-cluster-management.io/v1beta1
        name: all-openshift-clusters
        namespace: openshift-gitops
      gitopsAddon:
        enabled: true
        overrideExistingConfigs: true
        reconcileScope: All-Namespaces
    Copy to Clipboard Toggle word wrap
  6. 运行以下命令来应用 YAML 文件示例:

    oc apply -f gitopscluster-example.yaml
    Copy to Clipboard Toggle word wrap
  7. 在受管集群中运行以下命令来验证 OpenShift GitOps 实例是否已重启并在受管集群中运行:

    oc get pods -n openshift-gitops
    Copy to Clipboard Toggle word wrap

其他资源

通过部署 Argo CD ApplicationSet 资源继续完全管理 Argo CD ApplicationSet 资源。有关方向,请参阅为 pull 模型在任何命名空间中部署 Argo CD ApplicationSet 资源(技术预览)。

要了解更多有关 Argo CD ApplicationSet 资源的信息,请参阅以下资源:

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat