Chapter 3. Multiple Satellites

Inter-satellite synchronization (ISS) allows you to coordinate content between Satellites. This feature can be used in several different ways, depending on the needs of the organization. This chapter contains a section on use cases, and how best to set up ISS to suit your organization.

ISS Requirements

The following are the required conditions to be able to use ISS:
  • Two or more RHN Satellite servers
  • At least one RHN Satellite populated with at least one channel
  • For secure connections, each slave RHN Satellite will also require a master RHN Satellite SSL certificate

3.1. Inter-Satellite Synchronization

Procedure 3.1. Configuring the Master Server

The master server is used to determine what files will be synchronized to the other satellites.
  1. Enable the inter-satellite synchronization (ISS) feature. Open the /etc/rhn/rhn.conf file, and add or amend the following line to read:
    disable_iss=0
    
  2. In the /etc/rhn/rhn.conf file, locate the allowed_iss_slaves= line. By default, no slave satellites are specified for synchronization. Enter the hostname of each slave satellite server, separated by commas:
    allowed_iss_slaves=slave1.satellite.example.org,slave2.satellite.example.org
    
  3. Save the configuration file, and restart the httpd service:
    service httpd restart
    

Procedure 3.2. Configuring Slave Servers

Slave Satellite servers are the machines that will have their content synchronized to the master server.
  1. In order to securely transfer content to the slave servers, the ORG-SSL certificate from the master server is needed. The certificate can be downloaded over HTTP from the /pub/ directory of any satellite. The file is called RHN-ORG-TRUSTED-SSL-CERT, but can be renamed and placed anywhere in the local filesystem of the slave, such as the /usr/share/rhn/ directory.
  2. View the list of channels available for synchronization from the master server with the following command. This will display official Red Hat channels as well as any available custom channels:
    satellite-sync --iss-parent=master.satellite.example.com --ca-cert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --list-channels
    
    Replace master.satellite.example.com with the hostname of the master server.

Procedure 3.3. Performing an Inter-Satellite Synchronization

Once the master and slave servers are configured, a synchronization can be performed between them.
  1. On the slave servers, open the /etc/rhn/rhn.conf file in a text editor, and add the master server hostname and SSL certificate file path details:
    iss_parent      = master.satellite.example.com
    iss_ca_chain    = /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
    
  2. Begin the synchronization by running the satellite-sync command:
    satellite-sync -c your-channel

    Note

    Command line options that are manually provided with the satellite-sync command will override any custom settings in the /etc/rhn/rhn.conf file.