第 19 章 处于边缘网络的集群


19.1. 网络边缘的挑战

在地理位置管理多个站点时,边缘计算带来了复杂的挑战。使用 GitOps Zero Touch Provisioning (ZTP) 在网络边缘置备和管理站点。

19.1.1. 克服网络边缘的挑战

今天,服务提供商希望在网络边缘部署其基础架构。这带来了显著的挑战:

  • 您怎样处理并行部署多个边缘站点的部署?
  • 当您需要在断开连接的环境中部署站点时,会出现什么情况?
  • 如何管理集群的生命周期?

GitOps Zero Touch Provisioning (ZTP) 和 GitOps 通过允许您为裸机设备使用声明站点定义和配置大规模置备远程边缘站点。模板或覆盖配置安装 CNF 工作负载所需的 OpenShift Container Platform 功能。安装和升级的完整生命周期通过 GitOps ZTP 管道处理。

GitOps ZTP 使用 GitOps 进行基础架构部署。使用 GitOps,您可以使用声明 YAML 文件和其他存储在 Git 存储库中的其他定义模式。Red Hat Advanced Cluster Management (RHACM)使用 Git 存储库来驱动基础架构部署。

GitOps 提供可追溯性、基于角色的访问控制 (RBAC),以及每个站点的所需状态的单一数据源。Git 方法可通过 webhook 解决可扩展性问题,以及事件驱动的操作。

您可以通过创建 GitOps ZTP 管道提供给边缘节点的声明站点定义和配置自定义资源 (CR) 来启动 GitOps ZTP 工作流。

下图显示了 GitOps ZTP 如何在最边缘框架内工作。

处于边缘网络的 GitOps ZTP

19.1.2. 使用 GitOps ZTP 在网络边缘置备集群

Red Hat Advanced Cluster Management (RHACM)在 hub 和 spoke 架构中管理集群,其中单个 hub 集群管理多个 spoke 集群。运行 RHACM 的 hub 集群使用 GitOps Zero Touch Provisioning (ZTP) 和安装 RHACM 时部署的辅助服务来置备和部署受管集群。

协助的服务处理在单一节点集群、三节点集群或裸机上运行的标准集群上 OpenShift Container Platform 置备。

使用 GitOps ZTP 的高级别概述来置备和维护使用 OpenShift Container Platform 的裸机主机,如下所示:

  • 运行 RHACM 的 hub 集群管理一个 OpenShift 镜像 registry,用于镜像 OpenShift Container Platform 发行镜像。RHACM 使用 OpenShift 镜像 registry 来置备受管集群。
  • 您以 YAML 格式清单文件管理裸机主机,并在 Git 存储库中版本。
  • 您可以使主机准备好作为受管集群置备,并使用 RHACM 和辅助服务在站点上安装裸机主机。

安装和部署集群分为两个阶段,涉及初始安装阶段和后续配置阶段。下图演示了这个工作流:

使用 GitOps 和 GitOps ZTP 安装和部署受管集群

19.1.3. 使用 SiteConfig 资源和 RHACM 安装受管集群

GitOps Zero Touch Provisioning (ZTP) 使用 Git 存储库中的 SiteConfig 自定义资源 (CR) 来管理安装 OpenShift Container Platform 集群的进程。SiteConfig CR 包含安装所需的特定于集群的参数。它有在安装过程中应用所选配置 CR 的选项,包括用户定义的额外清单。

GitOps ZTP 插件处理 SiteConfig CR,以便在 hub 集群上生成 CR 集合。这会在 Red Hat Advanced Cluster Management (RHACM) 中触发辅助服务,以便在裸机主机上安装 OpenShift Container Platform。您可以在 hub 集群上的这些 CR 中找到安装状态和错误消息。

您可以手动置备单个集群,或使用 GitOps ZTP 批量置备单个集群:

置备单个集群
为集群创建单一 SiteConfig CR 及相关的安装和配置 CR,并在 hub 集群中应用它们以开始集群置备。这是在大规模部署前测试 CR 的好方法。
置备多个集群
通过在 Git 仓库中定义 SiteConfig 和相关 CR,以最多 400 的批处理中安装受管集群。ArgoCD 使用 SiteConfig CR 来部署站点。RHACM 策略生成器创建清单,并将其应用到 hub 集群。这将启动集群置备过程。

19.1.4. 使用策略和 PolicyGenTemplate 资源配置受管集群

GitOps Zero Touch Provisioning (ZTP) 使用 Red Hat Advanced Cluster Management (RHACM) 使用基于策略的监管方法应用配置配置。

策略生成器或 PolicyGen 是 GitOps 操作器的一个插件,它允许从简洁的模板创建 RHACM 策略。该工具可将多个 CR 合并为一个策略,您可以生成多个策略应用到团队中集群的不同子集的策略。

注意

为了扩展并降低跨集群管理配置的复杂性,请尽可能使用配置 CR。

  • 在可能的情况下,使用机范围的通用策略应用配置 CR。
  • 下一个首选项是创建集群的逻辑分组,以在组策略下尽可能管理剩余的配置。
  • 当配置对单个站点是唯一的时,请使用 hub 集群上的 RHACM 模板将特定于站点的数据注入通用或组策略。或者,为站点应用单个站点策略。

下图显示了在集群部署配置阶段策略生成器如何与 GitOps 和 RHACM 交互。

策略生成器

对于大型集群群,在配置这些集群时通常具有高级别的一致性。

以下推荐的策略结构组合了配置 CR,以满足几个目标:

  • 描述一次通用配置,并应用到所有系统。
  • 最小化维护和管理策略的数量。
  • 支持集群变体的通用配置的灵活性。
表 19.1. 推荐的 PolicyGenTemplate 策略类别
策略类别描述

Common

一个存在于 common 类别中的策略被应用到该团队中的所有集群。使用通用 PolicyGenTemplate CR 在所有集群类型中应用通用安装设置。

组类别中存在的策略应用到一组集群。使用组 PolicyGenTemplate CR 管理单节点、三节点和标准集群安装的特定方面。集群组也可以遵循区域、硬件变体等。

Sites

站点类别中存在的策略应用到特定的集群站点。任何集群都可以维护自己的特定策略。

其他资源

  • 有关从 ztp-site-generate 容器镜像中提取参考 SiteConfigPolicyGenTemplate CR 的更多信息,请参阅准备 ZTP Git 存储库
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.