Chapter 9. Synchronizing Content Between Satellite Servers
Red Hat Satellite 6.7 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:
-
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. -
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, whilehammer 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.3, “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:
List Content Views to determine the ID of a Content View version you want to export:
# hammer content-view version list \ --organization "Default Organization"
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. Thepulp_export_destination
setting does not work for this procedure.# hammer content-view version export --export-dir export_directory \ --id content_view_version_ID
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:
- If you want to import a Content View to Satellite in a disconnected environment, you must configure Satellite to synchronize content with a local CDN server and then synchronize content that the CV you export contains. For more information, see Appendix B, Configuring Satellite to Synchronize Content with a Local CDN Server.
- Ensure that you set download policy to Immediate for all repositories within the Content View you export. For more information, see Section 5.3, “Download Policies Overview”.
- Ensure that you clear the Mirror on Sync check box for the repositories that you import on the repository settings page.
Procedure
-
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. - 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.
- Ensure that you enable the repositories that the Products in the exported Content View version include. For more information, see Section 5.6, “Enabling Red Hat Repositories”.
-
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. Until BZ#1745081 is resolved, navigate to the
/var/lib/pulp/katello-export
directory:# cd /var/lib/pulp/katello-export
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.To verify that you import the Content View version successfully, list Content Views for your organization:
# hammer content-view version list --organization "Your_Organization"