9.2. 使用 siteConfig 过滤器过滤自定义资源
通过使用过滤器,您可以轻松地自定义 SiteConfig 自定义资源 (CR),使其包含或排除其他 CR,以便在 GitOps Zero Touch Provisioning (ZTP) 管道的安装阶段使用。
您可以为 SiteConfig CR 指定一个 inclusionDefault 值(include 或 exclude),以及您要包含或排除的特定 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 应用程序的源仓库。
流程
要防止 GitOps ZTP 管道应用
03-sctp-machine-config-worker.yamlCR 文件,请在SiteConfigCR 中应用以下 YAML:Copy to Clipboard Copied! Toggle word wrap Toggle overflow GitOps ZTP 管道在安装过程中跳过
03-sctp-machine-config-worker.yamlCR。应用/source-crs/extra-manifest中的所有其他 CR。保存
SiteConfigCR,并将更改推送到站点配置存储库。GitOps ZTP 管道监控并调整根据
SiteConfig过滤器指令所应用的 CR。可选: 要防止 GitOps ZTP 管道在集群中应用所有
/source-crs/extra-manifestCR,请在SiteConfigCR 中应用以下 YAML:- clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: exclude- clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: excludeCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选: 要排除所有
/source-crs/extra-manifestRAN CR,并在安装过程中包括自定义 CR 文件,编辑自定义SiteConfigCR 来设置自定义清单文件夹和include文件,例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下示例演示了自定义文件夹结构:
siteconfig ├── site1-sno-du.yaml └── user-custom-manifest └── custom-sctp-machine-config-worker.yamlsiteconfig ├── site1-sno-du.yaml └── user-custom-manifest └── custom-sctp-machine-config-worker.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow