6.2. Provisioning a Host Using a Boot Disk

The Satellite network provisioning model is usually based on PXE, which requires DHCP and TFTP services. Because not all Satellite deployments have these services available, the boot disk provisioning feature provides host-specific, full host, and generic boot disk image types to enable provisioning in such deployments.
Each boot disk image type has its own advantages, but all are designed for environments without control of the network infrastructure; consequently, no DHCP reservations or TFTP settings are needed.
Boot images are written as hybrid ISO images (usable as ISO files or USB disks), and can be booted either from physical media or from a virtual disk or CD.

Table 6.1. Comparison of Boot Image Type Characteristics

Type Generic DHCP Required DHCP ReservationPreregister HostOperating System Specific
Host-specific image No No NoYesNo
Full host imageNoYesNoYesYes
Generic imageYesYesNoYesNo

6.2.1. Prerequisites

All of the requisite packages for the Satellite boot disk feature are normally installed by default. Ensure you address the following conditions before proceeding:
  • Regardless of image type you use, the host must be registered to Satellite before you boot from the image. Hosts are identified by their MAC or IP address to provide the correct provisioning template if the host is in build mode.
  • For host-specific images, ensure the host IP addresses and subnets are populated, and the subnet's gateway, subnet mask, and DNS resolvers are correctly configured. Navigate to InfrastructureSubnets to configure these values.
  • To permit access to images for non-administrative users, add the "Boot disk access" role to a user or add the "download_bootdisk" permission to an existing role.
  • Ensure that the appropriate iPXE provisioning templates are available. Red Hat Enterprise Linux uses the "Kickstart default iPXE" template.

    Note

    gPXE images are currently unsupported.
    Host and generic image types are based on iPXE technology, which supports a different set of hardware drivers from PXELinux. See http://ipxe.org/appnote/hardware_drivers for the list of supported hardware.
    If you encounter issues with iPXE, full host images contain built-in kernels and RAM disks and can load on any kind of network card, including those without PXE support.
  • Ensure that the appropriate standard templates are available. Red Hat Enterprise Linux uses uses "Kickstart RHEL default" as the provisioning template.

Important

If you are not using the default Satellite kickstart provisioning templates, then ensure the templates you use provide the static IP details required to configure the operating system. For a kickstart file, you can use the following configuration:
network --bootproto <%= @static ? "static" : "dhcp" %> --hostname <%= @host %> <%= " --ip=#{@host.ip} --netmask=#{@host.subnet.mask} --gateway=#{@host.subnet.gateway} --nameserver=#{@host.subnet.dns_primary},#{@host.subnet.dns_secondary}" if @static %>

6.2.2. Creating Boot Disk Images

This section describes how to create host-specific, full host, and generic boot disk images. You can use either the web UI or the command line to create the images; both methods are described.

Note

To create images using the command line, ensure the ruby193-rubygem-foreman_bootdisk package is installed. This is normally installed by default.

6.2.2.1. Creating Host-specific Images

You can use the host and subnet data in Satellite to create host-specific images with static networking. The behavior is dynamic; the image chain-loads from Satellite and consequently the current operating system and build state are provided by Satellite instead of being stored in the image.

Procedure 6.2. To Create a Host-specific Image Using the Web UI:

  1. Navigate to HostsAll hosts and click the appropriate host name.
  2. Click Boot disk and then click Host hostname image.
To create a host-specific image using the hammer CLI tool, run the following command:
# hammer bootdisk host --host client.example.com
To create a host-specific image from the command line on the Satellite server, run the following command:
# foreman-rake bootdisk:generate:host NAME=client.example.com OUTPUT=/tmp
Set the value of OUTPUT to a suitable destination path, either a directory or a file. The foreman user must have write access to the specified destination.

6.2.2.2. Creating Full Host Images

Full host images are similar to host-specific images, but instead of chain loading from Satellite, these images contain the initial operating system boot loader. This is useful for hosts that fail to chain load, but the downside is that the image may become out of date if the host operating system, boot loader, or templates change, or if build tokens are required and they expire.

Procedure 6.3. To Create a Full Host Image Using the Web UI:

  1. Navigate to HostsAll hosts and click the appropriate host name.
  2. Click Boot disk and then click Full Host hostname image.
Full host images take longer to create because the process downloads the operating system boot loaders, which can be quite large.
To create a full host image using the hammer CLI tool, run the following command:
# hammer bootdisk host --host client.example.com --full true
To create a full host image from the command line on the Satellite server, run the following command:
# foreman-rake bootdisk:generate:full_host NAME=client.example.com

6.2.2.3. Creating Generic Images

Generic images provide a single ISO file that can be used by all registered hosts. IP address details cannot be stored inside these images, however, which means that the network must provide a DHCP pool. You use the generic image to boot the host, which then contacts Satellite for the template of a registered host matching a MAC address or the IP the host was assigned by DHCP.
The installation can continue using either the DHCP-assigned or static IP address, depending on how the operating system iPXE template is configured. You can use the kickstart file to specify additional network configuration options.

Procedure 6.4. To Create a Generic Image from the Web UI:

  1. Navigate to HostsAll hosts and click the appropriate host name.
  2. Click Boot disk and then click Generic image.
To create a generic image using the hammer CLI tool, run the following command:
# hammer bootdisk generic
To create a generic image from the command line on the Satellite server, run the following command:
# foreman-rake bootdisk:generate:generic

6.2.2.4. Creating USB Images

Whenever you create an ISO file it is also passed through the isohybrid command, which means that the resulting file is also bootable as a disk, and suitable for copying to a USB device.
To copy the ISO file to a USB device, run the following command. Ensure the device name and input file are correct for your environment:
# dd if=fqdn.iso of=/dev/sdX