1.3. Red Hat Edge Manager 的操作系统镜像
基于镜像的操作系统允许将操作系统和配置和应用程序版本化、部署和更新为单个单元。
使用基于镜像的操作系统可以降低对以下功能的操作风险:
- 最小化测试和部署环境之间的偏移。
- 通过事务更新和回滚减少失败的更新,并降低维护和替换成本。
Red Hat Edge Manager 侧重于运行可引导容器镜像(bootc)的基于镜像的 Linux 操作系统。如需更多信息,请参阅 bootc。
重要: bootc 工具不会更新基于软件包的操作系统。
了解如何从以下内容构建镜像:
-
选择基础
bootc操作系统镜像,如 Fedora、CentOS 或 RHEL 镜像。 创建一个将以下项目分层到基础
bootc镜像的容器文件:- Red Hat Edge Manager 代理和配置。
- 可选:特定于您的目标部署环境的任何驱动程序。
- 可选:主机配置,如证书颁发机构捆绑包,以及所有部署通用的应用程序工作负载。
-
使用
podman和skopeo构建、发布和签署引导操作系统镜像。 -
使用
bootc-image-builder创建操作系统磁盘镜像。 -
使用
skopeo构建、发布和签署操作系统磁盘镜像。
注: 操作系统磁盘镜像包含分区、卷、文件系统和初始 bootc 镜像。在置备过程中,只需要创建一次操作系统磁盘镜像。
对于后续的设备更新,只需要 bootc 操作系统镜像,其中包含文件系统中的文件。
请参阅以下镜像构建主题:
1.3.1. 构建镜像的特别注意事项 复制链接链接已复制到粘贴板!
技术预览: 以下主题涵盖了为 Red Hat Edge Manager 构建镜像的特殊注意事项:
1.3.1.1. 通过动态运行时配置构建时间配置 复制链接链接已复制到粘贴板!
在构建时向操作系统镜像添加配置。在构建时添加配置可确保将配置经过测试、分发和更新在一起。如果构建时配置不可行或需要,您可以使用 Red Hat Edge Manager 在运行时动态配置设备。
在以下情况下首选动态运行时配置:
- 您有一个特定于部署或特定于站点的配置,如主机名或特定站点的网络凭证。
- 您有不保护与镜像分发的 secret。
- 您有应用程序工作负载需要在不重启的情况下添加、更新或删除,或者它们比操作系统更快。
1.3.1.2. 配置 /usr 目录 复制链接链接已复制到粘贴板!
如果配置是静态的,且应用程序或服务支持该配置,请将配置文件放在 /usr 目录中。通过将配置放在 /usr 目录中,配置保持只读状态,并由镜像完全定义。
在以下情况下,无法将配置放在 /usr 目录中:
- 配置是特定于部署或特定于站点的。
-
应用程序或服务只支持从
/etc目录中读取配置。 - 可能需要在运行时更改配置。
1.3.1.3. 置入目录 复制链接链接已复制到粘贴板!
使用置入目录来添加、替换或删除服务聚合的配置文件。不要直接编辑可能导致从目标配置分离的配置文件。
注意: 您可以在目录名称的末尾通过 .d/ 识别置入目录。例如: /etc/containers/certs.d、/etc/cron.d 和 /etc/NetworkManager/conf.d。
1.3.1.4. 使用脚本的操作系统镜像 复制链接链接已复制到粘贴板!
避免执行更改文件系统的脚本或命令。bootc 或 Red Hat Edge Manager 可以覆盖可能导致 deviation 或失败完整性检查的更改的文件。
相反,在镜像构建期间运行此类脚本或命令,因此更改是镜像的一部分。或者,使用 Red Hat Edge Manager 的配置管理机制。
1.3.1.5. 其他资源 复制链接链接已复制到粘贴板!
- 有关 构建镜像,请参阅通用指南。
- 有关在运行时配置设备的更多信息,请参阅边缘设备的操作系统配置。