Chapter 13. Finalizing Content Management

Content management is only part of Red Hat Satellite 6’s functionality. Red Hat Satellite 6 also provides features for system provisioning, system management, capsule control, monitoring, and reporting. However, content management acts as the initial stage of the Red Hat Satellite 6 ecosystem. In this chapter, we recap on what we have learned about content management through the course of this guide and how it impacts other Red Hat Satellite 6 features.

13.1. Completing Scenario Objectives

This guide presented an end-to-end scenario involving a fictional company called ACME. Through this scenario, this guide has demonstrated how to achieve the following:

Managing Red Hat Subscriptions
Access your Red Hat content in Red Hat Satellite 6 with a Subscription Manifest. Generate the Subscription Manifest, download it from the Customer Portal, and import it into your organization on your Satellite Server. This provides your Satellite environment with access to RPMs, kickstart content, ISOs, and container images from Red Hat’s Content Delivery Network.
Creating a Definitive Media Library (DML)
The foundation for content management involves the creation of a DML. A DML acts as a central library for all master copies of content. Synchronize content from external sources into Red Hat Satellite 6 to form a DML. Such external sources include both Red Hat and custom sources. In addition, use synchronization plans to keep the DML up to date.
Managing Different Content Types
This guide provided examples to manage different content types, such as RPM files, Puppet modules, and container images.
Creating an Application Life Cycle
The application life cycle is a central concept in content management. Create environments in the application life cycle based on the production cycle of your organization. Then, define content views to filter content, publish resulting repositories, and promote them across the environments in the application life cycle. Use activation keys to register systems to a particular environment.
Managing Errata
Use Red Hat Satellite 6’s tools to review and apply errata to registered systems. Each errata contains a set of associated packages, which you can remotely install on applicable systems.
Managing Container Images
Enable your Satellite Server to act as a registry for container images. Synchronize container images from Red Hat and other sources, then use content views to manage and publish them.

13.2. Provisioning Systems

The Satellite Server in our scenario now contains content managed across an application life cycle. Now we can provision systems in specific environments. Let’s look at how this happens when provisioning bare metal systems.

Using Installation Media

The first thing to note is during the Red Hat content import, we synchronized a kickstart tree containing Red Hat Enterprise Linux 7. Red Hat Satellite 6 automatically adds this kickstart tree as an installation medium for your organization. Web UI users can navigate to Hosts > Installation Media and CLI users can view this kickstart tree using the following command:

# hammer medium list --organization "ACME"

The Satellite Server also contains a set of kickstart templates that include the installation medium you select during the provisioning process.

Registering to an Environment

As a part of the kickstart process, the Satellite Server creates a kickstart file using a set of provisioning templates and snippets. One snippet in particular (subscription_manager_registration) controls the registration process. Web UI users can navigate to Hosts > Provisioning Templates and click on the subscription_manager_registration snippet to view it. CLI users can achieve a similar function with the following command:

# hammer template dump --name subscription_manager_registration

The snippet appears as follows:

<% if @host.params['kt_activation_keys'] %>
# add subscription manager
yum -t -y -e 0 install subscription-manager
rpm -ivh <%= subscription_manager_configuration_url(@host) %>

echo "Registering the System"
subscription-manager register --org="<%= @host.rhsm_organization_label %>" --name="<%= @host.name %>" --activationkey="<%= @host.params['kt_activation_keys'] %>"

<% if @host.operatingsystem.name == "RedHat" %>
  # add the rhel rpms to install katello agent
  subscription-manager repos --enable=rhel-*-satellite-tools-*-rpms
<% end %>

echo "Installing Katello Agent"
yum -t -y -e 0 install katello-agent
chkconfig goferd on
<% end %>

This snippet does two main function. First, it registers your provisioned system to the Satellite Server using an activation key that you select during provisioning. Second, it installs katello-agent, which the Satellite Server uses to communicate with the system. Most of the default kickstart provisioning templates include this snippet to register systems. If creating your own kickstart template, make sure to reference this snippet using the following line in your template:

<%= snippet "subscription_manager_registration" %>
Provisioning a New System

When creating a new system, users choose certain aspects from their content management configuration:

  • The application life cycle environment
  • The content view in that environment
  • Puppet classes from the selected environment
  • The desired installation medium

    These aspects of the new host have an affect on packages installed during provisioning, the activation key used for registration, the repositories used for updates, the Puppet modules and their classes to apply to the system during configuration. In addition, you must also specify additional aspects of the host, such as networking information, partitioning tables, capsules, and system-specific parameters used as variables in provisioning templates.

    Web UI users navigate to Hosts > New Host to create a new system. Navigate to each subtab in order (Host, Puppet Classes, Network, Operating System, Parameters, Additional Information) and fill in the required information for your system. When complete, click Submit and the provisioning process begins.

    CLI users use hammer host create to provision a new host.

13.3. Referring to Other Documentation

The following guides provide information on related aspects of Red Hat Satellite 6 and provide example of next steps:

Red Hat Satellite 6 Host Configuration Guide

A guide to using the main Red Hat Satellite 6 features, including infrastructure management and provisioning.

https://access.redhat.com/documentation/en/red-hat-satellite/6.2/paged/host-configuration-guide/

Red Hat Satellite 6 Provisioning Guide

A guide to provisioning physical and virtual hosts from Red Hat Satellite Servers.

https://access.redhat.com/documentation/en/red-hat-satellite/6.2/paged/provisioning-guide/

Red Hat Satellite 6 Puppet Guide

A guide to building your own Puppet module and importing it into Red Hat Satellite 6.

https://access.redhat.com/documentation/en/red-hat-satellite/6.2/paged/puppet-guide/