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

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.

Note

When provisioning systems from Capsule, the Content View assigned to the Capsule must contain the kickstart repositories for the Red Hat Enterprise Linux version being provisioned.

13.2.1. Using a Kickstart Repository as an Installation Medium

Satellite contains a set of kickstart repositories that you can use as an installation medium for hosts.

To Use a Kickstart Repository as an Installation Medium

  1. Add the synchronized kickstart repository that you want to use as an installation medium to the existing Content View or create a new Content View and add the kickstart repository there.
  2. Publish a new version of the Content View where the kickstart repository is added and promote it to a required lifecycle environment. See Chapter 7, Managing Content Views for more information.
  3. Create a host that uses a kickstart repository as an installation medium:

    1. Navigate to Hosts > All Hosts and click Create Host.
    2. Select the corresponding lifecycle environment from the Lifecycle Environment list.
    3. Select the corresponding Content View from the Content View list.
    4. Select the corresponding content source from the Content Source list.
    5. Navigate to the Operating System tab and select the corresponding architecture and operating system.
    6. Complete all the remaining required fields and click Submit.

To View the Kickstart Tree

To view the kickstart tree enter the following command:

# hammer medium list --organization "your_organization"

13.2.2. Registering to an Environment

As a part of the kickstart process, Satellite Server creates a kickstart file using a set of provisioning templates and snippets. The subscription_manager_registration snippet controls the registration process. This snippet does two main functions:

  • It registers your provisioned system to Satellite Server using an activation key that you select during provisioning.
  • It installs katello-agent, which Satellite Server uses to communicate with the system. Most of the default kickstart provisioning templates include this snippet to register systems.

For Web UI Users

Navigate to Hosts > Provisioning templates and click on the subscription_manager_registration snippet to view it.

For CLI Users

Enter the following command to view the subscription_manager_registration snippet:

# hammer template dump --name subscription_manager_registration

If creating your own kickstart template, ensure that you reference this snippet using the following line in your template:

<%= snippet "subscription_manager_registration" %>

13.2.3. Provisioning a New System

When creating a new system, users select 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 installation medium to use

These aspects of the new host have an effect 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. See the Creating a Host section in the Managing Hosts guide to create a host and begin the provisioning process.