第 1 章 RHEL 的镜像模式简介


使用 RHEL 的镜像模式构建、测试,并使用与应用程序容器一样的工具和技术来部署操作系统。RHEL 的镜像模式可以使用 registry.redhat.io/rhel10/rhel-bootc bootc 镜像提供。RHEL bootc 镜像与现有应用程序通用基础镜像(UBI)不同,它们包含通常排除的引导所需的其他组件,如内核、initrd、引导装载程序、固件等。

注意

rhel-bootc 和基于 rhel-bootc 容器镜像的用户创建容器受到 Red Hat Enterprise Linux 最终用户许可协议(EULA) 的影响。您不允许公开重新分发这些镜像。

图 1.1. 使用 RHEL 的镜像模式构建、部署和管理操作系统

红帽为以下计算机架构提供 bootc 镜像:

  • AMD 和 Intel 64 位体系架构 (x86-64-v2)
  • 64 位 ARM 架构(ARMv8.0-A)
  • IBM Power Systems 64 位 Little Endian 架构(ppc64le)
  • IBM Z 64 位架构(s390x)
警告

Anaconda 在 s390x 和 ppc64le 构架中可能无法正常工作。如需更多信息,请参阅发行注记

RHEL 的镜像模式的好处贯穿于系统的整个生命周期。以下列表包含一些最重要的优点:

容器镜像比其他镜像格式更易于理解和使用,且可快速构建
Containerfiles,也称为 Dockerfile,提供了一种简单的方法来定义镜像的内容和构建指令。与其他镜像创建工具相比,构建和迭代容器镜像通常要快得多。
整合流程、基础架构和发布工件
因为您将应用程序作为容器分发,所以您可以使用同样的基础设施和流程来管理底层操作系统。
不可变的更新
正如容器化应用程序以不可变的方式更新一样,使用 RHEL 的镜像模式,操作系统也是如此。您可以以使用 rpm-ostree 系统的同样的方式引导到更新,并在需要时回滚。
跨混合云环境的可移植性
您可以在物理、虚拟化、云和边缘环境中使用引导镜像。

虽然容器为构建、传输和运行镜像提供基础,但在部署这些引导镜像后(使用安装机制),或者将它们转换为磁盘镜像非常重要,但系统不会作为容器运行。

  • Bootc 支持以下容器镜像格式和磁盘镜像格式:
Expand
表 1.1. bootc 支持的镜像类型
镜像类型目标环境

OCI 容器格式

物理、虚拟化、云和边缘环境。

ami

Amazon 计算机镜像.

qcow2 (默认)

QEMU (针对 Red Hat OpenStack、Red Hat OpenStack services for OpenShift 和 OpenShift Virtualization)、Libvirt (RHEL)等环境为目标。

vmdk

vSphere 的 VMDK。

anaconda-iso

安装至找到第一个磁盘的无人值守 Anaconda 安装程序。

raw

未格式化原始磁盘。QEMU 和 Libvirt 还支持

vhd

其它用于虚拟 PC 的 VHD。

gce

Google Compute Engine (GCE)环境。

容器通过提供以下可能性来简化 RHEL 系统的生命周期:

构建容器镜像
您可以通过修改 Containerfile 来在构建时配置操作系统。使用 registry.redhat.io/rhel10/rhel-bootc 容器镜像可以使用 RHEL 的镜像模式。您可以使用 Podman、OpenShift Container Platform 或其他标准容器构建工具来管理容器和容器镜像。您可以使用 CI/CD 管道自动化构建过程。
版本控制、镜像和测试容器镜像
您可以使用 Podman 或 OpenShift Container Platform 等任何容器工具版本、镜像、内省和签署您的派生的 bootc 镜像。
将容器镜像部署到目标环境中

有几个如何部署镜像的选项:

  • Anaconda: 是 RHEL 使用的安装程序。您可以使用 Anaconda 和 Kickstart 将所有镜像类型部署到目标环境中,以自动化安装过程。
  • bootc-image-builder :是一种容器化工具,它将容器镜像转换为不同类型的磁盘镜像,并可选择将它们上传到镜像注册中心或对象存储中。
  • bootc: 是一个负责从容器注册中心获取容器镜像,并将其安装到系统、更新操作系统,或从现有的基于 ostree 的系统进行切换的工具。RHEL bootc 镜像默认包含 bootc 工具,并可用于所有镜像类型。它旨在取代 rpm-ostree
更新您的操作系统
系统支持部署后带回滚的就地事务更新。默认情况下,自动更新是开启的。systemd 服务单元和 systemd 定时器单元文件检查容器注册中心中的更新,并将其应用到系统。由于更新是事务性的,所以需要重新启动。对于需要更复杂的或计划部署的环境,请禁用自动更新,并使用 bootc 工具更新您的操作系统。

RHEL 有两种部署模式。两者都在部署期间提供同样的稳定性、可靠性和性能。查看它们的不同:

  1. 软件包模式 :操作系统使用 RPM 软件包,并使用 dnf 软件包管理器进行更新。root 文件系统是可变的。但是,操作系统不能作为容器化应用进行管理。
  2. 镜像模式 :一种构建、部署和管理 RHEL 的容器原生方法。同样的 RPM 软件包作为基础镜像提供,更新作为容器镜像部署。root 文件系统默认是不可变的,但 /etc/var 除外,大多数内容来自容器镜像。

您可以选择使用镜像模式或 Package mode 部署来构建、测试和共享您的操作系统。镜像模式 还允许您像任何其他容器化应用程序一样管理操作系统。

1.1. 先决条件

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat