第 5 章 配置 iPXE 以减少置备时间


您可以使用 Satellite 将 PXELinux 配置为以 BIOS 模式链 iPXE,并有以下限制来阻止您使用 PXE:

  • 具有非受管 DHCP 服务器的网络。
  • 在网络上列入黑名单或受防火墙限制的 PXE 服务。
  • 一个不可靠的 TFTP UDP 协议,因为一个低带宽网络。

有关 iPXE 支持的更多信息,请参阅支持的部署架构

iPXE 概述

iPXE 是开源网络引导固件。它提供增强的额外功能的完整 PXE 实施,包括从 HTTP 服务器引导。如需更多信息,请参阅 ipxe.org

在 Red Hat Satellite 中使用 iPXE 有三种方法:

  1. 使用 iPXE 作为主固件的虚拟机监控程序启动虚拟机。
  2. 通过 TFTP 使用 PXELinux 直接在裸机主机上加载 iPXE。
  3. 使用 PXELinux 到 UNDI,它使用 HTTP 传输内核和裸机主机上的初始 RAM 磁盘。

安全信息

Red Hat Enterprise Linux 中的 iPXE 二进制文件是在没有一些安全功能的情况下构建的。因此,您只能使用 HTTP,无法使用 HTTPS。不支持 Red Hat Enterprise Linux 中 iPXE 的所有与安全相关的功能。如需更多信息,请参阅 iPXE 中的 Red Hat Enterprise Linux HTTPS 支持

先决条件

  • Red Hat Satellite 中存在主机。
  • 置备接口的 MAC 地址与主机配置匹配。
  • 主机的调配接口具有有效的 DHCP 保留。
  • NIC 可以进行 PXE 引导。如需更多信息,请参阅 ipxe.org 上 支持的硬件,以了解希望与基于 iPXE 的引导磁盘一起使用的硬件驱动程序列表。
  • NIC 与 iPXE 兼容。

要准备 iPXE 环境,您必须在所有胶囊上执行此流程。

流程

  1. 启用 tftphttpboot 服务:

    # satellite-installer --foreman-proxy-httpboot true --foreman-proxy-tftp true
    Copy to Clipboard Toggle word wrap
  2. 安装 ipxe-bootimgs 软件包:

    # yum install ipxe-bootimgs
    Copy to Clipboard Toggle word wrap
  3. 更正 SELinux 文件上下文:

    # restorecon -RvF /var/lib/tftpboot/
    Copy to Clipboard Toggle word wrap
    • 将带有 Linux 内核标头的 iPXE 固件复制到 TFTP 目录中:

      # cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/
      Copy to Clipboard Toggle word wrap
    • 将 UNDI iPXE 固件复制到 TFTP 目录中:

      # cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0
      Copy to Clipboard Toggle word wrap
  4. (可选)配置 Foreman 发现。更多信息请参阅 第 7 章 配置发现服务

    • 在 Satellite Web UI 中,导航到 Administer > Settings,然后点 Provisioning 选项卡。
    • Default PXE 全局模板条目行和 Value 列中找到 Default PXE 全局模板条目行,将值更改为 discovery

5.1. 引导虚拟机

有些虚拟化虚拟机监控程序使用 iPXE 作为 PXE 引导的主要固件。因此,您可以在没有 TFTP 和 PXELinux 的情况下引导虚拟机。

Chainbooting 虚拟机工作流

使用虚拟化虚拟机监控程序消除了 TFTP 和 PXELinux 的要求。它有以下工作流:

  1. 虚拟机启动
  2. iPXE 使用 DHCP 检索网络凭据,包括 HTTP URL
  3. iPXE 从 Satellite 服务器或 Capsule 加载 iPXE bootstrap 模板
  4. iPXE 从 Satellite 服务器或 Capsule 加载 MAC 的 iPXE 模板作为 URL 参数
  5. iPXE 加载安装程序的内核和初始 RAM 磁盘

先决条件

  • 确保要使用的虚拟机监控程序支持 iPXE。以下虚拟化虚拟机监控程序支持 iPXE:

    • libvirt
    • Red Hat Virtualization
    • RHEV (已弃用)
  • 如果要使用 Capsule 服务器而不是 Satellite 服务器,请确保已相应地配置了 Capsule 服务器。如需更多信息,请参阅安装 Capsule 服务器 中的 为主机注册和置备配置 Capsule

将 Satellite 服务器配置为使用 iPXE

您可以使用默认模板为主机配置 iPXE 引导。如果要更改模板中的默认值,请克隆模板并编辑克隆。

流程

  1. 在 Satellite Web UI 中,导航到 Hosts > Provisioning Templates,输入 Kickstart default iPXE 并点 Search
  2. 可选:如果要更改模板,点 Clone,输入唯一名称,然后点 Submit
  3. 点您要使用的模板的名称。
  4. 如果克隆模板,您可以在 Template 选项卡中进行更改。
  5. 单击 关联 选项卡,然后选择主机使用的操作系统。
  6. 单击 Locations 选项卡,再添加主机所在的位置。
  7. 单击 Organizations 选项卡,再添加主机所属的组织。
  8. Submit 保存更改。
  9. 在 Satellite Web UI 中,导航到 Hosts > Operating systems 并选择主机的操作系统。
  10. Templates 选项卡。
  11. iPXE Template 列表中,选择您要使用的模板。
  12. Submit 保存更改。
  13. 在 Satellite Web UI 中,导航到 Hosts > All Hosts
  14. Hosts 页面中,选择您要使用的主机。
  15. 选择 Operating System 选项卡。
  16. PXE Loader 设置为 iPXE 嵌入式
  17. 选择 Templates 选项卡。
  18. iPXE 模板列表中,选择 Review 以验证 Kickstart 默认 iPXE 模板是否正确模板。
  19. 设置 HTTP URL。

    • 如果要使用 Satellite 服务器引导,请在 Satellite 服务器上运行以下命令:

      # satellite-installer \
      --foreman-proxy-dhcp-ipxefilename "http://satellite.example.com/unattended/iPXE?bootstrap=1"
      Copy to Clipboard Toggle word wrap
    • 如果要使用 Capsule 进行引导,在 Capsule 上运行以下命令:

      # satellite-installer \
      --foreman-proxy-dhcp-ipxefilename "http://capsule.example.com/unattended/iPXE?bootstrap=1"
      Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat