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 thesubscription_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/