1.5.7. 边缘设备的操作系统配置


技术预览: 您可以在镜像中包括操作系统级别的主机配置,以提供最大一致性和可重复性。

要更新配置,您可以创建一个新的操作系统镜像并使用新镜像更新设备。

但是,在以下情况下,使用新镜像更新设备可能不太现实:

  • 镜像中缺少配置。
  • 配置需要特定于设备。
  • 配置需要在运行时进行更新,而无需更新操作系统镜像并重新引导。

对于这些情况,您可以声明设备文件系统上存在的一组配置文件。Red Hat Edge Manager 代理对配置文件应用更新,同时确保所有文件在文件系统中成功更新,或者回滚到其预更新状态。如果用户同时更新一组设备,Red Hat Edge Manager 代理会首先更新操作系统,然后应用指定的配置文件集合。

您还可以指定 Red Hat Edge Manager 代理按顺序应用的配置设置列表。如果发生冲突,则最后应用的配置设置有效。

重要: 在 Red Hat Edge Manager 代理更新磁盘上的配置后,运行的应用程序需要将新配置重新加载到内存中才能使配置生效。如果更新涉及重启,systemd 会自动使用新配置以及正确顺序重启应用程序。如果更新不涉及重新启动,则许多应用可以检测对其配置文件的更改并自动重新载入文件。当应用程序不支持更改检测时,您可以使用设备生命周期 hook 在满足特定条件时运行脚本或命令。

1.5.7.1. 配置供应商

您可以在 Red Hat Edge Manager 中,从多个源(称为配置供应商)提供配置。Red Hat Edge Manager 目前支持以下配置供应商:

Git 配置提供程序
从 Git 存储库获取设备配置文件。
Kubernetes Secret Provider
从 Kubernetes 集群获取 secret,并将内容写入设备的文件系统。
HTTP 配置提供程序
从 HTTP (S)端点获取设备配置文件。
内联配置提供程序
允许在设备清单中指定内联设备配置文件,而不查询外部系统。

在以下部分了解更多有关配置供应商的信息:

1.5.7.1.1. 从 Git 存储库配置

您可以将设备配置存储在 Git 存储库中,如 GitHub 或 GitLab。然后,您可以添加 Git Config Provider,以便 Red Hat Edge Manager 将配置从存储库同步到设备的文件系统。

Git Config Provider 使用以下参数:

Expand

参数

描述

软件仓库

Red Hat Edge Manager 中定义的 Repository 资源的名称。

targetRevision

要签出的存储库的分支、标签或提交。

路径

存储库中目录的绝对路径,从中文件和子目录同步到设备的文件系统。Path 目录对应于设备上的根目录(/),除非指定了 MountPath 参数。

MountPath

可选。设备文件系统中目录的绝对路径,将存储库的内容写入到其中。默认情况下,该值是文件系统 root (/)。

Repository 资源定义 Git 存储库、Red Hat Edge Manager 必须使用的协议和访问凭证。存储库只需要设置一次。设置后,存储库可用于配置单个设备或设备群。

1.5.7.1.2. Kubernetes 集群中的 secret

Red Hat Edge Manager 只能查询 Red Hat Edge Manager 在 Kubernetes secret 上运行的 Kubernetes 集群。该 secret 的内容可以写入设备文件系统上的路径。

Kubernetes Secret Provider 使用以下参数:

Expand

参数

描述

Name

secret 的名称。

Namespace

secret 的命名空间。

MountPath

将 secret 内容写入到的设备文件系统中。

注: Red Hat Edge Manager 需要权限访问定义的命名空间中的 secret。例如,创建 ClusterRoleClusterRoleBinding 允许 flightctl-worker 服务帐户获取并列出该命名空间中的 secret。

1.5.7.1.3. 从 HTTP 服务器配置

Red Hat Edge Manager 可以查询 HTTP 服务器以进行配置。HTTP 服务器可以为设备提供静态或动态生成的配置。

HTTP 配置提供程序使用以下参数:

Expand

参数

描述

软件仓库

Red Hat Edge Manager 中定义的 Repository 资源的名称。

Suffix

附加到 Repository 资源中定义的基本 URL 的后缀。后缀可以包含 path 和查询参数,如 /path/to/endpoint?query=param

filepath

设备文件系统中文件的绝对路径,将 HTTP 服务器响应写入。

Repository 资源指定要连接的 Red Hat Edge Manager 的 HTTP 服务器,以及要使用的协议和访问凭证。存储库需要设置一次,然后该存储库可用于配置多个设备或设备群。

1.5.7.1.4. 设备规格中内联的配置

您可以在设备规格中内联指定配置。使用内联设备规格时,Red Hat Edge Manager 不需要连接到外部系统来获取配置。

Inline Config Provider 采用文件规格列表,每个文件规格采用以下参数:

Expand

参数

描述

路径

要写入内容的设备文件系统中文件的绝对路径。如果文件已存在于指定路径中,则该文件会被覆盖。

内容

文件的 UTF-8 或 base64 编码内容。

ContentEncoding

定义如何编码内容。必须是 plainbase64。默认值为 plain

模式

可选。文件的权限模式。您可以使用前导零指定八进制数,例如 0644,或者指定为没有前导零的十进制,如 420。支持 setuidsetgidsticky 位。如果没有指定,则文件的权限模式默认为 0644

用户

可选。文件的所有者。指定为名称或数字 ID。默认值为 root

可选。文件的组。指定为名称或数字 ID。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部