Chapter 9. Synchronizing Content Between Satellite Servers

Red Hat Satellite 6.6 uses Inter-Satellite Synchronization (ISS) to synchronize content Satellite Servers, or between organizations on Satellite Server.

You can use ISS in the following scenarios:

  • If you have both connected and disconnected Satellite Servers, and want to copy content from the connected servers to the disconnected servers. For example, you require complete isolation of management infrastructure for security or other purposes.
  • If you want to copy some but not all content from your Satellite Server to other Satellite Servers. For example, you have Content Views that your IT department validates on Satellite Server, and you want to copy content from those Content Views to other Satellite Servers.
  • If you want to clone a Content View from one organization to another organization on Satellite Server.

You cannot use ISS to synchronize content from Satellite Server to Capsule Server. Capsule Server supports synchronization natively. For more information, see Capsule Server Overview in Planning for Red Hat Satellite 6.

9.1. Exporting a Content View Version

You can export a version of a Content View to an archive file from Satellite Server and use this archive file to create the same Content View version on another Satellite Server or on another Satellite Server organization. Satellite does not export composite Content Views. The exported archive file contains the following data:

  • A JSON file containing Content View version metadata
  • An archive file containing all the repositories included into the Content View version

Satellite Server exports only RPM and kickstart files added to a version of a Content View. Satellite does not export the following content:

  • Puppet content
  • Docker content
  • OSTree content
  • Content View definitions and metadata, such as package filters.

Changes to the hammer content-view version export command

The new hammer content-view version export and hammer content-view version import commands work differently from the commands in the previous versions of Satellite. The old feature is still available with the hammer content-view version export-legacy command. The old feature has the following functionality that does not exist in the new feature:

  1. You can patch a disconnected Satellite Server from a connected Satellite Server directly. hammer content-view version export-legacy exports the CDN structure, therefore, you do not have to use a DVD ISO from the Red Hat Customer Portal.
  2. When exporting a Content View that contains non-yum content, hammer content-view version export-legacy skips the non-yum content and exports the Content View, while hammer content-view version export prompts you to remove a non-yum repository and fails.

For more information about using the old feature, see Synchronizing Content Between Satellite Servers in the Satellite 6.4 Content Management Guide.

Prerequisites

To export a Content View, ensure that the Satellite Server where you want to export meets the following conditions:

  • Ensure that the export directory has free storage space to accommodate the export.
  • Ensure that the /var/lib/pulp/ directory has free storage space equivalent to the size of the repositories being exported for temporary files created during the export process.
  • Ensure that the /var/cache/pulp directory has free storage space equivalent to twice of the size of the repository being exported for temporary files created during the export process.
  • Ensure that you set download policy to Immediate for all repositories within the Content View you export. For more information, see Section 5.4, “Download Policies Overview”.
  • Ensure that you clear the Mirror on Sync check box for the repositories that you import on the repository settings page.
  • Ensure that you synchronize Products that you export to the required date.

To Export a Content View Version:

  1. List Content Views to determine the ID of a Content View version you want to export:

    # hammer content-view version list \
    --organization "Default Organization"
  2. Export the version of a Content View. Specify the directory where to store the export with the --export-dir option and the ID of the Content View version that you export with the --id option. The pulp_export_destination setting does not work for this procedure.

    # hammer content-view version export --export-dir export_directory \
    --id content_view_version_ID
  3. Verify that the archive containing the exported version of a Content View is located in the export directory:

    # ls export_directory
    export-1.tar

9.2. Importing a Content View Version

You can use the archive that the hammer content-view version export command outputs to create a version of a Content View with the same content as the exported Content View version. For more information about exporting a Content View version, see Section 9.1, “Exporting a Content View Version”.

When you import a Content View version, it has the same major and minor version numbers and contains the same repositories with the same packages and errata. You can customize the version numbers by changing the major and minor settings in the json file that is located in the exported archive.

Prerequisites

To import a Content View, ensure that the Satellite Server where you want to import meets the following conditions:

Procedure

  1. Copy the archived file with the exported Content View version to the /var/lib/pulp/katello-export directory on the Satellite Server where you want to import.
  2. On the Satellite Server where you want to import, create a Content View with the same name and label as the exported Content View. For more information, see Creating a Content View with Hammer CLI.
  3. Ensure that you enable the repositories that the Products in the exported Content View version include. For more information, see Section 5.7, “Enabling Red Hat Repositories”.
  4. In the Satellite web UI, navigate to Content > Products, click the Yum content tab and add the same Yum content that the exported Content View version includes.
  5. Until BZ#1745081 is resolved, navigate to the /var/lib/pulp/katello-export directory:

    # cd /var/lib/pulp/katello-export
  6. To import the Content View version to Satellite Server, enter the following command:

    # hammer content-view version import \
    --export-tar /var/lib/pulp/katello-export/exported_CV_archive.tar \
    --organization-id Your_Organization_ID

    Note that until BZ#1745081 is resolved, you must enter the full path /var/lib/pulp/katello-export/. Relative paths do not work.

  7. To verify that you import the Content View version successfully, list Content Views for your organization:

    # hammer content-view version list --organization "Your_Organization"