7.8. 构建发现镜像
发现镜像是一个最小的操作系统,在主机上进行 PXE 引导以获取初始硬件信息,并使用 Satellite 签入。发现的主机会继续运行 Discovery 镜像,直到被重启到 Anaconda 中,然后启动置备过程。
操作系统镜像基于红帽企业 Linux 7。
foreman-discovery-image
软件包包含此镜像。您必须在提供 TFTP 服务的胶囊上安装该软件包。
如果您更改配置文件,请使用此流程构建 Satellite 发现镜像或重新构建镜像。
请勿在您的生产卫星或胶囊中使用此步骤。使用专用环境,或者将同步的存储库和 kickstart 文件复制到单独的服务器。
前提条件
安装
livecd-tools
软件包:# satellite-maintain packages install livecd-tools
对于构建发现镜像所需的以下 Red Hat Enterprise Linux 7 软件仓库,请将下载策略更改为 Immediate。这是必要的,因为卫星仅在与即时下载策略同步存储库期间下载所有软件包。
- 最新的 Red Hat Enterprise Linux 7 服务器(Kickstart) 软件仓库。例如,Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.7。
- 红帽卫星胶囊 6.9 (适用于 RHEL 7 服务器)RPM x 86_64.
有关更改下载策略的更多信息,请参阅 内容管理指南中的更改存储库下载 策略。
同步构建发现镜像所需的以下 Red Hat Enterprise Linux 7 软件仓库:
- 最新的 Red Hat Enterprise Linux 7 服务器(Kickstart) 软件仓库。例如,Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.7。
- 红帽卫星胶囊 6.9 (适用于 RHEL 7 服务器)RPM x 86_64.
有关同步存储库的更多信息,请参阅 内容 管理指南中的 同步红帽存储库。
流程
要构建 Satellite 发现镜像,请完成以下步骤:
打开
/usr/share/foreman-discovery-image/foreman-discovery-image.ks
文件进行编辑:# vim /usr/share/foreman-discovery-image/foreman-discovery-image.ks
将 kickstart 文件中的存储库行替换为存储库 URL:
repo --name=rhel --baseurl=file:///var/lib/pulp/published/yum/https/repos/Default_Organization/Library/content/dist/rhel/server/7/7.7/x86_64 repo --name=sat --baseurl=file:///var/lib/pulp/published/yum/https/repos/Default_Organization/Library/content/dist/rhel/server/7/7Server/x86_64/sat-capsule/6.9/os
运行
livecd-creator
工具:# livecd-creator --title="Discovery-Image" \ --compression-type=xz \ --cache=var/cache/build-fdi \ --config /usr/share/foreman-discovery-image/foreman-discovery-image.ks \ --fslabel fdi \ --tmpdir /var/tmp
如果您在
--fslabel
选项中更改fdi
,在载入镜像时,还必须更改内核命令行中的 root 标签。fdi
或备用名称附加到作为此流程一部分创建的.iso
文件中。当从.iso
转换为 PXE 时,PXE 发现工具使用此名称。使用
/var
,因为如果系统在 swap 空间较低,这个过程需要接近 3GB 空间,因此可能出现问题。/tmp
验证您的
fdi.iso
文件是否已创建:# ls -h *.iso
在创建 .iso
文件时,您可以通过网络或本地引导 .iso
文件。完成以下步骤之一。
要通过网络引导 iso 文件:
要通过网络从
.iso
文件中提取初始 ramdisk 和内核文件,请输入以下命令:# discovery-iso-to-pxe fdi.iso
创建用于存储您的引导文件的目录:
# mkdir /var/lib/tftpboot/boot/myimage
-
将
initrd0.img
和vmlinuz0
文件复制到新目录。 -
编辑
/var/lib/tftpboot/pxelinux.cfg
文件中的KERNEL
和APPEND
条目,以添加您自己初始 ramdisk 和内核文件的信息。
在本地引导 iso 文件:
如果要为本地引导创建混合 .iso
文件,请完成以下步骤:
要将
.iso
文件转换为.iso
混合文件进行 PXE 调配,请输入以下命令:# isohybrid --partok fdi.iso
如果您安装了
grub2
软件包,您可以使用以下命令安装grub2
引导装载程序:# isohybrid --partok --uefi fdi.iso
要在
.iso
文件中添加md5
checksum,以便它在 Satellite 中传递安装介质验证测试,请输入以下命令:# implantisomd5 fdi.iso