Product SiteDocumentation Site

5.5. Kickstart Trees And Software Content

You must have at least one kickstart tree installed on your Satellite in order to use kickstart provisioning. Satellite supports both automatic and manual kickstart tree installation.

5.5.1. Automatically Installed Kickstart Trees

Automatic kickstart tree installation is a function of normal channel synchronization. For each distribution you intend to base kickstarts on, you must synchronize that distribution's base channel along with its corresponding RHN Tools channel to your Satellite. If you are using a connected Satellite, you will synchronize your Satellite with Red Hat's servers directly. If your Satellite is disconnected, you'll need to obtain and sync from disconnected channel dumps (again available from Red Hat's servers). Regardless of the mechanism, the act of synching the channel automatically creates a corresponding kickstart tree for that distribution.
For example, if you want to use Red Hat Enterprise Linux 5 for x86 architecture, you would want to sync the rhel-i386-server-5 channel and it's corresponding rhn-tools channel labeled rhn-tools-rhel-i386-server-5.
For more information on syncing content, refer to Section 6.2 of the Satellite Installation Guide.

5.5.2. Manually Installed Kickstart Trees

If you want to use Satellite to kickstart a custom distribution, a distribution not supported by Red Hat, or a beta version of Red Hat Enterprise Linux, you need to create a corresponding kickstart tree. To install a kickstart tree in one of these situations, you need to perform the following tasks:
  1. Obtain the installation ISO from wherever is appropriate for the distribution
  2. Copy the ISO to your satellite server and mount it to /mnt/iso
  3. Copy the contents of the ISO to a custom location. It is recommended that you create a directory within /var/satellite for all of your custom distros. For example, you might copy a RHEL beta distribution's contents to /var/satellite/custom-distro/rhel-i386-server-5.3-beta/
  4. Create a custom software channel with the Satellite web interface. (Navigate to Channel => Manage Software Channels => Create Channel) and create a base channel with an appropriate name and label. In keeping with the example RHEL beta version above, we might use the label rhel-5.3-beta.
  5. Push the software packages (rpm files) from the tree location to the newly created software channel. Given our example above, you would do so by running
    rhnpush --server=http://localhost/APP -c 'rhel-5.3-beta' -d /var/satellite/custom-distro/rhel-i386-server-5.3-beta/Server/
    
    Note that the sub-directory within the tree may be different depending on your distribution. Once this step is complete, you may delete all of the RPM files from the appropriate directory within the tree path. In this example, run the following:
    rm /var/satellite/custom-distro/rhel-i386-server-5.3-beta/Server/*.rpm
    
    The packages are still stored on the Satellite server within the channel and thus are not needed within the kickstart tree. Although this entire step is optional, having the packages in a software channel allows them to be installed onto the system as needed (using yum) and not solely at the time of kickstart.
  6. Create the Distribution within the Satellite's web interface. Navigate to Systems => Kickstart => Distributions => Create New Distribution. Provide an appropriate label, the full tree path (/var/satellite/custom-distro/rhel-i386-server-5.3-beta/ in our case), select the base channel we created earlier, and then the correct Installer Generation. We would select Red Hat Enterprise Linux 5 for this distribution. Finally select Create Kickstart Distribution.
  7. You may want to clone a rhn-tools child channel from an existing Red Hat Enterprise Linux base channel to be a child of your newly created base channel.
Creating Kickstart Distribution
Creating Kickstart Distribution
Figure 5.1. Creating Kickstart Distribution

5.5.3. Required Distribution Files

Satellite expects certain files to exist in specified locations within the Kickstart Tree and these locations will differ depending on the architecture of the system. The table below spells out where kernel and initrd are expected to reside for the different architectures.
Architecture kernel Initial RAM Disk image
s390x <TREE_PATH>/images/kernel.img <TREE_PATH>/images/initrd.img
PPC <TREE_PATH>/ppc/ppc64/vmlinuz <TREE_PATH>/images/pxeboot/vmlinux
All others <TREE_PATH>/images/pxeboot/vmlinuz <TREE_PATH>/images/pxeboot/initrd.img
Table 5.1. Required Distribution Files by Architecture

5.5.4. Required Packages

If using a custom distribution be sure that the packages koan and spacewalk-koan are available within a child channel of the distribution's base channel. These packages are available from any rhn-tools channel, and you may want to clone an existing rhn-tools channel in order to have access to these packages from your custom channel.