Red Hat Training

A Red Hat training course is available for Red Hat Satellite

Chapter 8. Content and Synchronization

Your Red Hat Satellite Server installation is complete. The next step is to provide it with packages and channels for use with client systems. This chapter explains how to import content and keep it up-to-date.
Ensure you meet the following prerequisites before performing a Red Hat Satellite synchronization:
  • A successful Red Hat Satellite installation.
  • The Red Hat Satellite requires access to one of the following content sources:
    • The Red Hat Content Delivery Network (CDN) via the Internet.
    • Red Hat Network Channel Content ISOs.
    • Red Hat Satellite Exporter data.
The tool used to synchronize content depends on the content source. If content is being synchronized from the Red Hat Content Delivery Network (CDN) via the Internet, the Content Delivery Network Synchronization (cdn-sync) tool is used. If content is being synchronized from Red Hat Network Channel Content ISOs, or from one Satellite instance to another Satellite instance, the Satellite Synchronization (satellite-sync) tool is used. The sections in this chapter explain the use of each tool and its use with each content source type.
The new tool was introduced with Red Hat Satellite 5.8 because of the retirement of the Red Hat Network. To ease the transition, the cdn-sync tool has many of the same parameters as the satellite-sync tool.

8.1. Red Hat Satellite CDN Synchronization Tool

The Red Hat Satellite CDN Synchronization Tool (cdn-sync) enables a Satellite server to synchronize its repositories, and associated metadata, with the Red Hat Content Delivery Network (CDN).

Important

The cdn-sync tool imports a large amount of data, especially on newly installed Red Hat Satellite servers. If your database has performance issues after a significant amount of data changes, consider gathering statistics on the database.
In its simplest usage, run the cdn-sync command, and the synchronization of all packages in all available repositories begins. The total amount of data to be downloaded can be very large, so Red Hat recommends you first evaluate the amount of data to be downloaded, and determine a suitable strategy to minimize its impact on network load. For example, you could identify those channels with the most content, and schedule their synchronization accordingly.
In earlier versions of Red Hat Satellite, the satellite-sync -l command would list the number of packages per channel by default. The Red Hat CDN is repository based, and does not allow the number of packages per repository to be shown in real time. To provide this information, you must use the --count-packages parameter. The first time this parameter is used, it may take a long time time to process the data, depending on your manifest and the number of accessible repositories and channels. However the first run creates a cache, so subsequent runs are faster. For example, the first run might take an hour, and subsequent runs from 5 to 10 minutes.
The cdn-sync tool logs its activity in the file /var/log/rhn/cdnsync.log. It also logs the synchronization of each channel in /var/log/rhn/cdnsync/channel_name.

8.1.1. Calculating Data Download Size

To calculate the amount of data to be downloaded, list all channels and their total disk space sizes.
# cdn-sync --list-channels --count-packages
Extract from output of cdn-sync --list-channels --count-packages command.
12:18:48   . rhel-x86_64-server-7             14232 packages (18.4G)
12:18:48   . rhel-x86_64-server-7-htb         5200 packages (4.1G)
12:18:48   . rhel-x86_64-server-7.1.eus       8056 packages (10.5G)
12:18:48   . rhel-x86_64-server-7.2.eus       11697 packages (15.3G)

8.1.2. Synchronize Select Channels

When you have determined the names of channels to be synchronized, list them in the cdn-sync command's --channel parameter. Note that the --channel parameter accepts only one channel. To synchronize multiple channels, either repeat the cdn-sync command, or repeat the --channel parameter.
Example cdn-sync command to synchronize the four example channels in Section 8.1.1, “Calculating Data Download Size”.
# cdn-sync --channel rhel-x86_64-server-7 \
--channel rhel-x86_64-server-7-htb \
--channel rhel-x86_64-server-7.1.eus \
--channel rhel-x86_64-server-7.2.eus