Chapter 5. Provisioning Concepts

An important feature of Red Hat Satellite is unattended provisioning of hosts. To achieve this, Red Hat Satellite uses DNS and DHCP infrastructures, PXE booting, TFTP, and Kickstart. Use this chapter to understand the working principle of these concepts.

5.1. PXE Booting

Preboot execution environment (PXE) provides the ability to boot a system over a network. Instead of using local hard drives or a CD-ROM, PXE uses DHCP to provide host with standard information about the network, to discover a TFTP server, and to download a boot image. For more information about setting up a PXE server see How to set-up/configure a PXE Server.

5.1.1. PXE Sequence

  1. The host boots the PXE image if no other bootable image is found.
  2. A NIC of the host sends a broadcast request to the DHCP server.
  3. The DHCP server receives the request and sends standard information about the network: IP address, subnet mask, gateway, DNS, the location of a TFTP server, and a boot image.
  4. The host obtains the boot loader image/pxelinux.0 and the configuration file pxelinux.cfg/00:MA:CA:AD:D from the TFTP server.
  5. The host configuration specifies the location of a kernel image, initrd and Kickstart.
  6. The host downloads the files and installs the image.

For an example of using PXE Booting by Satellite Server, see Defining the Provisioning Workflow in the Provisioning Guide.

5.1.2. Requirements

To provision machines through PXE booting ensure that you meet the following requirements:

VM requirements:

  • Ensure you set up a network connection which has access to the DHCP and TFTP servers.

Network requirements:

  • Ensure the UDP ports 67 and 68 are accessible to enable the VM to receive a DHCP offer with the boot options.
  • Ensure the UDP port 69 is accessible so that the VM can access the TFTP server on the Capsule.
  • Ensure the TCP port 80 is accessible to allow the VM to download files and Kickstart templates from the Capsule.

Client requirements:

  • Configure the DHCP relay agent and point to the DHCP server, if the host and DHCP server are separated by a router.
  • Ensure all the network-based firewalls are configured to allow hosts on the subnet to access the Capsule. For more information, see Figure 2.1, “Satellite Topology with Isolated Capsule”.
  • Ensure the subnet to which the host belongs to is DHCP enabled.

Satellite requirements:

  • Ensure DHCP with the correct subnet is enabled using the Satellite installer.
  • Enable TFTP using the Satellite installer.
  • The Subnet must be created and associated with a DHCP Capsule in the web UI to define which Capsule to use while creating a DHCP reservation. The reservation is always made through a Capsule.

5.2. Kickstart

You can use Red Hat Kickstart to automate the installation process of a Red Hat Satellite or Capsule Server by creating a Kickstart file that contains all the information that is required for the installation. For more information about Kickstart, see Kickstart Installations in the Red Hat Enterprise Linux 7 Installation Guide.

5.2.1. Workflow

When you run a Red Hat Satellite Kickstart script, the following workflow occurs:

  1. It specifies the installation location of a Satellite Server or a Capsule Server.
  2. It installs the predefined packages.
  3. It installs Red Hat Subscription Manager.
  4. It uses Activation Keys to subscribe the hosts to Red Hat Satellite.
  5. It installs Puppet, and configures a puppet.conf file to indicate the Red Hat Satellite or Capsule instance.
  6. It enables Puppet to run and request a certificate.
  7. It runs user defined snippets.