第 1 章 Red Hat Edge Manager (技术预览)
技术预览: Red Hat Edge Manager 通过声明性方法简化边缘设备和应用程序的管理。
通过定义边缘设备所需的状态,包括您的操作系统版本、主机配置和应用部署,Red Hat Edge Manager 会自动在整个设备间实现和维护这些配置。
通过使用 Red Hat Advanced Cluster Management for Kubernetes 上的 Red Hat Edge Manager,您可以在 Red Hat OpenShift Container Platform 上管理非 Kubernetes 工作负载以及 Red Hat Enterprise Linux 机器上的操作系统配置。
参阅以下主题来了解更多有关在 Red Hat Advanced Cluster Management 上使用 Red Hat Edge Manager 的信息。所有功能都 处于技术预览状态 :
1.1. Red Hat Edge Manager 架构 复制链接链接已复制到粘贴板!
技术预览: 您可以使用 Red Hat Edge Manager 管理单独的设备或整个团队。Red Hat Edge Manager 使用基于代理的架构,允许可扩展且强大的设备管理,即使有有限的网络状况。
通过将 Red Hat Edge Manager 代理部署到设备中,代理会自动管理和监控该设备,同时定期与 Red Hat Edge Manager 服务通信,以检查新配置并报告设备状态。
Red Hat Edge Manager 支持基于镜像的操作系统。您可以在分发到设备的镜像中包括 Red Hat Edge Manager 代理和代理配置。
基于镜像的操作系统允许代理启动镜像的事务更新,并在更新错误时回滚到以前的版本。
Red Hat Edge Manager 架构有以下主要功能:
- Agent
- 服务
- 基于镜像的操作系统
- API Server
- 数据库
- 设备
- 设备团队
从以下部分了解更多详情:
1.1.1. Red Hat Edge Manager 代理和服务 复制链接链接已复制到粘贴板!
Red Hat Edge Manager 代理是在每个受管设备中运行的进程,它定期在 Red Hat Advanced Cluster Management hub 集群中通信 Red Hat Edge Manager 服务。代理负责以下任务:
- 将设备注册到该服务
- 定期检查服务以获取设备规格的更改,如操作系统、配置和应用程序的变化
- 独立于服务应用任何更新
- 报告设备和应用程序状态
Red Hat Edge Manager 服务负责以下任务:
- 验证和授权用户和代理
- 注册设备
- 管理设备清单
- 从单个设备或团队报告状态
该服务还与存储设备清单和目标设备配置的数据库通信。当与服务通信时,代理会轮询服务以了解配置中的更改。如果代理检测到当前的配置与目标配置分离,代理会尝试将更改应用到该设备。
当代理从服务接收一个新的目标配置时,代理会执行以下任务:
- 为了避免根据更新期间的网络连接,代理会通过网络将所有所需的资源(如操作系统镜像和应用程序容器镜像)下载到磁盘。
-
代理通过委派到
bootc来更新操作系统镜像。 - 代理通过覆盖服务发送到该设备的一组文件来更新设备的文件系统上的配置文件。
- 如有必要,代理会重启到新的操作系统。否则,代理会发出系统服务和应用程序来重新载入更新的配置。
- 代理会更新在 Podman 或 MicroShift 上运行的应用程序。
如果更新失败,或者系统重启后没有在线返回,代理会自动回滚到以前的操作系统镜像和配置。
注: 您可以在 Git 中维护团队定义。Red Hat Edge Manager 定期与数据库中的数量定义同步。
1.1.2. Red Hat Edge Manager API 服务器 复制链接链接已复制到粘贴板!
API 服务器是 Red Hat Edge Manager 服务的核心组件,允许用户和代理与服务通信。
API 服务器公开以下端点:
- 面向用户的 API 端点
- 用户可以通过 CLI 或 Web 控制台连接到面向用户的 API 端点。用户必须通过配置的外部身份验证服务进行身份验证,以获取 JSON Web Token (JWT)来发出 HTTPS 请求。
- 基于代理的 API 端点
- 代理连接到面向代理的端点,该端点使用 mTLS 保护。该服务使用 X.509 客户端证书验证设备。
Red Hat Edge Manager 服务还与各种外部系统通信,以验证和授权用户、获得 mTLS 证书签名或查询受管设备的配置。
1.1.3. 设备注册 复制链接链接已复制到粘贴板!
技术预览: 在开始管理前,您需要将设备注册到 Red Hat Edge Manager 服务。在设备上运行的 Red Hat Edge Manager 代理处理设备注册。
当代理在设备上启动时,代理会在 /etc/flightctl/config.yaml 文件中搜索配置。该文件定义以下配置:
- 注册端点,即代理连接到注册的 Red Hat Edge Manager 服务。
- 注册证书,即代理只用来安全请求 Red Hat Edge Manager 服务注册的 X.509 客户端证书和密钥。
- 可选: 任何其他代理配置。
代理通过搜索注册端点(Red Hat Edge Manager 服务)来开始注册过程,该服务在配置文件中定义。
建立一个安全的 mTLS 保护与服务的连接后,代理会向该服务提交注册请求。
该请求包括设备硬件和操作系统的描述、X.509 证书签名请求以及设备的加密身份。
注册请求必须由授权用户批准。批准请求后,该设备会受 Red Hat Edge Manager 服务信任和管理。
1.1.3.1. 注册方法 复制链接链接已复制到粘贴板!
您可以使用以下方法为该设备置备注册端点和证书:
- 早期绑定
- 您可以构建包含注册端点和证书的操作系统镜像。使用早期绑定镜像的设备可以自动连接到定义的 Red Hat Edge Manager 服务来请求注册,而无需依赖于任何置备基础架构。
设备共享相同的长期 X.509 客户端证书。然而,在这种情况下,设备绑定到特定的服务和所有者。
- 后向绑定
- 您可以在置备时定义注册端点和证书,而不是将其包含在操作系统镜像中。使用后绑定镜像的设备不绑定到单个所有者或服务,并可具有特定于设备的、简短的 X.509 客户端证书。
但是,后向绑定需要虚拟化或裸机置备基础架构,这些基础架构可以从 Red Hat Edge Manager 服务请求特定于设备的端点和证书,并使用 cloud-init、Ignition 或 kickstart 等机制将其注入置备的系统。
注: 注册证书仅用于保护网络连接以提交注册请求。注册证书不参与注册请求的实际验证或批准。注册证书不再用于注册的设备,因为设备依赖特定于设备的管理证书。