8.2. 使用 siteConfig 过滤器过滤自定义资源


通过使用过滤器,您可以轻松地自定义 SiteConfig 自定义资源 (CR),使其包含或排除其他 CR,以便在 GitOps Zero Touch Provisioning (ZTP) 管道的安装阶段使用。

您可以为 SiteConfig CR 指定一个 inclusionDefault 值(includeexclude),以及您要包含或排除的特定 extraManifest RAN CR 列表。将 inclusionDefault 设置为 include 可使 GitOps ZTP 管道在安装过程中应用 /source-crs/extra-manifest 中的所有文件。将 includeDefault 设置为 exclude 的作用相反。

您可以从 /source-crs/extra-manifest 文件夹中排除默认会被包括的 CR。以下示例配置了自定义单节点 OpenShift SiteConfig CR,以在安装时排除 /source-crs/extra-manifest/03-sctp-machine-config-worker.yaml CR。

另外还介绍了一些额外的可选过滤场景。

先决条件

  • 配置了 hub 集群来生成所需的安装和策略 CR。
  • 您创建了 Git 存储库,用于管理自定义站点配置数据。该存储库必须可从 hub 集群访问,并定义为 Argo CD 应用程序的源仓库。

流程

  1. 要防止 GitOps ZTP 管道应用 03-sctp-machine-config-worker.yaml CR 文件,请在 SiteConfig CR 中应用以下 YAML:

    apiVersion: ran.openshift.io/v1
    kind: SiteConfig
    metadata:
      name: "site1-sno-du"
      namespace: "site1-sno-du"
    spec:
      baseDomain: "example.com"
      pullSecretRef:
        name: "assisted-deployment-pull-secret"
      clusterImageSetNameRef: "openshift-4.16"
      sshPublicKey: "<ssh_public_key>"
      clusters:
    - clusterName: "site1-sno-du"
      extraManifests:
        filter:
          exclude:
            - 03-sctp-machine-config-worker.yaml
    Copy to Clipboard Toggle word wrap

    GitOps ZTP 管道在安装过程中跳过 03-sctp-machine-config-worker.yaml CR。应用 /source-crs/extra-manifest 中的所有其他 CR。

  2. 保存 SiteConfig CR,并将更改推送到站点配置存储库。

    GitOps ZTP 管道监控并调整根据 SiteConfig 过滤器指令所应用的 CR。

  3. 可选: 要防止 GitOps ZTP 管道在集群中应用所有 /source-crs/extra-manifest CR,请在 SiteConfig CR 中应用以下 YAML:

    - clusterName: "site1-sno-du"
      extraManifests:
        filter:
          inclusionDefault: exclude
    Copy to Clipboard Toggle word wrap
  4. 可选: 要排除所有 /source-crs/extra-manifest RAN CR,并在安装过程中包括自定义 CR 文件,编辑自定义 SiteConfig CR 来设置自定义清单文件夹和 include 文件,例如:

    clusters:
    - clusterName: "site1-sno-du"
      extraManifestPath: "<custom_manifest_folder>" 
    1
    
      extraManifests:
        filter:
          inclusionDefault: exclude  
    2
    
          include:
            - custom-sctp-machine-config-worker.yaml
    Copy to Clipboard Toggle word wrap
    1
    <custom_manifest_folder> 替换为包含自定义安装 CR 的文件夹名称,如 user-custom-manifest/
    2
    inclusionDefault 设置为 exclude 以防止 GitOps ZTP 管道在安装过程中应用 /source-crs/extra-manifest 中的文件。

    以下示例演示了自定义文件夹结构:

    siteconfig
      ├── site1-sno-du.yaml
      └── user-custom-manifest
            └── custom-sctp-machine-config-worker.yaml
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat