Chapter 2. Installing Satellite Server
You can use this chapter to find information about installing Red Hat Satellite Server, performing the initial configuration, creating and installing manifests, and performing additional configuration.
Red Hat Satellite 6.4 uses Puppet 5 by default. Review and update your Puppet modules to support Puppet 5. For more information about updating your Puppet modules to support Puppet 5, see the Upgrading Puppet section in the Satellite 6.4 Upgrading and Updating Red Hat Satellite guide.
Ensure you have completed upgrading your Puppet modules to support Puppet 4 while on Red Hat Satellite 6.3. For information on upgrading Puppet modules to Puppet 4, see the Upgrading Puppet section in the Satellite 6.3 Upgrading and Updating Red Hat Satellite guide.
There are two methods of installing Satellite Server:
Connected:
You can obtain the packages required to install Satellite Server directly from the Red Hat Content Delivery Network (CDN). Using the CDN ensures that your system always receives the latest updates.
Disconnected:
You must use an external computer to download an ISO image of the packages and copy the packages to the system you want to install Satellite Server on. Use an ISO image only if you require a disconnected environment. The ISO image might not contain the latest updates.
You cannot register Satellite Server to itself.
2.1. Installing Satellite Server from a Connected Network
When you install Satellite Server from a connected network, you can obtain packages and receive updates directly from the Red Hat Content Delivery Network.
Note that the Satellite 6 installation script is based on Puppet, which means that if you run the installation script more than once, it might overwrite any manual configuration changes. To avoid this and determine which future changes apply, use the --noop
argument when you run the installation script. This argument ensures that no actual changes are made. Potential changes are written to /var/log/foreman-installer.log
.
Files are always backed up and so you can revert any unwanted changes. For example, in the foreman-installer logs, you can see an entry similar to the following about Filebucket:
/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
You can restore the previous file as follows:
puppet filebucket -l \ restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1
# puppet filebucket -l \
restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1
2.1.1. Registering to Red Hat Subscription Management
Registering the host to Red Hat Subscription Management enables the host to subscribe to and consume content for any subscriptions available to the user. This includes content such as Red Hat Enterprise Linux, Red Hat Software Collections (RHSCL), and Red Hat Satellite.
Register your system with the Red Hat Content Delivery Network, entering your Customer Portal user name and password when prompted:
subscription-manager register
# subscription-manager register
The command displays output similar to the following:
subscription-manager register
# subscription-manager register
Username: user_name
Password:
The system has been registered with ID: 541084ff2-44cab-4eb1-9fa1-7683431bcf9a
2.1.2. Identifying and Attaching the Satellite Subscription to the Host
After you have registered your host, you need to identify and attach an available Satellite subscription. The Satellite subscription provides access to the Satellite content, as well as Red Hat Enterprise Linux, Red Hat Software Collections (RHSCL), and Red Hat Satellite. This is the only subscription required. Every Red Hat subscription is identified by a Pool ID.
Identify your Satellite subscription.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow subscription-manager list --available --matches 'Red Hat Satellite'
# subscription-manager list --available --matches 'Red Hat Satellite'
This command performs a case-insensitive search of all available subscriptions' fields, including
Subscription Name
andProvides
, matching any instances ofRed Hat Satellite
. Subscriptions are classified as available if they are not already attached to a system. The search string may also contain the wildcards?
or*
to match a single character or zero or more characters, respectively. The wildcard characters may be escaped with a backslash to represent a literal question mark or asterisk. Likewise, to represent a backslash, it must be escaped with another backslash.If you are unable to find an available Satellite subscription, see the Red Hat Knowledgebase solution How do I figure out which subscriptions have been consumed by clients registered under Red Hat Subscription Manager? to run a script to allow you to see if your subscription is being consumed by another system.
If the output is too long, pipe it into a pager utility, such as
less
ormore
, so that you can look over the output one screenful at a time.Regardless of which form of the
subscription-manager
command is run, the output should be similar to the following:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Subscription Name: Red Hat Satellite Provides: Red Hat Satellite 6 Red Hat Enterprise Linux Server Red Hat Satellite Red Hat Enterprise Linux Load Balancer (for RHEL Server) SKU: MCT0370 Pool ID: 8a85f9874152663c0541943739717d11 Available: 3 Suggested: 1 Service Level: Premium Service Type: L1-L3 Multi-Entitlement: No Ends: 10/07/2014 System Type: Physical
Subscription Name: Red Hat Satellite Provides: Red Hat Satellite 6 Red Hat Enterprise Linux Server Red Hat Satellite Red Hat Enterprise Linux Load Balancer (for RHEL Server) SKU: MCT0370 Pool ID: 8a85f9874152663c0541943739717d11 Available: 3 Suggested: 1 Service Level: Premium Service Type: L1-L3 Multi-Entitlement: No Ends: 10/07/2014 System Type: Physical
- Make a note of the Pool ID so that you can attach it to your Satellite host. Your Pool ID is different than the example provided.
To attach your subscription to your Satellite Server, enter the following command, using your Pool ID:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow subscription-manager attach --pool=pool_id
# subscription-manager attach --pool=pool_id
The output should be similar to the following:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Successfully attached a subscription for: Red Hat Satellite
Successfully attached a subscription for: Red Hat Satellite
To verify that the subscriptions are successfully attached, enter the following command:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow subscription-manager list --consumed
# subscription-manager list --consumed
The outputs displays something similar to the following:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow +-------------------------------------------+ Consumed Subscriptions +-------------------------------------------+ Subscription Name: Red Hat Satellite Provides: Red Hat Satellite Red Hat Enterprise Linux Server Red Hat Software Collections (for RHEL Server) Red Hat Satellite Red Hat Satellite 6 Red Hat Software Collections (for RHEL Server) Red Hat Satellite Capsule Red Hat Enterprise Linux Load Balancer (for RHEL Server) Red Hat Satellite with Embedded Oracle Red Hat Satellite Capsule Red Hat Enterprise Linux High Availability (for RHEL Server) SKU: MCT0370 Contract: 10293569 Account: 5361051 Serial: 1653856191250699363 Pool ID: 8a85f9874152663c0541943739717d11 Active: True Quantity Used: 1 Service Level: Premium Service Type: L1-L3 Status Details: Starts: 10/08/2013 Ends: 10/07/2014 System Type: Physical
+-------------------------------------------+ Consumed Subscriptions +-------------------------------------------+ Subscription Name: Red Hat Satellite Provides: Red Hat Satellite Red Hat Enterprise Linux Server Red Hat Software Collections (for RHEL Server) Red Hat Satellite Red Hat Satellite 6 Red Hat Software Collections (for RHEL Server) Red Hat Satellite Capsule Red Hat Enterprise Linux Load Balancer (for RHEL Server) Red Hat Satellite with Embedded Oracle Red Hat Satellite Capsule Red Hat Enterprise Linux High Availability (for RHEL Server) SKU: MCT0370 Contract: 10293569 Account: 5361051 Serial: 1653856191250699363 Pool ID: 8a85f9874152663c0541943739717d11 Active: True Quantity Used: 1 Service Level: Premium Service Type: L1-L3 Status Details: Starts: 10/08/2013 Ends: 10/07/2014 System Type: Physical
2.1.3. Configuring Repositories
Disable all existing repositories.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow subscription-manager repos --disable "*"
# subscription-manager repos --disable "*"
Enable the Red Hat Satellite, Red Hat Enterprise Linux, and Red Hat Software Collections repositories.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow subscription-manager repos --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-6.4-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-ansible-2.6-rpms
# subscription-manager repos --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-6.4-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-ansible-2.6-rpms
NoteIf you are installing Red Hat Satellite as a virtual machine hosted on Red Hat Virtualization (RHV), you also need to enable the Red Hat Common repository, and install RHV guest agents and drivers. For more information, see Installing the Guest Agents and Drivers on Red Hat Enterprise Linux in the Virtual Machine Management Guide for more information.
Clear out any metadata left from any non-Red Hat
yum
repositories.Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum clean all
# yum clean all
Verify that the repositories have been enabled.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum repolist enabled
# yum repolist enabled
2.1.4. Installing the Satellite Server Packages
You must update all packages before installing the Satellite Server packages. After installation, you must perform the initial configuration of Satellite Server, including configuring server certificates, setting your user name, password, and the default organization and location.
Update all packages:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum update
# yum update
Install the Satellite Server packages:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum install satellite
# yum install satellite
2.2. Performing the Initial Configuration
This section details how to perform the initial configuration of the host operating system when installing Red Hat Satellite Server. This includes synchronizing the time, installing the sos package, and specifying an installation option.
Before you continue, consider which manifests or packages are relevant for your environment. For more information on manifests, see Managing Subscriptions in the Red Hat Satellite Content Management Guide.
2.2.1. Synchronizing Time
You must start and enable a time synchronizer on the host operating system to minimize the effects of time drift. If a system’s time is incorrect, certificate verification can fail.
Two NTP based time synchronizers are available: chronyd
and ntpd
. The chronyd
implementation is specifically recommended for systems that are frequently suspended and for systems that have intermittent network access. The ntpd
implementation should only be used when you specifically need support for a protocol or driver not yet supported by chronyd
.
For more information about the differences between ntpd
and chronyd
, see Differences Between ntpd and chronyd in the Red Hat Enterprise Linux 7 System Administrator’s Guide.
Synchronizing Time using chronyd
Install chronyd.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum install chrony
# yum install chrony
Start and enable the chronyd service.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl start chronyd systemctl enable chronyd
# systemctl start chronyd # systemctl enable chronyd
2.2.2. Installing the SOS Package on the Host Operating System
You should install the sos package on the host operating system. The sos package enables you to collect configuration and diagnostic information from a Red Hat Enterprise Linux system. You can also use it to provide the initial system analysis, which is required when opening a service request with Red Hat Technical Support. For more information on using sos, see the Knowledgebase solution What is a sosreport and how to create one in Red Hat Enterprise Linux 4.6 and later? on the Red Hat Customer Portal.
Install the sos package.
yum install sos
# yum install sos
2.2.3. Specifying Installation Options
Satellite Server is installed using the satellite-installer
installation script and as part of the initial configuration, you either automatically or manually configure Satellite.
Choose from one of these two methods:
Automatic Configuration - This method is performed by using an answer file to automate the configuration process when running the installation script. An answer file is a file containing a list of parameters that are read by a command or script. The default Satellite answer file is
/etc/foreman-installer/scenarios.d/satellite-answers.yaml
. The answer file in use is set by theanswer_file
directive in the/etc/foreman-installer/scenarios.d/satellite.yaml
configuration file.To perform the initial configuration using the installation script with an answer file, see Section 2.2.3.2, “Performing the Initial Configuration Automatically using an Answer File”.
Manual Configuration - This method is performed by running the installation script with one or more command options. The command options override the corresponding default initial configuration options and are recorded in the Satellite answer file. You can run the script as often as needed to configure any necessary options.
To perform the initial configuration using the installation script with command-line options, see Section 2.2.3.1, “Performing the Initial Configuration Manually”.
Depending on the options that you use when running the Satellite installer, the configuration can take several minutes to complete. An administrator is able to view the answer file to see previously used options for both methods.
2.2.3.1. Performing the Initial Configuration Manually
This initial configuration procedure creates an organization, location, user name, and password. After the initial configuration, you can create additional organizations and locations if required. The initial configuration also installs MongoDB and PostgreSQL databases on the same server. Depending on your deployment, using external databases can benefit performance.
The installation process can take tens of minutes to complete. If you are connecting remotely to the system, consider using a utility such as screen
that allows suspending and reattaching a communication session so that you can check the installation progress in case you become disconnected from the remote system. The Red Hat Knowledgebase article How to use the screen command describes installing screen
; alternately see the screen
manual page for more information. If you lose connection to the shell where the installation command is running, see the log at /var/log/foreman-installer/satellite.log
to determine if the process completed successfully.
Manually configuring Satellite Server
Use the satellite-installer --scenario satellite --help
command to display the available options and any default values. If you do not specify any values, the default values are used.
It is recommended to specify a meaningful value for the option: --foreman-initial-organization
. This can be your company name. An internal label that matches the value is also created and cannot be changed afterwards. If you do not specify a value, an organization called Default Organization with the label Default_Organization is created. You can rename the organization name but not the label.
By default, all configuration files configured by the installer are managed by Puppet. When satellite-installer
runs, it overwrites any manual changes to the Puppet managed files with the initial values. By default, Satellite Server is installed with the Puppet agent running as a service. If required, you can disable Puppet agent on Satellite Server using the --puppet-runmode=none
option.
If you want to manage DNS files and DHCP files manually, use the --foreman-proxy-dns-managed=false
and --foreman-proxy-dhcp-managed=false
options so that Puppet does not manage the files related to the respective services. For more information on how to apply custom configuration on other services, see Appendix B, Applying Custom Configuration to Red Hat Satellite.
If you want to use external databases with Satellite, before you run the satellite installer tool, you must set up and point to external databases. For more information, see Using External Databases with Satellite in Installing Satellite Server from a Connected Network.
satellite-installer --scenario satellite \ --foreman-initial-organization "initial_organization_name" \ --foreman-initial-location "initial_location_name" \ --foreman-admin-username admin_user_name \ --foreman-admin-password admin_password \ --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
# satellite-installer --scenario satellite \
--foreman-initial-organization "initial_organization_name" \
--foreman-initial-location "initial_location_name" \
--foreman-admin-username admin_user_name \
--foreman-admin-password admin_password \
--foreman-proxy-dns-managed=false \
--foreman-proxy-dhcp-managed=false
The script displays its progress and writes logs to /var/log/foreman-installer/satellite.log
.
If you have been installing in a disconnected environment, unmount the ISO images.
umount /media/sat6 umount /media/rhel7-server
# umount /media/sat6
# umount /media/rhel7-server
2.2.3.2. Performing the Initial Configuration Automatically using an Answer File
You can use answer files to automate installations with customized options. The initial answer file is sparsely populated and after you run the satellite-installer
script the first time, the answer file is populated with the standard parameter values for installation. If you have already installed Satellite Server using the method described in Section 2.2.3.1, “Performing the Initial Configuration Manually”, then you do not need to use this method. You can, however, use it to make changes to the configuration of Satellite Server at any time.
You should use the FQDN instead of the IP address where possible in case of network changes.
Automatically configuring Satellite Server using an Answer File
Copy the default answer file
/etc/foreman-installer/scenarios.d/satellite-answers.yaml
to a location on your local file system.Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp /etc/foreman-installer/scenarios.d/satellite-answers.yaml \ /etc/foreman-installer/scenarios.d/my-answer-file.yaml
# cp /etc/foreman-installer/scenarios.d/satellite-answers.yaml \ /etc/foreman-installer/scenarios.d/my-answer-file.yaml
-
To view all of the configurable options, enter the
satellite-installer --scenario satellite --help
command. - Open your copy of the answer file, edit the values to suit your environment, and save the file.
Open the
/etc/foreman-installer/scenarios.d/satellite.yaml
file and edit the answer file entry to point to your custom answer file.Copy to Clipboard Copied! Toggle word wrap Toggle overflow :answer_file: /etc/foreman-installer/scenarios.d/my-answer-file.yaml
:answer_file: /etc/foreman-installer/scenarios.d/my-answer-file.yaml
Run the
satellite-installer
script.Copy to Clipboard Copied! Toggle word wrap Toggle overflow satellite-installer --scenario satellite
# satellite-installer --scenario satellite
If you have been installing in a disconnected environment, unmount the ISO images.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow umount /media/sat6 umount /media/rhel7-server
# umount /media/sat6 # umount /media/rhel7-server
2.2.4. Creating a Subscription Allocation in Customer Portal
You can access your subscription information on the Red Hat Customer Portal. You can also assign subscriptions for use in on-premise management applications, such as Red Hat Satellite, using subscription allocations.
- Open https://access.redhat.com/ in your browser and log in to the Red Hat account that you used to register the system to Red Hat Subscription Management.
- Navigate to Subscriptions in the upper-left corner of the Customer Portal.
- Navigate to Subscription Allocations.
- Click Create New subscription allocation.
- In the Name field, enter a name.
- From the Type list, select the type and version that corresponds to your Satellite Server.
- Click Create.
2.2.5. Adding Subscriptions to an Allocation
The following procedure explains how to add subscriptions to an allocation.
- Navigate to Subscription Allocations.
- Select the name of the subscription you want to change.
- Click the Subscriptions tab.
- Click Add Subscriptions.
- A list of your Red Hat product subscriptions appears. Enter the Entitlement Quantity for each product.
- Click Submit to complete the assignment.
When you have added subscriptions to the allocation, export the manifest file.
2.2.6. Exporting a Subscription Manifest from the Customer Portal
While viewing a subscription allocation that has at least one subscription, you can export a manifest in either of two places:
- From the Details tab, under the Subscription section, by clicking the Export Manifest button.
- From the Subscriptions tab, by clicking the Export Manifest button.
When the manifest is exported, the Customer Portal encodes the selected subscriptions certificates and creates a .zip archive. This is the Subscription Manifest, which can be uploaded into the Satellite Server.
2.2.7. Importing a Subscription Manifest into the Satellite Server
Both the Red Hat Satellite 6 web UI and CLI provide methods for importing the manifest.
For Web UI Users
- Ensure the context is set to the organization you want to use.
- Navigate to Content > Red Hat Subscriptions.
- Click Manage Manifest to display the manifest page for the organization.
- Click Choose file, select the Subscription Manifest, then click Upload.
For CLI Users
The Red Hat Satellite 6 CLI requires the manifest to be on the Satellite Server. On your local client system, copy the manifest to the Satellite Server:
scp ~/manifest_file.zip root@satellite.example.com:~/.
[user@client ~]$ scp ~/manifest_file.zip root@satellite.example.com:~/.
Then import it using the following command:
hammer subscription upload \ --file ~/manifest_file.zip \ --organization "organization_name"
[root@satellite ~]# hammer subscription upload \
--file ~/manifest_file.zip \
--organization "organization_name"
After a few minutes, the CLI reports a successful manifest import.
When you complete this section, you can enable repositories and import Red Hat content. This is a prerequisite for some of the following procedures. For more information, see Importing Red Hat Content in the Red Hat Satellite Content Management Guide.