5.10. 使用实时内核构建 RHEL 镜像
要使用实时内核(kernel-rt
)构建 RHEL 镜像,您需要覆盖存储库,以便您然后可以构建一个镜像,其中 kernel-rt
被正确选择为默认内核。使用 /usr/share/osbuild-composer/repositories/
目录中的 .json
。然后,您可以部署您构建到系统的镜像,并使用实时内核功能。
实时内核在经过认证可运行 Red Hat Enterprise Linux 的 AMD64 和 Intel 64 服务器平台上运行。
先决条件
- 您的系统已注册,并且 RHEL 已附加到 RHEL for Real Time 订阅。
流程
创建以下目录:
mkdir /etc/osbuild-composer/repositories/
# mkdir /etc/osbuild-composer/repositories/
Copy to Clipboard Copied! 将
/usr/share/osbuild-composer/repositories/rhel-10.json
文件中的内容复制到新目录中:cp /usr/share/osbuild-composer/repositories/rhel-10.json /etc/osbuild-composer/repositories
# cp /usr/share/osbuild-composer/repositories/rhel-10.json /etc/osbuild-composer/repositories
Copy to Clipboard Copied! 编辑
/etc/osbuild-composer/repositories/rhel-10.json
文件,使其包含 RT 内核存储库:grep -C 6 kernel-rt /etc/osbuild-composer/repositories/rhel-10.json
# grep -C 6 kernel-rt /etc/osbuild-composer/repositories/rhel-10.json "baseurl": "https://cdn.redhat.com/content/dist/rhel10/10/x86_64/appstream/os", "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nm………..=\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n", "rhsm": true, "check_gpg": true }, { "name": "kernel-rt", "baseurl": "https://cdn.redhat.com/content/dist/rhel10/10/x86_64/rt/os", "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBEr………fg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n", "rhsm": true, "check_gpg": true },
Copy to Clipboard Copied! 重启服务:
systemctl restart osbuild-composer
# systemctl restart osbuild-composer
Copy to Clipboard Copied! 确认
kernel-rt
已包含在.json
文件中:composer-cli sources list composer-cli sources info kernel-rt
# composer-cli sources list # composer-cli sources info kernel-rt
Copy to Clipboard Copied! 您将看到您之前配置的 URL。
创建一个蓝图。在蓝图中,添加 "[customizations.kernel]" 自定义。以下是蓝图中包含 "[customizations.kernel]" 的一个示例:
name = "rt-kernel-image" description = "" version = "2.0.0" modules = [] groups = [] distro = "rhel-10.0" [[customizations.user]] name = "admin" password = "admin" groups = ["users", "wheel"] [customizations.kernel] name = "kernel-rt" append = ""
name = "rt-kernel-image" description = "" version = "2.0.0" modules = [] groups = [] distro = "rhel-10.0" [[customizations.user]] name = "admin" password = "admin" groups = ["users", "wheel"] [customizations.kernel] name = "kernel-rt" append = ""
Copy to Clipboard Copied! 将蓝图推送到服务器:
composer-cli blueprints push rt-kernel-image.toml
# composer-cli blueprints push rt-kernel-image.toml
Copy to Clipboard Copied! 从您创建的蓝图中构建镜像。以下示例构建一个(
.qcow2
)镜像:composer-cli compose start rt-kernel-image qcow2
# composer-cli compose start rt-kernel-image qcow2
Copy to Clipboard Copied! - 将您构建的镜像部署到您要使用实时内核功能的系统中。
验证
从镜像引导虚拟机后,验证镜像是否是使用正确选择为默认内核的
kernel-rt
构建的。cat /proc/cmdline BOOT_IMAGE=(hd0,got3)/vmlinuz-6.12.0-0.el10_0_.x86_64+rt...
$ cat /proc/cmdline BOOT_IMAGE=(hd0,got3)/vmlinuz-6.12.0-0.el10_0_.x86_64+rt...
Copy to Clipboard Copied!