Bookmark this page

Install Red Hat Satellite

Objectives

  • Describe the procedure to install Red Hat Satellite.

Satellite Server Software Installation Methods

A Satellite Server or Capsule Server installation is accomplished with two tasks:

  • Install the Satellite component software on the system to host the Satellite Server or Capsule Server.

  • Run the satellite-installer command with Satellite Server or Capsule Server scenario-specific options.

When the operating system is installed on the host system, Satellite Server software can be installed directly from repositories on the Red Hat Content Delivery Network or from an ISO installation image.

Satellite Software Installation from the CDN

You must register the server by using the subscription-manager register command with your Red Hat account with a valid Satellite entitlement. The subscription-manager list command determines whether any subscriptions are available for Red Hat Satellite and Red Hat Enterprise Linux. A Red Hat Satellite subscription includes Red Hat Enterprise Linux, because Satellite must be installed on Red Hat Enterprise Linux.

[root@satellite ~]# subscription-manager register
Username: my_username
Password: my_password
The system has been registered with ID: 123e4567-e89b-12d3-a456-426614174000
[root@satellite ~]# subscription-manager list \
--all --available \
--matches 'Red Hat Satellite Infrastructure Subscription'
+-------------------------------------------+
    Available Subscriptions
+-------------------------------------------+
Subscription Name:   Red Hat Satellite Infrastructure Subscription
Provides:            Red Hat Satellite
                     Red Hat Software Collections (for RHEL Server)
                     Red Hat CodeReady Linux Builder for x86_64
                     Red Hat Satellite Capsule
                     Red Hat Ansible Engine
                     Red Hat Satellite with Embedded Oracle
                     Red Hat Satellite 5 Managed DB
                     Red Hat Enterprise Linux Load Balancer (for RHEL Server)
                     Red Hat Beta
                     Red Hat Software Collections Beta (for RHEL Server)
                     Red Hat Enterprise Linux Server
                     Red Hat Enterprise Linux for x86_64
                     Red Hat Satellite Proxy
                     Red Hat Enterprise Linux High Availability for x86_64
                     Red Hat Discovery
SKU:                 MCT3718
Contract:
Pool ID:             8a85f98b635f3e6d0164482792184333
Provides Management: Yes
Available:           7
Suggested:           1
Service Type:        L1-L3
Roles:
Service Level:       Premium
Usage:
Add-ons:
Subscription Type:   Standard
Starts:              06/28/2018
Ends:                12/31/2026
Entitlement Type:    Physical

Find a subscription that provides Red Hat Satellite, Red Hat Enterprise Linux, and Red Hat Software Collections. You must enable the subscription by using the proper pool ID.

[root@satellite ~]# subscription-manager attach \
--pool=8a85f98b635f3e6d0164482792184333
Successfully attached a subscription for: Red Hat Satellite Infrastructure Subscription

To accurately control the installed Red Hat Satellite software version and to avoid installing non-Satellite software, disable all existing repositories and enable the needed ones. Enable the Red Hat Satellite, Red Hat Enterprise Linux, and Red Hat Software Collections repositories.

[root@satellite ~]# subscription-manager repos --disable "*"
[root@satellite ~]# subscription-manager repos \
--enable=rhel-8-for-x86_64-baseos-rpms \
--enable=rhel-8-for-x86_64-appstream-rpms \
--enable=satellite-6.11-for-rhel-8-x86_64-rpms \
--enable=satellite-maintenance-6.11-for-rhel-8-x86_64-rpms

Note

If your organization enabled Simple Content Access, then attaching subscriptions to your systems is no longer required. Registering the system makes the repositories available to the registered system. Enable only the repositories that you need, and install them.

Before you install the satellite package, ensure that all previously released errata that are relevant to the system are applied.

[root@satellite ~]# dnf update

After the update command, verify whether a reboot is required by running the needs-restarting -r command.

[root@satellite ~]# dnf install satellite

Satellite Software Installation from an ISO Image

In environments with low network bandwidth, Red Hat recommends to download the Satellite Server software as an ISO image so that it can be installed from local media. Ensure that your base system is configured with updated packages for the latest version of RHEL 8.

Download the Red Hat Satellite 6 ISO image from the Red Hat Customer Portal. After logging in, click the Downloads button, and select Red Hat Satellite.

Before you begin the installation, create a mount point directory and mount the ISO image.

[root@satellite ~]# mkdir /media/sat6
[root@satellite ~]# mount -o loop \
/tmp/satellite-6.11-rhel-8-x86_64-dvd.iso /media/sat6

Import the public Red Hat GPG key to the server to install Satellite Server from an ISO.

[root@satellite ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

Red Hat Satellite provides an installer script in the mounted directory. Use the install_packages script to install Satellite packages.

[root@satellite ~]# cd /media/sat6; ./install_packages
	This script will install the foreman packages on the current machine.
   - Ensuring we are in an expected directory.
   - Copying installation files.
   - Creating a Repository File
   - Creating RHSCL Repository File
   - Checking to see if Foreman is already installed.
   - Importing the gpg key.
   - Foreman is not yet installed, installing it.
   - Installation repository will remain configured for future package installs.
   - Installation media can now be safely unmounted.

Install is complete. Please run satellite-installer --scenario satellite.

Satellite Server Initial Configuration

When the katello package is installed, the target host must be prepared for Satellite Server use. The satellite-installer command performs this initial configuration. In this scenario, the installation scenario is the central Satellite Server. The installation and initial configuration of a Capsule Server are discussed in a later chapter.

Interactive Satellite Server Initial Configuration

Before starting the Satellite Server configuration with the satellite-installer command, ensure that the chronyd service is installed and enabled on the Satellite Server host.

[root@satellite ~]# dnf install chrony
[root@satellite ~]# systemctl enable chronyd --now

Install the sos package on that host to collect configuration and diagnostic information from a Red Hat Enterprise Linux system and provide the initial system analysis required by Red Hat Technical Support to open a service request.

[root@satellite ~]# dnf install sos

When done, you can use the satellite-installer command to configure Satellite Server. If you run the satellite-installer command without options, then Satellite Server is installed with default settings. The script provides various options to override default settings. You can display available options to the satellite-installer command with the --help option.

[root@satellite ~]# satellite-installer --list-scenarios
Available scenarios
  Capsule (use: --scenario capsule)
        Install a stand-alone Satellite Capsule.
  Satellite (use: --scenario satellite)
        Install Satellite server

[root@satellite ~]# satellite-installer --scenario satellite --help
...output omitted...

Execute the satellite-installer command as the root user. You can use the --foreman-initial-admin-username and --foreman-initial-admin-password options to configure the initial password for the admin user in Satellite Server. On completion, the command provides the following output:

[root@satellite ~]# satellite-installer \
--scenario satellite \
--foreman-initial-admin-username admin \
--foreman-initial-admin-password redhat
    Installing    Done   [100%] [...................................]
      Success!
      * Satellite is running at https://satellite.example.com
          Initial credentials are admin / redhat
      * To install additional capsule on separate machine continue by running:

          capsule-certs-generate --capsule-fqdn "$CAPSULE" --certs-tar "~/$CAPSULE-certs.tar"

      The full log is at /var/log/foreman-installer/satellite.log

In addition to logging the installation results in /var/log/foreman-installer/satellite.log, satellite-installer saves installation parameters to an answer file at /etc/foreman-installer/scenarios.d/satellite-answers.yaml. You can reference this file to determine the parameters that are used in the Satellite Server initial configuration.

To list and learn available command option and parameter syntax, use the command's help option.

[root@capsule ~]# satellite-installer --help
...output omitted...

Automate the Satellite Server Initial Configuration

You can use an answer file to automate the Satellite Server initial configuration task. You can modify a copy of the /etc/foreman-installer/scenarios.d/satellite-answers.yaml answer file and use it to automate an initial configuration of Satellite Server. You might use the answer file installation method to use custom configuration options.

Configuring Satellite Server with an installer answer file requires the following actions:

Make a copy of the default answer file, /etc/foreman-installer/scenarios.d/satellite-answers.yaml.

[root@satellite ~]# cp \
/etc/foreman-installer/scenarios.d/satellite-answers.yaml \
/etc/foreman-installer/scenarios.d/satellite-answers.custom.yaml

Use a text editor to modify the custom answer file parameters. You can reference module parameters in each module's params.pp file. The following command displays a list of module parameter files:

[root@satellite ~]# rpm -ql foreman-installer | grep params.pp

Edit the following line in /etc/foreman-installer/scenarios.d/satellite.yaml to use your custom answer file.

:answer_file: /etc/foreman-installer/scenarios.d/satellite-answers.custom.yaml

Execute the satellite-installer command.

[root@satellite ~]# satellite-installer \
--scenario satellite \
--foreman-initial-admin-username admin \
--foreman-initial-admin-password redhat
    Installing    Done   [100%] [...................................]
      Success!
      * Satellite is running at https://satellite.example.com
          Initial credentials are admin / redhat
      * To install additional capsule on separate machine continue by running:

          capsule-certs-generate --capsule-fqdn "$CAPSULE" --certs-tar "~/$CAPSULE-certs.tar"

      The full log is at /var/log/foreman-installer/satellite.log

Validate a Satellite Server Installation

You can view and query a Satellite Server to verify that it is successfully installed and operational. Verify that the ports for HTTP 80 and HTTPS 443 are opened. Then use the Satellite Server web UI or the Hammer CLI to query the central Satellite Server. Additionally, the host of each Satellite Server and Capsule Server can be configured with relevant tuned profiles for performance.

Satellite Server Web UI

When the Satellite Server is installed and configured, log in to the web UI. In a web browser, enter the Satellite Server hostname; for example, https://satellite.example.com. When logging in for the first time, a certificate warning is displayed. Accept the self-signed certificate and add the Satellite Server URL to the security exception list to avoid future warnings.

Enter the username and password that are specified in the initial Satellite Server configuration. If the credentials were not customized, then use the default username, admin, and the randomized initial password, to log in for the first time. When you are logged in successfully, the Satellite welcome screen appears.

Reset the Admin User Password

You can use the foreman-rake utility to maintain and administer Satellite tasks, such as deleting old tasks, purging the database, and resetting the admin user password.

Use the foreman-rake permissions:reset command to set the admin user with a new random password. You can use the password=NEW_PASSWORD option to manually define a new password.

[root@satellite ~]# foreman-rake permissions:reset
Reset to user: admin, password: NEW_RANDOMIZED_PASSWORD
[root@satellite ~]# foreman-rake permissions:reset password=redhat123
Reset to user: admin, password: redhat123

The foreman-rake command does not close the existing Satellite GUI sessions. You must close the sessions manually and at the next login, use the new password.

For the hammer tool to work with the next password, update the password entry in the ~/.hammer/cli.modules.d/foreman.yml file.

[root@satellite ~]# cat .hammer/cli.modules.d/foreman.yml
:foreman:
  # Credentials. You'll be asked for the interactively if you leave them blank here
  :username: 'admin'
  :password: 'redhat123'

Diagnose Satellite Services

The Satellite Server installation includes the satellite-maintain utility to verify your Satellite Server installation health. Use --help to display available options. The satellite-maintain service list command displays the status of Satellite Server services.

[root@satellite ~]# satellite-maintain service list
Running Service List
================================================================================
List applicable services:
dynflow-sidekiq@.service                   indirect
foreman-proxy.service                      enabled
foreman.service                            enabled
httpd.service                              enabled
postgresql.service                         enabled
pulpcore-api.service                       enabled
pulpcore-content.service                   enabled
pulpcore-worker@.service                   indirect
redis.service                              enabled
tomcat.service                             enabled

All services listed                                                   [OK]
--------------------------------------------------------------------------------

The satellite-maintain health check command runs various health checks in the Satellite Server installation.

[root@satellite ~]# satellite-maintain health check
Running ForemanMaintain::Scenario::FilteredScenario
================================================================================
Check number of fact names in database:                               [OK]
--------------------------------------------------------------------------------
Check whether all services are running:                               [OK]
--------------------------------------------------------------------------------
Check whether all services are running using the ping call:           [OK]
--------------------------------------------------------------------------------
Check for paused tasks:                                               [OK]
--------------------------------------------------------------------------------
Check whether system is self-registered or not:                       [OK]
--------------------------------------------------------------------------------

Troubleshoot with Hammer

Use the hammer ping command in addition to the satellite-maintain service status command to diagnose and troubleshoot issues with Satellite services.

The hammer ping command checks and returns the status of the core services within Red Hat Satellite.

[root@satellite ~]# hammer ping
database:
    Status:          ok
    Server Response: Duration: 0ms
candlepin:
    Status:          ok
    Server Response: Duration: 44ms
candlepin_auth:
    Status:          ok
    Server Response: Duration: 31ms
candlepin_events:
    Status:          ok
    message:         0 Processed, 0 Failed
    Server Response: Duration: 0ms
katello_events:
    Status:          ok
    message:         0 Processed, 0 Failed
    Server Response: Duration: 0ms
pulp3:
    Status:          ok
    Server Response: Duration: 239ms
pulp3_content:
    Status:          ok
    Server Response: Duration: 59ms
foreman_tasks:
    Status:          ok
    Server Response: Duration: 7ms

Tune Satellite Server for Performance

Use predefined tuned profiles to improve Red Hat Satellite performance. If you expect that your Satellite will manage high host counts and hardware allocations, then you can use built-in tuning profiles that the satellite-installer command provides, to accommodate heavier loads.

Satellite 6.10 and later versions provide four custom tuning profile sizes, which are based on estimates of the number of managed hosts that your Satellite Server is expected to host. For example, run the satellite-installer command with the --tuning large profile option to accommodate an expectation of 10,000-20,000 managed hosts, 64 GB of RAM, and 16 recommended cores. The specific tuning settings for each profile are in the configuration files in the /usr/share/foreman-installer/config/foreman.hiera/tuning/sizes directory on your Satellite Server.

References

For more information, refer to the Satellite Deployment Planning chapter in the Satellite Overview, Concepts, and Deployment Considerations Guide at https://access.redhat.com/documentation/en-us/red_hat_satellite/6.11/html-single/satellite_overview_concepts_and_deployment_considerations/index#part-Deployment_Planning

For more information, refer to the Installing Satellite Server chapter in the Installing Satellite Server from a Disconnected Network Guide at https://access.redhat.com/documentation/en-us/red_hat_satellite/6.11/html-single/installing_satellite_server_in_a_disconnected_network_environment/index#Installing_Server_Disconnected_satellite

For more information, refer to the Installing Satellite Server chapter in the Installing Satellite Server from a Connected Network Guide at https://access.redhat.com/documentation/en-us/red_hat_satellite/6.11/html-single/installing_satellite_server_in_a_connected_network_environment/index#Installing_Server_Connected_satellite

Revision: rh403-6.11-3ad886e