Bookmark this page

Chapter 2.  Manage Software Lifecycles

Abstract

Goal

Create and manage Red Hat software deployment lifecycle environments.

Objectives
  • Enable repositories and products in the Red Hat Satellite library and configure sync plans to keep the library up-to-date.

  • Define a workflow for software promotion by creating lifecycle environments and organizing them into an environment path.

  • Create and publish content views, and promote them to lifecycle environments on an environment path.

Sections
  • Synchronize Red Hat Content (and Guided Exercise)

  • Create Software Lifecycles (and Guided Exercise)

  • Publish and Promote Content Views (and Guided Exercise)

Lab
  • Manage Software Lifecycles

Synchronize Red Hat Content

Objectives

  • Enable repositories and products in the Red Hat Satellite library and configure sync plans to keep the library up-to-date.

Overview of Red Hat Content

In Satellite Server, content refers to the software on hosts that Satellite Server manages. Content includes base operating system packages, middleware services, and user applications. Satellite Server manages subscriptions and content for Red Hat Enterprise Linux hosts. Satellite Server stores Red Hat content that you can associate with defined organizations to serve varying business needs.

For example, consider a company with three organizations: Development, Finance, and Operations. The company purchases a Red Hat subscription that includes the following products:

  • Red Hat Enterprise Linux (RHEL)

  • Red Hat OpenShift Container Platform (RHOCP)

  • Red Hat Satellite

Based on the business needs of each organization, the company deploys only RHOCP for Development and Finance, and deploys only RHEL and Satellite Server for Operations.

A Satellite administrator uses the Red Hat Customer Portal to create subscription manifests with the relevant products, one manifest for each organization, and imports each manifest into Satellite Server under the appropriate organization context. After the manifests are successfully imported, the Satellite administrator can view the products and available subscriptions list under ContentSubscriptions in the web UI in each organization context.

After importing the organization's manifest, the corresponding repositories for the product are now available in the managed hosts of the organization. Managed hosts receive package updates only from products in the organization in which the host is registered.

Continuing with the example, the Development and Finance organization's managed hosts receive package updates only from the RHOCP repositories. The Operations organization's managed hosts receive package updates only from the RHEL and Satellite Server repositories. You can use organizations to manage systems that use multiple products to support various business needs.

Manage Red Hat Products and Repositories

A product in Satellite Server groups related repositories. The product's repositories typically consist of multiple versions, architectures, and supplemental repositories. For Red Hat products, the correct product is automatically created when you enable a Red Hat source repository.

For example, the Red Hat Enterprise Linux for x86_64 product is automatically created to contain the enabled Red Hat Enterprise Linux 9 for x86_64 - BaseOS RPMs 9 and the Red Hat Enterprise Linux 9 for x86_64 - AppStream RPMs 9 repositories. The Satellite Server product grouping enables complete synchronization for repositories with related content. Only Satellite administrators can manage Satellite Server products and repositories.

Within the chosen organization and location context, navigate to ContentProducts to view the available products. Select a product name to list the product's repositories.

Enable Red Hat Product Repositories

Satellite Server can manage any number of registered hosts that run different RHEL versions in one or more organizations. Enable all of the needed repository versions in an organization context to meet the requirements for all of the organization's managed hosts. When enabling repositories, if the corresponding product exists, then the repository is added to the product. If the product does not yet exist, then it is created.

To enable a repository in an organization:

  • Ensure that the correct organization context is set for this task.

  • Navigate to ContentRed Hat Repositories to list the available and enabled repositories for the current organization.

  • Enter the name of the required repository and click Search. Matching repositories appear under Available Repositories.

  • Expand the required repository and click the plus sign (+) next to the repository architecture information to enable it.

Disable Red Hat Product Repositories

Disable a repository when the organization no longer needs it. Disabled repositories are not removed from the Satellite storage, because repository content in file system storage is shared by all organizations.

To disable a repository in an organization:

  • Ensure that the correct organization context is set for this task.

  • Navigate to ContentRed Hat Repositories.

  • In the Enabled Repositories list, click the minus sign (-) next to the repository to disable it.

Define Content Synchronization

Satellite Server uses content synchronization to maintain an exact local copy of Red Hat Content Delivery Network (CDN) repositories. Satellite Server stores the retrieved content on its local file system. Initial content synchronization is commonly performed manually. Create a periodic sync plan to automate content synchronization.

To synchronize Red Hat product repositories:

  • Ensure that the correct organization context is set for this task.

  • To manually synchronize repositories, navigate to ContentProducts.

  • Click the name of the product whose repositories you want to synchronize.

  • Select the checkbox for the repositories to synchronize, and click Sync Now.

Note

The time to complete synchronization depends on the repository size and the environment's network bandwidth.

Create Sync Plans

Synchronized repositories are current, with security advisories, bug fixes, and product enhancements that are readily available for immediate or scheduled deployment. A sync plan automates repository synchronization. You can use either the Satellite Server web UI or the hammer command to create sync plans. Only Satellite administrators can create and manage sync plans.

You would create one or more sync plans and assign them to products and repositories. If the sync plan attributes can be the same for all products, then only one sync plan is necessary. Create multiple sync plans only when unique products require different sync plan attributes. This strategy can reduce unnecessary network traffic.

To create a sync plan:

  • Ensure that the correct organization context is set for this task.

  • Navigate to ContentSync Plans and then click Create Sync Plan.

  • On the New Sync Plan page, complete the fields in the following table, and then click Save to create the sync plan.

FieldDescription
Name A name for the sync plan.
Description A meaningful description of the sync plan.
Interval The interval to run the sync plan. Choose from hourly, daily, and weekly, or choose custom cron to create your own sync plan schedule.
Start Date The date to start the sync plan.
Start Time Time of the day to start the sync plan.

When you define sync plan attributes, consider repository volume and the periodic need for the latest content. Shorter sync intervals typically create smaller relative transfer sizes. To reduce network bandwidth costs, consider scheduling fewer transfers for time frames with less utilization. The custom cron Interval option is useful for handling more complex scheduling requirements.

Automate Product Synchronization with Sync Plans

You can apply a sync plan to one or more products to automate repository synchronization.

To automate product synchronization with a sync plan:

  • Ensure that the correct organization context is set for this task.

  • Navigate to ContentSync Plans to view the existing sync plans.

  • Click the name of the required sync plan and then click the Products tab.

  • Click Add and select the checkbox for the intended product, and then click Add Selected.

To remove a product from a sync plan:

  • Ensure that the correct organization context is set for this task.

  • Navigate to ContentSync Plans to view the existing sync plans.

  • Click the name of the required sync plan and then click the Products tab.

  • Click List/Remove, select the checkbox for the product to remove, and then click Remove Selected.

Define Download Policies

Satellite Server uses download policies to control downloading content during content synchronization. General download policy is set by defining the default policy, which can be overridden by a policy that is set on an individual repository. Download behavior is also affected by Capsule Server settings. For example, if a Capsule Server is configured for immediate download of a repository, then the Satellite Server is forced to download that repository's packages immediately despite having a different Satellite Server policy.

The On Demand download policy downloads only the metadata during the synchronization. After the initial synchronization, packages are downloaded only when hosts request them.

The Immediate download policy downloads all the metadata and the packages immediately during the synchronization.

The Background download policy is deprecated and is no longer available in the current version.

To set the default repository download policy:

  • Ensure that the correct organization context is set for this task.

  • Navigate to AdministerSettings and then click the Content tab.

  • In the Name column, locate the Default Repository download policy entry and click the pencil icon in the Value column.

  • Select the required download policy from the list, and confirm your selection.

Synchronize Content from the CLI

You can use the following hammer command to synchronize a repository by using a unique identifier. To specify the organization context when performing any task from the command line, use the hammer command --organization option.

[root@satellite ~]# hammer repository list --fields THIN --organization myorg
---|---------------------------------------------------------
ID | NAME
---|---------------------------------------------------------
1  | Red Hat Enterprise Linux 9 for x86_64 - AppStream RPMs 9
2  | Red Hat Enterprise Linux 9 for x86_64 - BaseOS RPMs 9
3  | Red Hat Satellite Client 6 for RHEL 9 x86_64 RPMs
---|---------------------------------------------------------
[root@satellite ~]# hammer repository synchronize --id 2
[.....................................................................] [100%]
...output omitted...

References

For more information, refer to the Synchronizing Repositories chapter in the Red Hat Satellite 6.11 Managing Content Guide at https://access.redhat.com/documentation/en-us/red_hat_satellite/6.11/html-single/managing_content/index#Synchronizing_Repositories_content-management

Revision: rh403-6.11-3ad886e