This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.7.2.13.2. 通过 PXE 或 iPXE 启动来创建 Red Hat Enterprise Linux CoreOS (RHCOS) 机器
在安装使用手动置备 RHCOS 节点(如裸机)的集群前,您必须创建 RHCOS 机器供其使用。您可以使用 PXE 或 iPXE 启动来创建机器。
先决条件
- 获取集群的 Ignition 配置文件。
- 配置合适的 PXE 或 iPXE 基础架构。
- 具有 HTTP 服务器的访问权限,以便您可从计算机进行访问。
流程
将安装程序创建的 master、worker 和 bootstrap Ignition 配置文件上传到 HTTP 服务器。记下这些文件的 URL。
重要您可以在 Ignition 配置中添加或更改配置设置,然后将其保存到 HTTP 服务器。如果您计划在安装完成后在集群中添加更多计算机器,请不要删除这些文件。
从 RHCOS 镜像 镜像页面获取 RHCOS
内核、initramfs 和 rootfs文件。重要RHCOS 工件(artifact)可能不会随着 OpenShift Container Platform 的每个发行版本而改变。您必须下载最高版本的工件,其版本号应小于或等于您安装的 OpenShift Container Platform 版本。这个过程只使用下面描述的正确
kernel、initramfs和rootfs工件。此安装类型不支持 RHCOS qcow2 镜像。文件名包含 OpenShift Container Platform 版本号。它们类似以下示例:
-
kernel:rhcos-<version>-live-kernel-<architecture> -
initramfs:rhcos-<version>-live-initramfs.<architecture>.img -
rootfs:rhcos-<version>-live-rootfs.<architecture>.img
-
上传引导方法所需的额外文件:
-
对于传统的 PXE,将
kernel和initramfs文件上传到 TFTP 服务器,并将rootfs文件上传到 HTTP 服务器。 对于 iPXE,将
kernel、initramfs 和rootfs文件上传到 HTTP 服务器。重要如果您计划在安装完成后在集群中添加更多计算机器,请不要删除这些文件。
-
对于传统的 PXE,将
- 配置网络启动基础架构,以便在安装 RHCOS 后机器可从本地磁盘启动。
为 RHCOS 镜像配置 PXE 或 iPXE 安装。
针对您的环境修改以下示例菜单条目之一,并验证能否正确访问镜像和 Ignition 文件:
对于 PXE:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定上传到 HTTP 服务器的 live
kernel文件位置。URL 必须是 HTTP、TFTP 或者 FTP ; 不支持 HTTPS 和 NFS。 - 2
- 如果您使用多个 NIC,请在
ip选项中指定一个接口。例如,要在名为eno1的 NIC 上使用 DHCP,请设置ip=eno1:dhcp。 - 3
- 指定上传到 HTTP 服务器的 RHCOS 文件的位置。
initrd参数值是initramfs文件的位置,coreos.live.rootfs_url参数值是rootfs文件的位置,coreos.inst.ignition_url参数值是 bootstrap Ignition 配置文件的位置。您还可以在APPEND行中添加更多内核参数来配置联网或其他引导选项。
注意这个配置不会在使用图形控制台的机器上启用串口控制台访问。要配置不同的控制台,请在
APPEND行中添加一个或多个console=参数。例如,添加console=tty0 console=ttyS0将第一个 PC 串口设置为主控制台,图形控制台作为二级控制台。如需更多信息,请参阅如何在 Red Hat Enterprise Linux 中设置串行终端和(或)控制台?对于 iPXE:
kernel http://<HTTP_server>/rhcos-<version>-live-kernel-<architecture> initrd=main coreos.live.rootfs_url=http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img coreos.inst.install_dev=/dev/sda coreos.inst.ignition_url=http://<HTTP_server>/bootstrap.ign initrd --name main http://<HTTP_server>/rhcos-<version>-live-initramfs.<architecture>.img boot
kernel http://<HTTP_server>/rhcos-<version>-live-kernel-<architecture> initrd=main coreos.live.rootfs_url=http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img coreos.inst.install_dev=/dev/sda coreos.inst.ignition_url=http://<HTTP_server>/bootstrap.ign1 2 initrd --name main http://<HTTP_server>/rhcos-<version>-live-initramfs.<architecture>.img3 bootCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意这个配置不会在使用图形控制台的机器上启用串口控制台访问。要配置不同的控制台,请在
kerne行中添加一个或多个console=参数。例如,添加console=tty0 console=ttyS0将第一个 PC 串口设置为主控制台,图形控制台作为二级控制台。如需更多信息,请参阅如何在 Red Hat Enterprise Linux 中设置串行终端和(或)控制台?
如果使用 PXE UEFI,请执行以下操作:
提供引导系统所需的
shim文件。x64.efi和 grubx64.efiEFI 二进制文件以及 grub.cfg通过将 RHCOS ISO 挂载到主机,然后将
images/efiboot.img文件挂载到您的主机来提取所需的 EFI 二进制文件:mkdir -p /mnt/iso
$ mkdir -p /mnt/isoCopy to Clipboard Copied! Toggle word wrap Toggle overflow mkdir -p /mnt/efiboot
$ mkdir -p /mnt/efibootCopy to Clipboard Copied! Toggle word wrap Toggle overflow mount -o loop rhcos-installer.x86_64.iso /mnt/iso
$ mount -o loop rhcos-installer.x86_64.iso /mnt/isoCopy to Clipboard Copied! Toggle word wrap Toggle overflow mount -o loop,ro /mnt/iso/images/efiboot.img /mnt/efiboot
$ mount -o loop,ro /mnt/iso/images/efiboot.img /mnt/efibootCopy to Clipboard Copied! Toggle word wrap Toggle overflow 从
efiboot.img挂载点,将EFI/redhat/shimx64.efi和EFI/redhat/grubx64.efi文件复制到 TFTP 服务器中:cp /mnt/efiboot/EFI/redhat/shimx64.efi .
$ cp /mnt/efiboot/EFI/redhat/shimx64.efi .Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp /mnt/efiboot/EFI/redhat/grubx64.efi .
$ cp /mnt/efiboot/EFI/redhat/grubx64.efi .Copy to Clipboard Copied! Toggle word wrap Toggle overflow umount /mnt/efiboot
$ umount /mnt/efibootCopy to Clipboard Copied! Toggle word wrap Toggle overflow umount /mnt/iso
$ umount /mnt/isoCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
将 RHCOS ISO 中包含的
EFI/redhat/grub.cfg文件复制到您的 TFTP 服务器中。
编辑
grub.cfg文件使其包含类似如下的参数:menuentry 'Install Red Hat Enterprise Linux CoreOS' --class fedora --class gnu-linux --class gnu --class os { linuxefi rhcos-<version>-live-kernel-<architecture> coreos.inst.install_dev=/dev/sda coreos.live.rootfs_url=http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img coreos.inst.ignition_url=http://<HTTP_server>/bootstrap.ign initrdefi rhcos-<version>-live-initramfs.<architecture>.img }menuentry 'Install Red Hat Enterprise Linux CoreOS' --class fedora --class gnu-linux --class gnu --class os { linuxefi rhcos-<version>-live-kernel-<architecture> coreos.inst.install_dev=/dev/sda coreos.live.rootfs_url=http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img coreos.inst.ignition_url=http://<HTTP_server>/bootstrap.ign initrdefi rhcos-<version>-live-initramfs.<architecture>.img }Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中:
rhcos-<version>-live-kernel-<architecture>-
指定上传到 TFTP 服务器的
内核文件。 http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img- 指定上传到 HTTP 服务器的 live rootfs 镜像的位置。
http://<HTTP_server>/bootstrap.ign- 指定上传到 HTTP 服务器的 bootstrap Ignition 配置文件的位置。
rhcos-<version>-live-initramfs.<architecture>.img-
指定上传到 TFTP 服务器的
initramfs文件的位置。
注意有关如何为 UEFI 引导配置 PXE 服务器的更多信息,请参阅红帽知识库文章: 如何为 Red Hat Enterprise Linux 的 UEFI 引导配置/设置 PXE 服务器?
继续为集群创建机器。
重要此刻您必须创建 bootstrap 和 control plane 机器。如果 control plane 机器不可调度(这是默认调度),则在安装集群前至少会创建两台计算机器。