Chapter 5. Red Hat Satellite
Red Hat Satellite is the best way to manage your Red Hat infrastructure.
Red Hat Satellite manages the life cycle of an operating system, from initial deployment to ongoing updates. It provides a local mirror of all available Red Hat packages for faster software delivery inside the data center.
A built in DNS server provides automated DNS entry when a host is created, and deletion when the host is decommissioned.
Satellite 6.2 was used in this reference architecture to provision the operating systems, provide access to the required repositories, and to provide DHCP and DNS services. The following sections provide an overview of the Satellite server configuration to support the deployment of Red Hat OpenShift Container Platform 3.5 on baremetal HPE ProLiant DL servers. Installation of the Satellite server is beyond the scope of this document, please refer to the official Satellite document for installation and configuration of Satellite servers.
Configuration to Support OpenShift Container Platform
Repositories
The following repositories are required to be available from the Red Hat Satellite server to deploy OpenShift with Container-native storage:
| Name | Repo ID |
|---|---|
| Red Hat Gluster Storage 3.1 Server (RPMs) | rh-gluster-3-for-rhel-7-server-rpms |
| Red Hat Enterprise Linux Fast Datapath (RHEL 7 Server) (RPMs) | rhel-7-fast-datapath-rpms |
| Red Hat Enterprise Linux 7 Server - Extras (RPMs) | rhel-7-server-extras-rpms |
| Red Hat OpenShift Container Platform 3.5 (RPMs) | rhel-7-server-ose-3.5-rpms |
| Red Hat Enterprise Linux 7 Server (RPMs) | rhel-7-server-rpms |
| Red Hat Satellite Tools 6.2 (for RHEL 7 Server) (RPMs) | rhel-7-server-satellite-tools-6.2-rpms |

Figure 11: Satellite Products
Content Views
Red Hat Satellite Content views are used to manage the selection of content available to the hosts registered in Satellite. The Content views provide lifecycle management by maintaining repositories with specific software versions available for deployment. In the figure below, titled Satellite Content View, the required yum repositories for OpenShift have been added to the _rhel7-ocp3-5 content view:

Figure 12: Satellite Content View
Lifecycle Environment
To manage the promotion of content views between development and production, a lifecycle environment is used. A content view is published to a specific environment. When that view has been tested and vetted in an environment, it can then be promoted to the next level e.g. production.
A lifecycle environment named ocp-dev was created and associated with the rhel7-ocp-3-5 content view.

Figure 13: Lifecycle Environment
Subnets
Subnets are defined in Red Hat Satellite so when a host is created, it is allocated an IP from a set range along with the proper netmask and gateway. In this environment, a subnet with the name hpecloud_ext was created for the 10.19.20.128/25 network.

Figure 14: Subnet
Activation Keys
When a new host is deployed for the first time, an activation key is typically supplied. This key is an object in Red Hat Satellite that allows a host to automatically register and attach to any required subscriptions and software channels. An activation called hpe-ocp was created so that hosts would have access to the OpenShift Container Platform RPMs.

Figure 15: Activation Key Details

Figure 16: Activation Key Product Content
Kickstart Template
Red Hat Satellite dynamically generates a kickstart configuration for every host that it builds. This allows for operating system installation via PXE boot, using tftp to serve the required kernel and disk image files.
Satellite ships with a number of initial templates. The Satellite Kickstart Default template is suitable for most standard installations. To allow Ansible Tower to manage a deployed host, the template must be modified slightly to inject an SSH key.
The Satellite Kickstart Default was cloned as HPE-Kickstart and modified to install an authorized key for the root user. Below is the relevant portion that was modified:
#update local time echo "updating system time" /usr/sbin/ntpdate -sub <%= @host.params['ntp-server'] || '0.fedora.pool.ntp.org' %> /usr/sbin/hwclock --systohc # deploy ansible tower key mkdir /root/.ssh/ chmod 700 /root/.ssh echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRcFhowHWK8ZfzTRFZcqs5BbFqryBXWwXKj1HI4dDipPTNka0GD6+qeMZiLgNHQ2bn24HXoWSzWRyKSU+cDD5LWpPq9sPRLTO/japC5YQfeOMQbkSnV4GaglX50oqcI1whSovCXNL0JtxDg8YoWQrhqpM+r3nD+IATOFLeB/kk3Vuc1UHAZvO0Ww9bIw32tK4hOtB2CWsZr3T0xe/k5OZF5v9Y21aiLA//p655N0LrVF08EqOmPQi93EUWTLYvZXQyLFuu80PdCIDdhvU1mrQj5iBFDJrQiKSL02zRKr6JDKsvrPyb750R5HsOohEHQlD3KsONkJNnzphtVHM1dkf3 dcritch@sputnik.xana.du' >> /root/.ssh/authorized_keys echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5/HWM5BBBG+Oj8teXxc0A7bYT7ke6qttnnAm7e90uaom5tZvjscQHUINo1gvZSv5vMgV4x3Rgm5+/W+3FZEkR9BlymjltWOw5KBu+XvDcJnhUGKA2gLmaEclQsvB4TVcTv1m3ALa7W0ReqHR64geu638cNLrXiWRXdyttLNq28qQsSIf/m7Pv5By/jOfmc/xKXbajDuhMa/NsJ1XlHHEljhb2cl/mtkt2TcWht/2nZF1ozAeNDnhHzDLrtmYNqX0qKyrjF+RHH2t6hBF8iaf/8IxLdgycAxpcY2IPmp2p8RuO4Fs1j4xw/gPwRotYQQ3i0zNdkdMfr5NTQoBjpRrf root@dc-dev.cloud.lab.eng.bos.redhat.com' >> /root/.ssh/authorized_keys <%= snippet "subscription_manager_registration" %>
Partition Table
Kickstart templates may include a parition table, but Red Hat Satellite also allows for the creation of custom, dynamic partition tables. For the OpenShift nodes, the OS volume that is configured through HPE OneView is partitioned in Satellite to provide a dedicated docker volume group:
<%# kind: ptable name: Kickstart default oses: - CentOS 5 - CentOS 6 - CentOS 7 - Fedora 16 - Fedora 17 - Fedora 18 - Fedora 19 - Fedora 20 - RedHat 5 - RedHat 6 - RedHat 7 %> zerombr clearpart --all --initlabel #autopart #ignoredisk --only-use=sda part pv.192 --fstype="lvmpv" --ondisk=sda --size=131072 part /boot --fstype="xfs" --ondisk=sda --size=500 volgroup vgos --pesize=4096 pv.192 logvol / --fstype="xfs" --size=16128 --name=lvroot --vgname=vgos logvol swap --fstype="swap" --size=16128 --name=swap --vgname=vgos logvol /var --fstype="xfs" --size=65536 --name=lvvar --vgname=vgos part pv.193 --fstype="lvmpv" --ondisk=sda --size=131072 --grow volgroup docker-vg --pesize=4096 pv.193
The docker-vg is later used in the predeploy Ansible playbook configure docker storage. More details can be found in the official OpenShift docs.
Host Groups
Common combinations of subnets, operating system and activation keys can be expressed as a Hostgroup in Red Hat Satellite. For hosts deployed in this reference architecture, a hostgroup called hpe-ocp was created to incorporate the various customizations outlined for host creation.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.