17.8. 带有 SiteConfig 资源的高级受管集群配置
您可以使用 SiteConfig 自定义资源 (CR) 在安装时在受管集群中部署自定义功能和配置。
17.8.1. 在 ZTP GitOps 管道中自定义额外的安装清单 复制链接链接已复制到粘贴板!
您可以定义一组额外的清单,以包含在零接触置备(ZTP) GitOps 管道的安装阶段。这些清单链接到 siteConfig 自定义资源(CR),并在安装过程中应用到集群。在安装时包括 MachineConfig CR 可提高安装过程的效率。
先决条件
- 创建一个 Git 存储库,在其中管理自定义站点配置数据。该存储库必须可从 hub 集群访问,并定义为 Argo CD 应用程序的源仓库。
流程
- 创建 ZTP 管道用于自定义集群安装的一组额外清单 CR。
在自定义
/siteconfig目录中,为您的额外清单创建一个/extra-manifest文件夹。以下示例演示了一个/siteconfig示例,带有/extra-manifest文件夹:siteconfig ├── site1-sno-du.yaml ├── site2-standard-du.yaml └── extra-manifest └── 01-example-machine-config.yamlsiteconfig ├── site1-sno-du.yaml ├── site2-standard-du.yaml └── extra-manifest └── 01-example-machine-config.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
将自定义额外清单 CR 添加到
siteconfig/extra-manifest目录。 在
SiteConfigCR 的extraManifestPath字段中输入目录名称,例如:clusters: - clusterName: "example-sno" networkType: "OVNKubernetes" extraManifestPath: extra-manifest
clusters: - clusterName: "example-sno" networkType: "OVNKubernetes" extraManifestPath: extra-manifestCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
保存
SiteConfigCR 和/extra-manifestCR,并将它们推送到站点配置存储库。
ZTP 管道在集群置备过程中将 /extra-manifest 目录中的 CR 附加到默认额外清单集合中。
17.8.2. 使用 siteConfig 过滤器过滤自定义资源 复制链接链接已复制到粘贴板!
通过使用过滤器,您可以轻松地自定义 SiteConfig 自定义资源 (CR) 来包含或排除其他 CR,以便在零 touch 置备 (ZTP) GitOps 管道的安装阶段使用。
您可以为 SiteConfig CR 指定一个 inclusionDefault 值(include 或 exclude),以及您要包含或排除的特定 extraManifest RAN CR 列表。将 inclusionDefault 设置为 include 可使 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 应用程序的源仓库。
流程
要防止 ZTP 管道应用
03-sctp-machine-config-worker.yamlCR 文件,在SiteConfigCR 中应用以下 YAML:Copy to Clipboard Copied! Toggle word wrap Toggle overflow ZTP 管道在安装过程中跳过
03-sctp-machine-config-worker.yamlCR。应用/source-crs/extra-manifest中的所有其他 CR。保存
SiteConfigCR,并将更改推送到站点配置存储库。ZTP 管道会监控和调整它根据
SiteConfig过滤器指令所应用的 CR。可选: 要防止 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