Este conteúdo não está disponível no idioma selecionado.
Chapter 8. Using network boot to provision hosts
After integrating provisioning infrastructure services with Satellite, you can provision hosts with Red Hat Satellite by booting hosts over a network. Once the host boots, Satellite Server or Capsule Server provides operating system installation content that the host downloads. After the operating system has been installed, the host registers to Satellite and Satellite performs an initial configuration of the host.
BIOS and UEFI interfaces
Both BIOS and UEFI interfaces work as interpreters between the operating system and firmware of a computer, initializing hardware components and starting the operating system at boot time. With Satellite, you can perform both BIOS and UEFI based PXE provisioning. For UEFI interfaces with an HTTP boot client, you can also perform UEFI HTTP provisioning.
UEFI Secure Boot
Red Hat Satellite supports host provisioning with UEFI Secure Boot. By default, you can provision the same RHEL version as your Satellite Server on Secure Boot enabled hosts. To provision other versions of Red Hat Enterprise Linux, you have to provide signed shim and GRUB2 binaries of those RHEL versions.
Bonded network interfaces
You can configure a bonded interface that Satellite will use during the installation process, for example, to download installation content. After provisioning completes, the provisioned system can also use the bonded interface.
Satellite cannot PXE boot a bonded interface that requires configuration on a network switch as well as on your host.
After your host loads the kernel of an installer or the kernel of an operating system, bonding works as expected. Therefore, you can use a boot disk to work around PXE boot limitations when your bonded interface requires configuration on both a switch and your host.
8.1. Network boot provisioning workflow Copiar o linkLink copiado para a área de transferência!
The provisioning process follows a basic PXE workflow:
- You create a host and select a domain and subnet. Satellite requests an available IP address from the DHCP Capsule Server that is associated with the subnet or from the PostgreSQL database in Satellite. Satellite loads this IP address into the IP address field in the Create Host window. When you complete all the options for the new host, submit the new host request.
Depending on the configuration specifications of the host and its domain and subnet, Satellite creates the following settings:
- A DHCP record on Capsule Server that is associated with the subnet.
- A forward DNS record on Capsule Server that is associated with the domain.
- A reverse DNS record on the DNS Capsule Server that is associated with the subnet.
- PXELinux, Grub, Grub2, and iPXE configuration files for the host in the TFTP Capsule Server that is associated with the subnet.
- A Puppet certificate on the associated Puppet server.
- A realm on the associated identity server.
- The host is configured to boot from the network as the first device and HDD as the second device.
- The new host requests a DHCP reservation from the DHCP server.
-
The DHCP server responds to the reservation request and returns TFTP
next-serverandfilenameoptions. - The host requests the boot loader and menu from the TFTP server according to the PXELoader setting.
- A boot loader is returned over TFTP.
- The boot loader fetches configuration for the host through its provisioning interface MAC address.
- The boot loader fetches the operating system installer kernel, init RAM disk, and boot parameters.
- The installer requests the provisioning template from Satellite.
- Satellite renders the provision template and returns the result to the host.
The installer performs installation of the operating system.
- The installer registers the host to Satellite by using Subscription Manager.
-
The installer notifies Satellite of a successful build in the
postinstallscript.
- The PXE configuration files revert to a local boot template.
- The host reboots.
- The new host requests a DHCP reservation from the DHCP server.
-
The DHCP server responds to the reservation request and returns TFTP
next-serverandfilenameoptions. - The host requests the boot loader and menu from the TFTP server according to the PXELoader setting.
- A boot loader is returned over TFTP.
- The boot loader fetches the configuration for the host through its provision interface MAC address.
- The boot loader initiates boot from the local drive.
- If you configured the host to use Puppet classes, the host uses the modules to configure itself.
The fully provisioned host performs the following workflow:
- The host is configured to boot from the network as the first device and HDD as the second device.
- The new host requests a DHCP reservation from the DHCP server.
-
The DHCP server responds to the reservation request and returns TFTP
next-serverandfilenameoptions. - The host requests the boot loader and menu from the TFTP server according to the PXELoader setting.
- A boot loader is returned over TFTP.
- The boot loader fetches the configuration settings for the host through its provisioning interface MAC address.
For BIOS hosts:
- The boot loader returns non-bootable device so BIOS skips to the next device (boot from HDD).
For EFI hosts:
- The boot loader finds Grub2 on a ESP partition and chainboots it.
- If the host is unknown to Satellite, a default boot loader configuration is provided. When Discovery service is enabled, it boots into discovery, otherwise it boots from HDD.
This workflow differs depending on custom options. For example:
- Discovery
- If you use the discovery service, Satellite automatically detects the MAC address of the new host and restarts the host after you submit a request. Note that TCP port 8443 must be reachable by the Capsule to which the host is attached for Satellite to restart the host.
- PXE-less Provisioning
- After you submit a new host request, you must boot the specific host with the boot disk that you download from Satellite and transfer by using an external storage device.
- Compute Resources
-
Satellite creates the virtual machine and retrieves the MAC address and stores the MAC address in Satellite. If you use image-based provisioning, the host does not follow the standard PXE boot and operating system installation. The compute resource creates a copy of the image for the host to use. Depending on image settings in Satellite, seed data can be passed in for initial configuration, for example by using
cloud-init. Satellite can connect to the host by using SSH and execute a template to finish the customization.
8.2. Prerequisites for network-boot provisioning Copiar o linkLink copiado para a área de transferência!
The requirements for network-boot provisioning include:
- Provisioning infrastructure services (DNS, DHCP, TFTP) are integrated with Satellite and configured.
A bare-metal machine or a blank virtual machine. The provisioned machine must appear on the same network as your provisioning infrastructure services.
You can integrate a compute resource with Satellite and let the compute resource create virtual machines through this integration. You can also provision virtual machines from unintegrated infrastructure as you would bare-metal machines.
- You can use synchronized content repositories for Red Hat Enterprise Linux. For more information, see Synchronizing repositories in Managing content.
- Provide an activation key for host registration. For more information, see Creating an activation key in Managing content.
8.3. Required boot order for network boot Copiar o linkLink copiado para a área de transferência!
This requirement applies to physical and virtual machines that you want to provision in Red Hat Satellite.
- Machines with BIOS interface
The first booting device: network
The second booting device: hard drive
When Satellite manages TFTP boot configuration files, hosts can be provisioned by rebooting.
- Machines with UEFI interface
The first booting device: network
Depending on the UEFI firmware type and configuration, the operating system installer configures the operating system boot loader as the first entry.
You can reboot back into the installer by using the
efibootmgrutility to switch back to booting from network.
8.4. Configuring Capsule to provision Red Hat Enterprise Linux on Secure Boot enabled hosts Copiar o linkLink copiado para a área de transferência!
Secure Boot follows a chain of trust from the start of the host to the loading of Linux kernel modules. The first shim that is loaded determines which distribution can be booted or loaded by using a kexec system call until the next reboot.
You can provision the same RHEL version as your Satellite Server on Secure Boot enabled hosts out of the box and you can skip this procedure. To provision other RHEL versions, you have to provide signed shim and GRUB2 binaries for those RHEL versions.
You have to perform the following configuration steps on each TFTP Capsule for a subnet to provision Secure Boot enabled hosts on that subnet.
Red Hat Enterprise Linux supports Secure Boot on x86_64 architecture only.
Prerequisites
-
Ensure that the
cpiopackage is installed on your Capsule.
Procedure
Set the path for the shim and GRUB2 binaries for the operating system of your host:
BOOTLOADER_PATH="/var/lib/tftpboot/bootloader-universe/pxegrub2/redhat/default/x86_64"
# BOOTLOADER_PATH="/var/lib/tftpboot/bootloader-universe/pxegrub2/redhat/default/x86_64"Copy to Clipboard Copied! Toggle word wrap Toggle overflow If you require specific versions of the shim and GRUB2 binaries for the version of the operating system of your host, replace
defaultwith the Major and Minor version of the operating system separated by a dot. If no Minor version is set, replacedefaultwith the Major version.Red Hat recommends to not use version-specific shim and GRUB2 binaries unless it is really necessary.
Create the directory to store the shim and GRUB2 binaries for the operating system of your host:
install -o foreman-proxy -g foreman-proxy -d $BOOTLOADER_PATH
# install -o foreman-proxy -g foreman-proxy -d $BOOTLOADER_PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
Download the shim and GRUB2 packages for the operating system of your host. You can download the
grub2-efi-x64andshim-x64packages from Package browser on the Red Hat Customer Portal. Extract the shim and GRUB2 binaries:
rpm2cpio /tmp/grub2-efi-x64.rpm | cpio -idv --directory /tmp rpm2cpio /tmp/shim-x64.rpm | cpio -idv --directory /tmp
# rpm2cpio /tmp/grub2-efi-x64.rpm | cpio -idv --directory /tmp # rpm2cpio /tmp/shim-x64.rpm | cpio -idv --directory /tmpCopy to Clipboard Copied! Toggle word wrap Toggle overflow Make the shim and GRUB2 binaries available for host provisioning:
cp /tmp/boot/efi/EFI/redhat/grubx64.efi $BOOTLOADER_PATH/grubx64.efi cp /tmp/boot/efi/EFI/redhat/shimx64.efi $BOOTLOADER_PATH/shimx64.efi ln -sr $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/boot.efi ln -sr $BOOTLOADER_PATH/shimx64.efi $BOOTLOADER_PATH/boot-sb.efi chmod 644 $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/shimx64.efi
# cp /tmp/boot/efi/EFI/redhat/grubx64.efi $BOOTLOADER_PATH/grubx64.efi # cp /tmp/boot/efi/EFI/redhat/shimx64.efi $BOOTLOADER_PATH/shimx64.efi # ln -sr $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/boot.efi # ln -sr $BOOTLOADER_PATH/shimx64.efi $BOOTLOADER_PATH/boot-sb.efi # chmod 644 $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/shimx64.efiCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Verification
Verify the contents of your boot loader directory:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Next steps
- You can now provision Secure Boot enabled Red Hat Enterprise Linux hosts by using the Grub2 UEFI SecureBoot PXE loader.
8.5. Creating hosts with PXE boot provisioning Copiar o linkLink copiado para a área de transferência!
PXE boot provisioning is a method of unattended host provisioning that requires minimal interaction during the process.
You enter the host details on Satellite Server and boot your host. Satellite Server automatically manages the PXE configuration, organizes networking services, and provides the operating system and configuration for the host.
Create a host entry to add the host details. When you save the host entry, Satellite creates the relevant provisioning settings. This also includes creating the necessary directories and files for PXE booting. When you boot the host, the host requests a DHCP lease. The DHCP service responds with a lease which includes the location of the installation content. The host uses the installation content to install the operating system.
During the installation, the host registers to Satellite Server by using the activation key, installs the necessary host management tools from the Red Hat Satellite Client 6 repository, and performs initial configuration.
To use the CLI instead of the Satellite web UI, see the CLI procedure.
Procedure
- In the Satellite web UI, navigate to Hosts > Create Host.
- In the Name field, enter a name for the host.
- Optional: Click the Organization tab and change the organization context to match your requirement.
- Optional: Click the Location tab and change the location context to match your requirement.
- From the Host Group list, select a host group that you want to assign your host to. That host group will populate the form.
- Click the Interfaces tab, and on the interface of the host, click Edit.
Verify that the fields are populated with values. Note in particular:
- Satellite automatically assigns an IP address for the new host.
- In the MAC address field, enter a MAC address of the provisioning interface of the host. This ensures the identification of the host during the PXE boot process.
- The Name from the Host tab becomes the DNS name.
- Ensure that Satellite automatically selects the Managed, Primary, and Provision options for the first interface on the host. If not, select them.
Click OK to save. To add another interface, click Add Interface. You can select only one interface for Provision and Primary.
For more information about network interfaces, see Configuring network interfaces in Managing hosts.
- Click the Operating System tab, and verify that all fields contain values. Confirm each aspect of the operating system.
Optional: Click Resolve in Provisioning template to check the new host can identify the right provisioning templates to use.
For more information about provisioning templates, see Section 5.1, “Provisioning templates”.
-
On the Parameters tab, click Add parameter. Add a parameter named
kt_activation_keys, select the string type, and enter the name of the activation key as the value. The activation key has to belong to the same organization as your host. You can also enter a comma-separated list of multiple activation keys. - Click Submit to save the host details.
CLI procedure
Create the host by using Hammer:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configure the network interface:
hammer host interface update \ --host "_My_Host_Name_" \ --managed true \ --primary true \ --provision true
$ hammer host interface update \ --host "_My_Host_Name_" \ --managed true \ --primary true \ --provision trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
8.6. Configuring Capsule for UEFI HTTP booting Copiar o linkLink copiado para a área de transferência!
You can provision hosts from Satellite by using the UEFI HTTP Boot if the hosts have this capability. Configure your Capsule for UEFI HTTP booting.
Prerequisites
- Ensure that your environment meets the requirements for HTTP booting. For more information, see HTTP booting in Overview, concepts, and deployment considerations.
Procedure
- Ensure that Capsule is associated with the provisioning subnet. In the Satellite web UI, navigate to Infrastructure > Subnets.
- Click Edit Subnet > Capsules.
- Select the Capsule for both TFTP and HTTPBoot options.
- Click OK to save.
8.7. Creating hosts with UEFI HTTP boot provisioning Copiar o linkLink copiado para a área de transferência!
You can provision hosts from Satellite by using the UEFI HTTP Boot if the hosts have this capability. In HTTP boot, configuration files are transferred over HTTP instead of TFTP as in PXE boot. Using this method can help reduce the booting time during host provisioning. HTTP is also more reliable for transfer of large files, such as Live images, than TFTP.
You enter the host details on Satellite Server and boot your host. Satellite Server automatically manages the HTTP boot configuration, organizes networking services, and provides the operating system and configuration for the host.
Create a host entry to add the host details. When you save the host entry, Satellite creates the relevant provisioning settings. This also includes creating the necessary directories and files for PXE booting. When you boot the host, the host requests a DHCP lease. The DHCP service responds with a lease which includes the location of the installation content. The host uses the installation content to install the operating system.
During the installation, the host registers to Satellite Server by using the activation key, installs the necessary host management tools from the Red Hat Satellite Client 6 repository, and performs initial configuration.
To use the CLI instead of the Satellite web UI, see the CLI procedure.
Prerequisites
- Your Capsule has been configured for UEFI HTTP booting. For more information, see Section 8.6, “Configuring Capsule for UEFI HTTP booting”.
Procedure
- In the Satellite web UI, navigate to Hosts > Create Host.
- In the Name field, enter a name for the host.
- Optional: Click the Organization tab and change the organization context to match your requirement.
- Optional: Click the Location tab and change the location context to match your requirement.
- From the Host Group list, select a host group that you want to assign your host to. That host group will populate the form.
- Click the Interfaces tab, and on the interface of the host, click Edit.
Verify that the fields are populated with values. Note in particular:
- Satellite automatically assigns an IP address for the new host.
- In the MAC address field, enter a MAC address of the provisioning interface of the host. This ensures the identification of the host during the PXE boot process.
- The Name from the Host tab becomes the DNS name.
- Ensure that Satellite automatically selects the Managed, Primary, and Provision options for the first interface on the host. If not, select them.
Click OK to save. To add another interface, click Add Interface. You can select only one interface for Provision and Primary.
For more information about network interfaces, see Configuring network interfaces in Managing hosts.
- Click the Operating System tab, and verify that all fields contain values. Confirm each aspect of the operating system.
- From the PXE Loader list, select Grub2 UEFI HTTP.
Optional: Click Resolve in Provisioning template to check the new host can identify the right provisioning templates to use.
For more information about provisioning templates, see Section 5.1, “Provisioning templates”.
-
On the Parameters tab, click Add parameter. Add a parameter named
kt_activation_keys, select the string type, and enter the name of the activation key as the value. The activation key has to belong to the same organization as your host. You can also enter a comma-separated list of multiple activation keys. - Click Submit to save the host details.
CLI procedure
Create the host by using Hammer:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configure the network interface:
hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision true
$ hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
8.8. Deploying SSH keys during provisioning Copiar o linkLink copiado para a área de transferência!
Use this procedure to deploy SSH keys added to a user during provisioning. For information on adding SSH keys to a user, see Managing SSH Keys for a User in Administering Red Hat Satellite.
Procedure
- In the Satellite web UI, navigate to Hosts > Templates > Provisioning Templates.
- Create a provisioning template, or clone and edit an existing template. For more information, see Section 5.3, “Creating provisioning templates”.
- In the template, click the Template tab.
In the Template editor field, add the
create_userssnippet to the%postsection:<%= snippet('create_users') %><%= snippet('create_users') %>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Select the Default checkbox.
- Click the Association tab.
- From the Application Operating Systems list, select an operating system.
- Click Submit to save the provisioning template.
Create a host that is associated with the provisioning template or rebuild a host using the operating system associated with the modified template. For more information, see Creating a Host in Managing hosts.
The SSH keys of the Owned by user are added automatically when the
create_userssnippet is executed during the provisioning process. You can set Owned by to an individual user or a user group. If you set Owned by to a user group, the SSH keys of all users in the user group are added automatically.
8.9. Using iPXE to reduce provisioning times Copiar o linkLink copiado para a área de transferência!
iPXE is an open-source network-boot firmware. It provides a full PXE implementation enhanced with additional features, such as booting from an HTTP server. For more information about iPXE, see iPXE website.
The iPXE network boot is deprecated and will be removed in a future release.
You can use iPXE if the following restrictions prevent you from using PXE:
- A network with unmanaged DHCP servers.
- A PXE service that is unreachable because of, for example, a firewall restriction.
- A TFTP UDP-based protocol that is unreliable because of, for example, a low-bandwidth network.
8.9.1. Prerequisites for using iPXE Copiar o linkLink copiado para a área de transferência!
You can use iPXE to boot virtual machines in the following cases:
- Your virtual machines run on a hypervisor that uses iPXE as primary firmware.
- Your virtual machines are in BIOS mode. In this case, you can configure PXELinux to chainboot iPXE and boot by using the HTTP protocol.
For booting virtual machines in UEFI mode by using HTTP, you can follow Section 8.7, “Creating hosts with UEFI HTTP boot provisioning” instead.
Supportability
Red Hat does not officially support iPXE in Red Hat Satellite. For more information, see Supported architectures and kickstart scenarios in Satellite 6 in the Red Hat Knowledgebase.
Host requirements
- The MAC address of the provisioning interface matches the host configuration.
- The provisioning interface of the host has a valid DHCP reservation.
- The NIC is capable of PXE booting. For more information, see supported hardware on ipxe.org for a list of hardware drivers expected to work with an iPXE-based boot disk.
- The NIC is compatible with iPXE.
8.9.2. Configuring iPXE environment Copiar o linkLink copiado para a área de transferência!
Configure an iPXE environment on all Capsules that you want to use for iPXE provisioning.
In Red Hat Enterprise Linux, security-related features of iPXE are not supported and the iPXE binary is built without security features. For this reason, you can only use HTTP but not HTTPS. For more information, see Red Hat Enterprise Linux HTTPS support in iPXE.
Prerequisites
If you want to use Capsule Servers instead of your Satellite Server, ensure that you have configured your Capsule Servers accordingly.
ImportantIt is essential to add your Capsule Server to the list of trusted proxies on Satellite Server!
For more information, see Configuring Capsule for host registration and provisioning in Installing Capsule Server.
Procedure
Enable the TFTP and HTTPboot services on your Capsule:
satellite-installer \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp true
# satellite-installer \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow Install the
ipxe-bootimgspackage on your Capsule:satellite-maintain packages install ipxe-bootimgs
# satellite-maintain packages install ipxe-bootimgsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Copy iPXE firmware to the TFTP directory.
Copy the iPXE firmware with the Linux kernel header:
cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/
# cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy the UNDI iPXE firmware:
cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0
# cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Correct the SELinux file contexts:
restorecon -RvF /var/lib/tftpboot/
# restorecon -RvF /var/lib/tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow Set the HTTP URL.
If you want to use Satellite Server for booting, reconfigure your Satellite Server:
satellite-installer \ --foreman-proxy-dhcp-ipxefilename "http://satellite.example.com/unattended/iPXE?bootstrap=1"
# satellite-installer \ --foreman-proxy-dhcp-ipxefilename "http://satellite.example.com/unattended/iPXE?bootstrap=1"Copy to Clipboard Copied! Toggle word wrap Toggle overflow If you want to use Capsule Server for booting, reconfigure your Capsule Server:
satellite-installer --foreman-proxy-dhcp-ipxe-bootstrap true
# satellite-installer --foreman-proxy-dhcp-ipxe-bootstrap trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
8.9.3. Booting virtual machines Copiar o linkLink copiado para a área de transferência!
Some virtualization hypervisors use iPXE as primary firmware for PXE booting. If you use such a hypervisor, you can boot virtual machines without TFTP and PXELinux.
Booting a virtual machine has the following workflow:
- Virtual machine starts.
- iPXE retrieves the network credentials, including an HTTP URL, by using DHCP.
- iPXE loads the iPXE bootstrap template from Capsule.
- iPXE loads the iPXE template with MAC as a URL parameter from Capsule.
- iPXE loads the kernel and initial RAM disk of the installer.
Prerequisites
Your hypervisor must support iPXE. The following virtualization hypervisors support iPXE:
- libvirt
- You have configured your iPXE environment. For more information, see Section 8.9.2, “Configuring iPXE environment”.
You can use the original templates shipped in Satellite as described below. If you require modification to an original template, clone the template, edit the clone, and associate the clone instead of the original template. For more information, see Section 5.4, “Cloning provisioning templates”.
Procedure
- In the Satellite web UI, navigate to Hosts > Templates > Provisioning Templates.
-
Search for the
Kickstart default iPXEtemplate. - Click the name of the template.
- Click the Association tab and select the operating systems that your host uses.
- Click the Locations tab and add the location where the host resides.
- Click the Organizations tab and add the organization that the host belongs to.
- Click Submit to save the changes.
- In the Satellite web UI, navigate to Hosts > Operating systems and select the operating system of your host.
- Click the Templates tab.
-
From the iPXE template list, select the
Kickstart default iPXEtemplate. - Click Submit to save the changes.
- In the Satellite web UI, navigate to Hosts > All Hosts.
- In the Hosts page, select the host that you want to use.
- Select the Operating System tab.
-
Set PXE Loader to
iPXE Embedded. - Select the Templates tab.
- In Provisioning Templates, click Resolve and verify that the iPXE template resolves to the required template.
- Click Submit to save host settings.
8.9.4. Chainbooting iPXE from PXELinux Copiar o linkLink copiado para a área de transferência!
You can set up iPXE to use a built-in driver for network communication (ipxe.lkrn) or Universal Network Device Interface (UNDI) (undionly-ipxe.0). You can choose to load either file depending on the networking hardware capabilities and iPXE driver availability.
UNDI is a minimalistic UDP/IP stack that implements TFTP client. However, UNDI cannot support other protocols like HTTP. To use HTTP with iPXE, use the iPXE build with built-in drivers (ipxe.lkrn).
Chainbooting iPXE has the following workflow:
- Host powers on.
- PXE driver retrieves the network credentials by using DHCP.
-
PXE driver retrieves the PXELinux firmware
pxelinux.0by using TFTP. - PXELinux searches for the configuration file on the TFTP server.
-
PXELinux chainloads iPXE
ipxe.lkrnorundionly-ipxe.0. - iPXE retrieves the network credentials, including an HTTP URL, by using DHCP again.
- iPXE chainloads the iPXE template from your Templates Capsule.
- iPXE loads the kernel and initial RAM disk of the installer.
Prerequisites
- You have configured your iPXE environment. For more information, see Section 8.9.2, “Configuring iPXE environment”.
You can use the original templates shipped in Satellite as described below. If you require modification to an original template, clone the template, edit the clone, and associate the clone instead of the original template. For more information, see Section 5.4, “Cloning provisioning templates”.
Procedure
- In the Satellite web UI, navigate to Hosts > Templates > Provisioning Templates.
Search for the required PXELinux template:
-
PXELinux chain iPXEto useipxe.lkrn -
PXELinux chain iPXE UNDIto useundionly-ipxe.0
-
- Click the name of the template you want to use.
- Click the Association tab and select the operating systems that your host uses.
- Click the Locations tab and add the location where the host resides.
- Click the Organizations tab and add the organization that the host belongs to.
- Click Submit to save the changes.
-
On the Provisioning Templates page, search for the
Kickstart default iPXEtemplate. - Click the name of the template.
- Click the Association tab and associate the template with the operating system that your host uses.
- Click the Locations tab and add the location where the host resides.
- Click the Organizations tab and add the organization that the host belongs to.
- Click Submit to save the changes.
- In the Satellite web UI, navigate to Hosts > Operating systems and select the operating system of your host.
- Click the Templates tab.
- From the PXELinux template list, select the template you want to use.
-
From the iPXE template list, select the
Kickstart default iPXEtemplate. - Click Submit to save the changes.
- In the Satellite web UI, navigate to Configure > Host Groups, and select the host group you want to configure.
- Select the Operating System tab.
- Select the Architecture and Operating system.
Set the PXE Loader:
-
Select
PXELinux BIOSto chainboot iPXE (ipxe.lkrn) from PXELinux. -
Select
iPXE Chain BIOSto loadundionly-ipxe.0directly.
-
Select
8.10. PXE loaders Copiar o linkLink copiado para a área de transferência!
In Satellite, a PXE loader defines the filename DHCPv4 option to use during provisioning. Satellite deploys the required files to TFTP Capsule.
Limitations
- Red Hat does not provide support for iPXE workflows.
| PXE loader option | filename value | Use for |
|---|---|---|
| None | No filename passed | Non-PXE booting, for example HTTP booting with iPXE or image-based provisioning |
| PXELinux BIOS |
| BIOS machines with PXE booting |
| PXELinux UEFI |
| UEFI machines with PXE booting |
| Grub2 BIOS |
| BIOS machines with PXE booting |
| Grub2 UEFI |
| UEFI machines with PXE boot using GRUB2 |
| Grub2 UEFI SecureBoot |
| SecureBoot-enabled UEFI machines with PXE booting |
| Grub2 UEFI HTTP |
| UEFI machines with HTTP booting |
| Grub2 UEFI HTTPS |
| UEFI machines with HTTP booting over HTTPS |
| iPXE Embedded | Satellite iPXE URL | Machines with iPXE embedded in their NIC firmware |
| iPXE UEFI HTTP |
| UEFI machines with HTTP boot using iPXE implementation |
| iPXE Chain BIOS |
| BIOS machines with PXE boot chainloading iPXE executable |
| iPXE Chain UEFI |
| UEFI machines with PXE boot chainloading iPXE executable |