Installation Guide
Installing and Configuring Satellite
Edition 4
Abstract
Chapter 1. Introduction to Red Hat Satellite
1.1. Red Hat Satellite 6 System Architecture

Figure 1.1. Red Hat Satellite 6 System Architecture
- External Content Sources
- The Red Hat Satellite Server can consume diverse types of content from various sources. The required connection is the one with Red Hat Customer Portal, which is the primary source of software packages, errata, Puppet modules, and container images. In addition, you can use other supported content sources (Git repositories, Docker Hub, Puppet Forge, SCAP repositories) as well as your organization's internal data store.
- Red Hat Satellite Server
- The Red Hat Satellite Server enables you to plan and manage the content life cycle and the configuration of Capsule Servers and hosts through GUI, CLI, or API.The Satellite Server organizes the life cycle management by using organizations as principal division units. Organizations isolate content for groups of hosts with specific requirements and administration tasks. For example, the OS build team can use a different organization than the web development team.The Satellite Server also contains a fine-grained authentication system to provide Satellite operators with permissions to access precisely the parts of the infrastructure that lie in their area of responsibility.
- Capsule Servers
- Capsule Servers mirror content from the Satellite Server to establish content sources in various geographical locations. This allows host systems to pull content and configuration from the Satellite Capsule Servers in their location and not from the central Satellite Server. The recommended minimal number of Capsule Servers is therefore given by the number of geographic regions where the organization that uses Satellite operates.Using Content Views, you can specify the exact subset of content that the Capsule Server makes available to hosts. See Figure 1.2, “Content Life Cycle in Red Hat Satellite 6” for a closer look at life cycle management with the use of Content Views.The communication between managed hosts and the Satellite Server is routed through the Capsule Server that can also manage multiple services on behalf of hosts. Many of these services use dedicated network ports, but the Capsule Server ensures that a single source IP address is used for all communications from the host to the Satellite Server, which simplifies firewall administration.
- Managed Hosts
- Hosts are the recipients of content from Capsule Servers. Hosts can be either physical or virtual (deployed on KVM, VMware vSphere, OpenStack, Amazon EC2, Rackspace Cloud Services, Google Compute Engine, or in a Docker container). The Satellite Server can have directly managed hosts. The base system running a Capsule Server is also a managed host of the Satellite Server.

Figure 1.2. Content Life Cycle in Red Hat Satellite 6
1.2. Red Hat Satellite 6 System Components
- Foreman
- Foreman is an open source application used for provisioning and life cycle management of physical and virtual systems. Foreman automatically configures these systems using various methods, including kickstart and Puppet modules. Foreman also provides historical data for reporting, auditing, and troubleshooting.
- Katello
- Katello is a Foreman plug-in for subscription and repository management. It provides a means to subscribe to Red Hat repositories and download content. You can create and manage different versions of this content and apply them to specific systems within user-defined stages of the application life cycle.
- Candlepin
- Candlepin is a service within Katello that handles subscription management.
- Pulp
- Pulp is a service within Katello that handles repository and content management.
- Hammer
- Hammer is a CLI tool that provides command line and shell equivalents of most Web UI functions.
- REST API
- Red Hat Satellite 6 includes a RESTful API service that allows system administrators and developers to write custom scripts and third-party applications that interface with Red Hat Satellite.
1.3. Red Hat Satellite 6 Supported Usage
Note
Red Hat Satellite 6 includes supported puppet packages. The installation program allows users to install and configure Puppet Masters as a part of Red Hat Satellite Capsule Servers. The server installs the Hiera key-value database, which can be used to refine how Puppet modules are applied. A Puppet module, running on a Puppet Master on the Red Hat Satellite Server or Satellite Capsule Server, using Hiera, is supported by Red Hat.
Pulp is the content management subsystem within Red Hat Satellite 6. Pulp usage is only supported via the Satellite Server web UI, CLI, and API. Direct modification or interaction with Pulp's local API or database is not supported.
Foreman makes up a large amount of Red Hat Satellite's core functionality including the web UI container, users, organizations, security and other significant functions. Foreman can be extended using plug-ins. However, only Red Hat Satellite packaged plug-ins are supported. Red Hat does not support plug-ins in the Red Hat Satellite Optional repository.
Candlepin is the subscription management subsystem within Red Hat Satellite 6. The only supported methods of using Candlepin are through the Red Hat Satellite 6 web UI, CLI, and API.
The only supported methods of using the embedded Tomcat application server are through the Red Hat Satellite 6 web UI, API, and database. Red Hat does not support direct interactions and modifications of the embedded Tomcat application server's local API or database.
1.4. Prerequisites
Important
1.4.1. Base Operating System
Important
#subscription-manager register#subscription-manager list --available --all#subscription-manager subscribe --pool=Red_Hat_Enterprise_Linux_Pool_Id
Important
- Red Hat Satellite Server requires Red Hat Enterprise Linux installations with the @Base package group with no other package-set modifications, and without third-party configurations or software that is not directly necessary for the direct operation of the server. This restriction includes hardening or other non-Red Hat security software. If such software is required in your infrastructure, install and verify a complete working Satellite Server first, then create a backup of the system before adding any non-Red Hat software.
- Your subscription-manager 'Release' field must be set to 6Server or 7Server in order to receive the latest version of Red Hat Enterprise Linux and Red Hat Satellite during the installation. Set the field by using the command:
# subscription-manager release --set=Release
Only release versions 6Server and 7Server are supported by Red Hat Satellite. - Update the system to the latest set of packages in Red Hat Enterprise Linux after setting the release:
#
yum update - Red Hat recommends that the Satellite Server be a freshly provisioned system that serves no other function except as a Satellite Server.
- Red Hat Satellite requires a networked base system with the following minimum specifications:
- 64-bit architecture
- The latest version of Red Hat Enterprise Linux 6 Server or 7 Server
- A minimum of two CPU cores, but four CPU cores are recommended.
- A minimum of 12 GB memory but ideally 16 GB of memory for each instance of Satellite. A minimum of 4 GB of swap space is recommended.
- A unique hostname. The hostname can contain lower-case letters, numbers, dots (.) and hyphens (-).
- No Java virtual machine installed on the system, remove any if they exist.
- No Puppet RPM files installed on the system.
- No third-party unsupported yum repositories enabled. Third-party repositories may offer conflicting or unsupported package versions that may cause installation or configuration errors.
- A current Red Hat Network subscription.
- Administrative user (
root) access. - Full forward and reverse DNS resolution using a fully qualified domain name. Ensure that
hostnameandlocalhostresolve correctly, using the following commands:# ping -c1 localhost # ping -c1 `hostname -f` # my_system.domain.com
Important
1.4.2. Supported Browsers
- Level 1: Fully supported preferred browsers for ideal experience.
- Level 2: Mostly supported. The interface functions but some design elements may not align correctly, UI controls and layout may be misaligned and there maybe degraded performance experienced.
- Level 3: Design elements may not align correctly.
- Level 4: Unsupported
Table 1.1. Supported Browser Matrix
| Browser | Version | Support Level |
|---|---|---|
| Firefox | 3.6 | L3 |
| Firefox | 17, 18, 19, 20 | L4 |
| Firefox | 21 | L2 |
| Firefox | 22, 23, 24 | L1 |
| Firefox | Latest | L1 |
| Chrome | 19, 20 | L4 |
| Chrome | 21, 27 | L2 |
| Chrome | Latest | L1 |
| Internet Explorer | 7, 8 | L4 |
| Internet Explorer | 9, 10, 11 | L2 |
| Safari | ALL | L4 |
Note
1.4.3. Storage
- A minimum of 6 GB storage for base operating system installation of Red Hat Enterprise Linux.
- A minimum of 400 MB storage for the Red Hat Satellite 6 software installation.
- A minimum of 20 GB storage for each unique software repository. Packages that are duplicated in different repositories are only stored once on the disk. Additional repositories containing duplicate packages will require less additional storage. The bulk of storage resides on the
/var/lib/mongodband/var/lib/pulpdirectories. These end points are not manually configurable. Make sure that storage is available on the/varfile system to prevent storage issues. - A minimum of 2 GB of available storage in
/var/lib/pgsqlwith the ability to grow the partition containing this directory as data storage requirements grow. - If you are using a disconnected installation, a copy of the repositories used in the installation are stored in the
/opt/directory. Ensure you have a minimum of 2GB of space for this file system and directory.
Note
Note
Table 1.2. Recommended Storage Considerations
| Directory | Installation Size Requirement | Runtime Requirement with Red Hat Enterprise Linux 5/6/7 synchronized |
|---|---|---|
| /var/lib/pulp | 1 MB | 200 GB |
| /var/lib/mongodb | 3.5 GB | 15 GB |
| /var/log | 10 MB | 100 MB |
| /var/lib/pgsql | 100 MB | 250 MB |
Important
1.4.4. Application Specifications
ntpd service and have it persist across restarts:
# service ntpd start # chkconfig ntpd on
chronyd service and have it persist across restarts:
# systemctl start chronyd # systemctl enable chronyd
1.4.5. Network Ports Required for Satellite Communications
Table 1.3. Ports for Browser-based User Interface Access to Satellite
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 443 | TCP | HTTPS | For Browser-based UI Access to Satellite |
| Optional | |||
| 80 | TCP | HTTP | To enable redirection to HTTPS for web UI Access to Satellite |
Table 1.4. Ports for Satellite to Red Hat CDN Communication
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 443 | TCP | HTTPS | Subscription Management Services, connecting to the Red Hat CDN |
Table 1.5. Ports for Client to Satellite Communication
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 53 | TCP and UDP | DNS | Queries to the Satellite's integrated DNS service |
| 67 | UDP | DHCP | For Client provisioning from the integrated Capsule |
| 69 | UDP | TFTP | Downloading PXE boot image files from the integrated Capsule |
| 80 | TCP | HTTP | Anaconda, yum, for obtaining Katello certificates, templates, and for downloading iPXE firmware |
| 443 | TCP | HTTPS | Subscription Management Services, yum, Telemetry Services, and for connection to the Katello Agent |
| 5647 | TCP | amqp | The Katello agent to communicate with the Satellite's Qpid dispatch router |
| 8140 | TCP | HTTPS | Puppet agent to Puppet master connections |
Table 1.6. Optional Network Ports
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 8443 | TCP | HTTP | Capsule to Client "reboot" command to a discovered host during provisioning |
| 7911 | TCP | DHCP | Capsule originated, for orchestration of DHCP records (local or external)[a] |
| 5000 | TCP | HTTP | Satellite originated, for compute resources in OpenStack or for running Docker containers |
| 22, 16514 | TCP | SSH/TLS | Satellite originated, for compute resources in libvirt |
| 389, 636 | TCP | SSH/TLS | Satellite originated, for LDAP and secured LDAP authentication sources |
| from 5910 to 5930 | TCP | SSH/TLS | Satellite originated, for NoVNC console in Web UI to hypervisors |
[a]
If the DHCP service is provided by an external service, opening this port is required on the external server.
| |||
Note
Note
Connections from Client to Satellite
- On a Red Hat Enterprise Linux 6 Satellite, execute as
root:#
iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p udp --dport 67 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p udp --dport 69 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 5647 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 8140 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables start#chkconfig iptables on - On a Red Hat Enterprise Linux 7 Satellite, execute as
root:#
firewall-cmd --add-port="53/udp" --add-port="53/tcp" \--add-port="67/udp" \--add-port="69/udp" --add-port="80/tcp" \--add-port="443/tcp" --add-port="5647/tcp" \--add-port="8140/tcp" \&& firewall-cmd --permanent --add-port="53/udp" --add-port="53/tcp" \--add-port="67/udp" \--add-port="69/udp" --add-port="80/tcp" \--add-port="443/tcp" --add-port="5647/tcp" \--add-port="8140/tcp"
1.4.6. SELinux Policy on Satellite 6
Note
Table 1.7. SELinux Commands to Change Default Port Assignments
| Default Port | SELinux Command |
|---|---|
| 80, 443, 8443 | semanage port -a -t http_port_t -p tcp 99999 |
| 8080 | semanage port -a -t http_cache_port_t -p tcp 99999 |
| 8140 | semanage port -a -t puppet_port_t -p tcp 99999 |
| 9090 | semanage port -a -t websm_port_t -p tcp 99999 |
| 69 | semanage port -a -t tftp_port_t -p udp 99999 |
| 53 (TCP) | semanage port -a -t dns_port_t -p tcp 99999 |
| 53 (UDP) | semanage port -a -t dns_port_t -p udp 99999 |
| 67, 68 | semanage port -a -t dhcpd_port_t -p udp 99999 |
| 5671 | semanage port -a -t amqp_port_t -p tcp 99999 |
| 8000 | semanage port -a -t soundd_port_t -p tcp 99999 |
| 7911 | semanage port -a -t dhcpd_port_t -p tcp 99999 |
| 5000 on Red Hat Enterprise Linux 6 | semanage port -a -t commplex_port_t -p tcp 99999 |
| 5000 on Red Hat Enterprise Linux 7 | semanage port -a -t commplex_main_port_t -p tcp 99999 |
| 22 | semanage port -a -t ssh_port_t -p tcp 99999 |
| 16514 (libvirt) | semanage port -a -t virt_port_t -p tcp 99999 |
| 389, 636 | semanage port -a -t ldap_port_t -p tcp 99999 |
| 5910 to 5930 | semanage port -a -t vnc_port_t -p tcp 99999 |
httpd server, you need to add this port to the virt_port_t SELinux type, as follows:
# semanage port -a -t virt_port_t -p tcp 99999
Important
# foreman-selinux-enable # foreman-selinux-relabel
semanage command if you need to disassociate the previously used port number and port type. For example:
# semanage port -d -t virt_port_t -p tcp 99999
1.4.7. Considerations for Large Deployments
qpidd message broker can reach several system-level limits, resulting in Satellite's failure to operate. To avoid this, one or more of these limits must be increased before deploying a large number of content hosts.
Table 1.8. Limits to be Increased for Large Deployments
| Number of Content Hosts | Client Connections | File Descriptors | Parallel Asynchronous I/O Operations | Concurrent Locks | Memory Map Areas |
|---|---|---|---|---|---|
| More than 225 | ✔ | ||||
| More than 500 | ✔ | ✔ | |||
| More than 1900 | ✔ | ✔ | ✔ | ||
| More than 30,000 | ✔ | ✔ | ✔ | ✔ | |
| More than 32,900 | ✔ | ✔ | ✔ | ✔ | ✔ |
Increasing the Maximum Number of Client Connections
qpidd reaches the maximum number of client connections. To increase it, first establish the new value of the limit that is calculated as:
(number_of_content_hosts x 2) + 100
/etc/qpid/qpidd.conf:
max-connections=value
Increasing the Maximum Number of File Descriptors
qpidd reaches the maximum number of file descriptors. To increase it, first establish the new value of the limit that is calculated as:
(number_of_content_hosts x 4) + 500
- On Red Hat Enterprise Linux 6, add the following line to
/etc/security/limits.conf:qpidd x nofile value
- On Red Hat Enterprise Linux 7, add the following line to
/usr/lib/systemd/system/qpidd.serviceat the end of the [Service] section:LimitNOFILE=value
Increasing the Maximum Number of Parallel Asynchronous I/O Operations
qpidd reaches the kernel limit of maximum parallel asynchronous I/O operations. To increase it, first establish the new value of the limit that is calculated as:
33 x number_of_content_hosts
/etc/sysctl.conf:
fs.aio-max-nr=value
# sysctl -p
Increasing the Maximum Number of Concurrent Locks
qpidd might reach the maximum number of concurrent locks. To increase this limit, create a configuration file in the directory where the exchanges.db file is stored. The directory location can vary. Confirm its location by searching the /var/lib/qpidd/ directory:
# find /var/lib/qpidd -name exchanges.db /var/lib/qpidd/qls/dat/exchanges.db
exchanges.db is stored in the /var/lib/qpidd/qls/dat/ directory. In this directory, create a DB_CONFIG file that must be owned and readable by the qpidd user. Add the following content to DB_CONFIG:
set_lk_max_locks 10000 set_lk_max_objects 10000
Increasing the Maximum Number of Memory Map Areas
qpidd reaches the kernel limit of maximum number of memory map areas per process. This problem occurs only on Red Hat Enterprise Linux 7.
/etc/sysctl.conf:
vm.max_map_count = 655300
# sysctl -p
Important
qpidd to apply any changes to the aforementioned limits:
- On Red Hat Enterprise Linux 6:
# service qpidd restart
- On Red Hat Enterprise Linux 7:
# systemctl restart qpidd
1.4.8. Troubleshooting
sosreport command that collects configuration and diagnostic information from a Red Hat Enterprise Linux system and is used to provide the initial analysis of a system required when opening a service request with Red Hat Technical Support. For more information on using sosreport, refer to the What is a sosreport and how to create one in Red Hat Enterprise Linux 4.6 and later? article on Red Hat Customer Portal[5].
# yum install sos
Chapter 2. Installing Red Hat Satellite Server
katello-installer, to install and configure the Satellite Server. Several configuration options are available; these are described in Section 2.3, “Optional Configuration Options”.
2.1. Obtaining the Required Packages
- Download the packages directly from the Red Hat Content Delivery Network (CDN).
- Download an ISO image of the packages required from an external computer.
2.1.1. Downloading from a Connected Network
Procedure 2.1. To Download Satellite Server on a Certificate-managed System:
- List all the available subscriptions to find the correct Red Hat Satellite and Red Hat Enterprise Linux product to allocate to your system:
# subscription-manager list --available --all
This command displays output similar to the following:+-------------------------------------------+ Available Subscriptions +-------------------------------------------+ Subscription Name: Red Hat Satellite Subscription Provides: Red Hat Red Hat Satellite Capsule 6 Red Hat Enterprise Linux 7 Red Hat Satellite 6 SKU: SKU123456 Pool ID: e1730d1f4eaa448397bfd30c8c7f3d334bd8b Available: 6 Suggested: 1 Service Level: Self-Support Service Type: L1-L3 Multi-Entitlement: No Ends: 01/01/2022 System Type: PhysicalNote
The SKU and Pool ID depend on the Red Hat Satellite product type that corresponds to your system version and product type. Take note of the pool IDs for Red Hat Satellite 6.1, Red Hat Enterprise Linux and Red Hat Software collections that correspond to your system version and product type. - Attach a subscription to the registered system:
# subscription-manager subscribe --pool=Red_Hat_Satellite_Pool_Id \ && subscription-manager subscribe --pool=Red_Hat_Enterprise_Linux_Pool_Id \ && subscription-manager subscribe \ --pool=Red_Hat_Enterprise_Linux_Software_Collections_Pool_Id
- Disable all existing repositories:
# subscription-manager repos --disable "*"
- Enable the Red Hat Satellite and Red Hat Enterprise Linux and Red Hat Software Collections repositories. Ensure the Red Hat Enterprise Linux repository matches the specific version you are using.For Red Hat Enterprise Linux 6:
# subscription-manager repos --enable rhel-6-server-rpms \ --enable rhel-server-rhscl-6-rpms \ --enable rhel-6-server-satellite-6.1-rpms
For Red Hat Enterprise Linux 7:# subscription-manager repos --enable rhel-7-server-rpms \ --enable rhel-server-rhscl-7-rpms \ --enable rhel-7-server-satellite-6.1-rpms
Note
The commands above are based on Red Hat Enterprise Linux 6 and 7. If you are using a different version of Red Hat Enterprise Linux, change the repository based on your specific version. - If required, to verify what repositories have been enabled, use the
yum repolist enabledcommand. For example, on Red Hat Enterprise Linux 7:#
yum repolist enabledLoaded plugins: product-id, subscription-manager repo id repo name status !rhel-7-server-rpms/x86_64 Red Hat Enterprise Linux 7 Server (RPMs) 9,889 !rhel-7-server-satellite-6.1-rpms/x86_64 Red Hat Satellite 6.1 (for RHEL 7 Server) (RPMs) 545 !rhel-server-rhscl-7-rpms/x86_64 Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Server 4,279 repolist: 14,713 - Install the katello package:
# yum install katello
Important
2.1.2. Downloading from a Disconnected Network
Note
Before installing, you must have a repository configured with Red Hat Enterprise Linux 6.6 and later or Red Hat Enterprise Linux 7.0 and later. For more information on how to update a disconnected system, in Red Hat Enterprise Linux 6 see Upgrading the System Off-line with ISO and Yum in Deployment guide, and for Red Hat Enterprise Linux 7 see Upgrading the System Off-line with ISO and Yum in System Administrator's Guide.
/opt/ directory. Ensure you have a minimum of 2GB of space for this file system and directory.
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
- Download the ISO image from the Red Hat Customer Portal.
- As the root user, mount the ISO image to a directory:
# mkdir /media/iso # mount -o loop iso_filename /media/iso
- Change to the
/media/isodirectory. - Run the installer script in the mounted directory:
# ./install_packages
Important
2.2. Running the Installation and Configuration Program
katello-installer must be run to install the Satellite Server. There are two main methods to do so:
- Manual Configuration - manually run the command and configuration options on the command-line interface (CLI).
- Automatic Configuration - most of the installation and configuration process can be automated by using an answer file.
2.2.1. Configuring Red Hat Satellite Manually
katello-installer script supports the ability to override various default settings within the different components of Satellite Server. For example, for organizations that have an existing HTTP proxy, additional configuration options need to be passed to the Satellite Server installer. See Section 2.3, “Optional Configuration Options” for other configuration options that can be used based on your environment's requirements.
Procedure 2.2. To Run the Installer Script:
- Run the following command as the root user to manually configure Red Hat Satellite:
# katello-installer --foreman-initial-organization "initial_organization_name" \ --foreman-initial-location "initial_location_name" \ --foreman-admin-username admin-username \ --foreman-admin-password admin-password
This script can be run multiple times without any issues.Important
If you do not specify any of these values, the default values are used. Use thekatello-installer --helpcommand to display the available options and any default values.When the configuration script has completed successfully, it displays output similar to the following:# katello-installer Installing Done [100%] [........................................] Success! * Katello is running at https://satellite.example.com Default credentials are 'admin:changeme' * Capsule is running at https://satellite.example.com:9090 * 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/katello-installer/katello-installer.log - After configuration, run the following commands to configure the firewall to limit elasticsearch to the
foremanandrootusers and make these rules persistent during reboots:- On Red Hat Enterprise Linux 6, execute as root:
# iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner \ foreman -j ACCEPT \ && iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \ && iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -j DROP \ && service iptables save
Make sure theiptablesservice is started and enabled:# service iptables start # chkconfig iptables on
- On Red Hat Enterprise Linux 7, execute as root:
# firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \ && firewall-cmd --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \ && firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \ && firewall-cmd --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \ && firewall-cmd --direct --add-rule ipv4 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP \ && firewall-cmd --direct --add-rule ipv6 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP \ && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \ && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \ && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \ && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \ && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP \ && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP
2.2.2. Configuring Red Hat Satellite with an Answer File
katello-installer for the first time, the answer file is populated with the standard parameter values for installation.
Procedure 2.3. To Configure and Use an Answer File for Installation:
- Copy the default answer file located at
/etc/katello-installer/answers.katello-installer.yamlto a location on your local file system:# cp /etc/katello-installer/answers.katello-installer.yaml /etc/katello-installer/my-answer-file.yaml
- Open your copy of the answer file, edit the values to suit your environment, and save the file.
Note
The parameters for each module are specified in the module'sparams.ppfile. Run the following command to view available modules with parameter files:# rpm -ql katello-installer-base | grep params.pp
- Open the
/etc/katello-installer/katello-installer.yamlfile and edit the answer file entry to point to your custom answer file::answer_file: /etc/katello-installer/my-answer-file.yaml
- Run the
katello-installercommand.# katello-installer
2.3. Optional Configuration Options
2.3.1. Configuring Red Hat Satellite with an HTTP Proxy
http_proxy, https_proxy, and no_proxy environment variables are not set:
# export http_proxy="" # export https_proxy=$http_proxy # export no_proxy=$http_proxy
katello-installer with the following options:
# katello-installer --katello-proxy-url=http://myproxy.example.com \ --katello-proxy-port=8080 \ --katello-proxy-username=proxy_username \ --katello-proxy-password=proxy_password
--katello-proxy-urlis the URL of the HTTP proxy server.--katello-proxy-portis the port the HTTP proxy server is listening on.--katello-proxy-username(optional) is the HTTP proxy username for authentication. If your HTTP proxy server does not require a username, you are not required to specify the username.--katello-proxy-password(optional) is the HTTP proxy password for authentication. If your HTTP proxy server does not require a password, you are not required to specify the password. The following list of special characters used in a password, as well as any whitespace, must be escaped using the back slash\character:] [ ? \ < ~ # ` ! @ $ % ^ & * ( ) + = } | : " ; ' , > {. Alternatively, use quotation marks around the password.
Procedure 2.4. To Configure Satellite Server to Allow Red Hat Subscription Manager Access to the CDN:
- On the network gateway and the HTTP Proxy, open the following hostnames, ports and protocols:
Table 2.1. Required Hostnames, Ports and Protocols
Hostname Port Protocol subscription.rhn.redhat.com 443 https cdn.redhat.com 443 https *.akamaiedge.net 443 https - In the Satellite Server, complete the following details in the
/etc/rhsm/rhsm.conffile. For example:# an http proxy server to use (enter server FQDN) proxy_hostname = http_proxy.example.com # port for http proxy server proxy_port = 3128 # user name for authenticating to an http proxy, if needed proxy_user = # password for basic http proxy auth, if needed proxy_password =
2.3.2. Configuring Red Hat Satellite with a Custom Server Certificate
Note
Prerequisites
- Certificate file for the Satellite Server, signed by your certificate authority (or self-signed)
- Katello installer parameter
--certs-server-cert. In this example,satellite.crt. - Certificate signing request file that was used to create the certificate for the Satellite Server
- Katello installer parameter
--certs-server-cert-req. In this example,satellite.crt.req. - Satellite Server's private key used to sign the certificate
- Katello installer parameter
--certs-server-key. In this example,satellite.crt.key. - CA certificate
- Katello installer parameter
--certs-server-ca-cert. In this example,ca_cert.crt.
Procedure 2.5. To Set a Custom Server Certificate Before Running the Katello Installer:
Note
/root/sat_cert. Using an absolute path in the root users' directory provides a fixed location that is available to all users who log in to the server with root permissions. Before running this command, ensure the directory already exists.
- Run the following command on the Red Hat Satellite Server to use the custom certificate.
# katello-installer \ --certs-server-cert
/root/sat_cert/satellite.crt\ --certs-server-cert-req/root/sat_cert/satellite.crt.req\ --certs-server-key/root/sat_cert/satellite.crt.key\ --certs-server-ca-cert/root/sat_cert/ca_cert.crt
Important
Procedure 2.6. To Set a Custom Server Certificate After Running the Katello Installer:
Note
/root/sat_cert. Using an absolute path in the root users' directory provides a fixed location that is available to all users who log in to the server with root permissions. Before running this command, ensure the directory already exists.
- Run the following command on the Red Hat Satellite Server to regenerate the katello-ca-consumer package and the Satellite Server's certificate.
# katello-installer \ --certs-server-cert
/root/sat_cert/satellite.crt\ --certs-server-cert-req/root/sat_cert/satellite.crt.req\ --certs-server-key/root/sat_cert/private.crt.key\ --certs-server-ca-cert/root/sat_cert/ca_cert.crt\ --certs-update-server \ --certs-update-server-ca \ --certs-update-all - Run the following command on the client systems to install the new client and server certificates.
# rpm -Uvh http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
Important
2.3.3. Configuring DNS, DHCP, and TFTP
named) to provide authoritative DNS services for the example.com domain and the 172.17.13.x subnet. This requires setting up a DNS zone for forward lookups, which will be contained in the example.com zone file. Additionally, a DNS zone for reverse lookups will be created for the 172.17.13.x subnet, which will be contained in the 13.17.172.in-addr.arpa reverse zone file. This ensures that hosts provisioned from Satellite use the correct name resolution parameters. This section also describes how to configure the TFTP proxy so that hosts can boot using PXE.
- Have access to IP addresses in the range 172.17.13.100 to 172.17.13.150 for DHCP.
- Use the Satellite (
satellite.example.comat 172.17.13.2) for DNS. - Receive a
pxelinux.0file from Satellite (satellite.example.comat 172.17.13.2) to enable PXE-booting. - Have host names of
hostname.example.com, where hostname is configured when the host is provisioned.
Important
katello-installer command as root, using the specified options to configure the required services on the Satellite server. Remember to substitute your desired administrator user name and password.
Important
- If you have created an admin user and password by running
katello-installerpreviously , do not include the--foreman-admin-usernameand--foreman-admin-passwordoptions in the following command. - If you do not specify the administrator user name and password, the default user
adminis created, and the password is automatically generated. The credentials are displayed at the end of the installation process. Make a note of this password. You can also retrieve the password fromadmin_passwordparameter in the/etc/katello-installer/answers.katello-installer.yamlfile.
# katello-installer --foreman-admin-username admin-username \ --foreman-admin-password admin-password \ --capsule-dns true \ --capsule-dns-interface eth0 \ --capsule-dns-zone example.com \ --capsule-dns-forwarders 172.17.13.1 \ --capsule-dns-reverse 13.17.172.in-addr.arpa \ --capsule-dhcp true \ --capsule-dhcp-interface eth0 \ --capsule-dhcp-range "172.17.13.100 172.17.13.150" \ --capsule-dhcp-gateway 172.17.13.1 \ --capsule-dhcp-nameservers 172.17.13.2 \ --capsule-tftp true \ --capsule-tftp-servername $(hostname) \ --capsule-puppet true \ --capsule-puppetca true
katello-installer outputs the status of the installation.
Success!
* Katello is running at https://satellite.example.com
Default credentials are 'admin:*******'
* Capsule is running at https://satellite.example.com:9090
* 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/katello-installer/katello-installer.log2.3.3.1. Additional DNS, DHCP and TFTP Options
katello-installer command uses Puppet; consequently, it will install additional packages (bind, dhcp, xinetd, and so on) and configure them to add the requested functionality.
katello-installer --help.
Table 2.2. Satellite Configuration Options
|
Option
|
Description
|
Value
|
|---|---|---|
| --foreman-admin-username | The user name for the initial administrator. | User specified. |
| --foreman-admin-password | The password for the initial administrator. | User specified. |
| --capsule-dns | Enable DNS proxy capability | yes |
| --capsule-dns-interface | Which interface named should listen on | eth0 |
| --capsule-dns-zone | The Forward DNS zone that the Satellite will host | example.com |
| --capsule-dns-forwarders | The DNS server that unknown queries are forwarded to | 172.17.13.1 |
| --capsule-dns-reverse | The Reverse DNS zone the Satellite hosts. This is usually the first three octets of the IP address (172.17.13) reversed , and appended with ".in-addr.arpa". | 13.17.172.in-addr.arpa |
| --capsule-dhcp | Enable DHCP proxy capability | yes |
| --capsule-dhcp-interface | The interface that DHCP listens on | eth0 |
| --capsule-dhcp-range | The range of IP addresses to issue to clients. | 172.17.13.100 172.172.13.150 |
| --capsule-dhcp-gateway | The default gateway IP to issue to clients. | 172.17.13.1 |
| --capsule-dhcp-nameservers | The host that the clients should use for name resolution. This should be configured with the Satellite's IP in this deployment model. | 172.17.13.2 |
| --capsule-tftp | Enable TFTP proxy capability. This is needed to PXE boot the clients. | yes |
| --capsule-tftp-servername | Sets the TFTP host name. Set this to match the server's host name (satellite.example.com). | $(hostname) |
| --capsule-puppet | Enable the Puppet Master. | yes |
| --capsule-puppetca | Enable the Puppet CA. | yes |
Chapter 3. Logging in to Red Hat Satellite
- Access the Satellite server web UI using a web browser using the host name or FQDN:
https://host_name/To identify the Satellite servers host name, use thehostnamecommand on the Satellite server. Add the-foption to display the FQDN:# hostname -f
Important
An untrusted connection warning appears on your web browser when accessing Satellite for the first time. Accept the self-signed certificate and add the Satellite URL as a security exception to override the settings. This procedure might differ depending on the browser being used.Only do this if you are sure that the Satellite URL is a trusted source. - Enter the user name and password created during the configuration process. If a user was not created during the configuration process, the default user name is
admin.
Note
# foreman-rake permissions:reset Reset to user: admin, password: qwJxBptxb7Gfcjj5
3.1. Organizations
Default_Organization for use on the command line.
Important
3.1.1. Creating an Organization
Procedure 3.1. Creating an Organization
- Click → .
- Click .
- Specify the name of the new organization in the Name field. Take care not to add an extra space at the end of the name as this will affect the corresponding label created.
- In the Label field, optionally enter a text string similar to the name but without spaces. If omitted, a label to match the name of the new organization, but with underscores in place of spaces, is created automatically. The label is for use on the command line and cannot be changed once this procedure has been completed. Having a consistent name to label correspondence will reduce errors on the command line. Consider creating names without spaces.
- Enter a description of the new organization in the Description field.
- Click .
- Select the hosts to assign to the new organization.
- Click to assign all hosts with no organization to the new organization.
- Click to manually select and assign the hosts with no organization.
- Click to skip assigning hosts.
3.1.2. Editing an Organization
Procedure 3.2. Editing an Organization
- Click → .
- Click the name of the organization you want to edit.
- Select the resource to edit.
- Click the name of the desired items to add them to the Selected Items list.
- Click .
3.1.3. Removing an Organization
Procedure 3.3. Removing an Organization
- Click the → menu on the top right hand corner.
- Select from the drop down menu to the right of the name of the organization you want to remove.
- An alert box appears:
Delete Organization Name?
- Click the button.
The organization is removed from Red Hat Satellite.
3.2. Changing Your Account Preferences
- - Change personal data about your login name, as well as your password and default location/organization.
- First Name
- Surname
- Email Address
- Default Location
- Default Organization
- Password
- - Add or remove locations on your account based on the locations created within the Red Hat Satellite Server.
- - Add or remove organizations on your user account based on the organizations created within the Red Hat Satellite Server.
- - Add or remove roles on your user account based on a set of roles created within the Red Hat Satellite Server.
Procedure 3.4. Changing your Account Preferences
- At the upper right corner, hover your mouse over the user and on the drop-down menu that appears, click on .
- Choose the subtab of the preference you wish to change and click on the subtab.
- Change the preferences you wish to change and click on .
Note
3.3. Additional Resources
- The Users and Roles chapter in the Red Hat Satellite 6.1 User Guide describes creating users and their roles.
- The Configuring External Authentication chapter in the Red Hat Satellite 6.1 User Guide describes using external authentication sources, such as LDAP or Red Hat Enterprise Linux Identity Management (IdM), to derive user and user group permissions.
Chapter 4. Populating Red Hat Satellite with Content
- If your Satellite server can access the Internet directly, see Section 4.1, “Connected Satellite”.
- If your Satellite server is isolated from the Internet, see Section 4.2, “Disconnected Satellite”.
4.1. Connected Satellite
4.1.1. Accessing Red Hat Content Providers
4.1.1.1. Creating a Subscription Manifest
Important
You must meet the following conditions before continuing with this task:
- A Customer Portal user name and password.
- Sufficient subscriptions to add to the manifest.
Procedure 4.1. To Create a Manifest for Satellite 6:
- Navigate to https://access.redhat.com and click SUBSCRIPTIONS on the main menu at the top of the page.
- Scroll down to the Red Hat Subscription Management section, and click Satellite under Subscription Management Applications.
- To create a manifest for a new system, click Register a Satellite. Select the Satellite version and Name that must match the name of the organization on your Satellite. Click .To add or modify subscriptions of an existing manifest, click the name of the system this manifest is associated to, and click Attach a subscription.
- For each subscription that you want to attach, select the check box for that subscription, and specify the quantity of subscriptions to attach.
- Click
Note
It can take several minutes for all the subscriptions to attach. Refresh the screen every few minutes until you receive confirmation that the subscriptions are attached. - After the subscriptions have been attached, click to generate an archive in .zip format containing the manifest for Red Hat Satellite.
4.1.1.2. Uploading a Subscription Manifest to Satellite
Procedure 4.2. To Upload a Subscription Manifest:
- Log in to the Satellite server and select the desired organization from the menu in the top left hand corner.
- Click → and then click at the upper right of the page.
- In the Subscription Manifest section, click Actions and under the Upload New Manifest subsection, click .
- Select the manifest file to upload, and then click Upload.
4.1.1.3. Enabling Red Hat Repositories
Procedure 4.3. To Enable Red Hat Repositories:
- On the main menu, click → and then click the tab for the type of content that you want to enable.
- Click the product name for which you want to add repositories. This expands the list of available repository sets.
- Click each repository set from which you want to select repositories, and select the check box for each required repository. The repository is automatically enabled. The content from this repository will be downloaded during the next synchronization, see Section 4.1.3, “Synchronizing Content”. After enabling a Red Hat repository, a product for this repository is automatically created.
Important
Ensure you enable the Satellite Tools repository. This repository provides the katello-agent and puppet-agent packages for clients registered to the Satellite Server.
- Red Hat Enterprise Linux 6 Server Kickstart x86_64 6Server Repository
- Red Hat Enterprise Linux 6 Server RPMs x86_64 6Server Repository
- Red Hat Enterprise Linux 6 Server - Satellite Tools RPMs x86_64 Repository
4.1.2. Using Products
4.1.2.1. Creating a Product
Procedure 4.4. To Create a Product:
- Click → .
- Click .
- Specify the name of the new product in the Name field.
- Specify the label for the new product in the Label field.
- Select a GPG key from the GPG Key drop-down menu.
- Select a synchronization plan from the Sync Plan drop-down menu. You can also select the New Sync Plan link to create a new synchronization plan.
- Enter a description of the new product in the Description field.
- Click .
4.1.2.2. Adding Repositories to a Product
Procedure 4.5. To Add Repositories to a Product:
- Click → .
- Click the product to add a repository.
- Click .
- Click .
- Specify the name of the new repository in the Name field.
- Specify a label for the new repository in the Label field.
- Select the type of the repository from the Type drop-down menu.
- Specify the URL of the repository in the URL field.
- Choose whether to publish the repository via HTTP by selecting Publish via HTTP.
- Select a GPG key for the repository from the GPG Key drop-down menu.
- Click .
4.1.2.3. Using Bulk Actions for Products
Procedure 4.6. To Synchronize Multiple Products:
- Navigate to → .
- Select the check box for the products you want to work with.
- Click .
- Click the tab and then click .
Procedure 4.7. To Remove Multiple Products:
- Navigate to → .
- Select the check box for the products you want to work with.
- Click .
- Click and then click .
Procedure 4.8. To Update Synchronization Plans for Multiple Products:
- Navigate to → .
- Select the check box for the products you want to work with.
- Click .
- Click the Alter Sync Plans tab. Depending on the type of action you want to perform select from the following alternatives.
- To create a new synchronization plan, click . Specify the required details and click .
- To remove the synchronization plans from the selected products, click .
- To update the synchronization plans for the selected products, click .
4.1.2.4. Using Repository Discovery
Procedure 4.9. To Use Repository Discovery:
- Navigate to → .
- Click .
- Insert the URL where the repositories are located in the Yum Repo Discovery field.
- Click .A list of the repositories at the URL is displayed under Results.
- Click Discovered URLs to add the repositories to the product.
- Click .
- Choose whether to add the repositories to an existing product or create a new product.
- To add the repositories to an existing product:
- Select Existing Product.
- Select the required product from the drop-down menu.
- To create a new product to add the repositories to:
- Select New Product.
- Enter the Name and Label for the new product and select a GPG Key from the drop-down menu.
- Select Serve via HTTP to serve the repository via HTTP.
- Edit the Name and Label for the Selected URLs.
- Click .
4.1.2.5. Removing a Product
Procedure 4.10. To Remove a Product from Satellite:
- Navigate to → .
- Select the check box next to the products you want to remove.
- Click and then click .
- Click to confirm that you want to remove the products.
4.1.3. Synchronizing Content
- Data integrity between packages
- Updated packages, security fixes, and errata
4.1.3.1. Synchronization Status
Important
Procedure 4.11. Synchronize Products
- Navigate to → . Based on the subscriptions and repositories enabled, the list of product repositories available for synchronization is displayed.
- Click the arrow next to the product name to see available content.
- Select the content you want to synchronize.
- Click to starting synchronizing. The status of the synchronization process will appear in the Result column. If synchronization is successful, Sync complete will appear in the Result column. If synchronization failed, Error syncing will appear.
Note
4.1.3.2. Creating a Synchronization Plan
Procedure 4.12. To Create a Synchronization Plan:
- Navigate to → .
- Click to create a new synchronization plan.
- Specify the Name, Description, Interval and Start Date for the plan.
- Click .
Note
4.1.3.3. Applying a Synchronization Schedule
Procedure 4.13. To Create a Synchronization Schedule:
- Click → and select the synchronization plan you want to implement.
- Click → in the synchronization plan main page.
- Select the check box of the product to associate with the synchronization plan.
- Click .
4.1.4. Using a Content ISO for Initial Synchronization
katello-disconnected (see Section 4.2.2, “Using the Synchronization Host”).
Example 4.1. Synchronizing a Repository from a Local Source
- Download the content ISO for Red Hat Enterprise Linux 6 from the Red Hat Customer Portal (see Section 4.2.1, “Using Content ISO” for detailed instructions). Copy the content ISO to your Satellite server, for example to the
/root/isos/directory. - On the Satellite server, create a mount point, mount the ISO and copy its content to a writable directory that Satellite can access, in this example
/mnt/rhel6/:#
mkdir /mnt/iso#mount -o loop /root/isos/sat-6-isos--rhel-6-server-x86_64.iso /mnt/iso#cp -ruv /mnt/iso/ /mnt/rhel6/Then unmount the ISO and remove the mount point:#
umount /mnt/iso#rmdir /mnt/iso - Set the correct SELinux context and ownership for the content directory:
#
chcon -R --type=httpd_sys_rw_content_t /mnt/rhel6/#chown -R apache:apache /mnt/rhel6/ - Create or edit the
/etc/pulp/content/sources/conf.d/local.conffile. Insert the following text to the file:[rhel-6-server] enabled: 1 priority: 0 expires: 3d name: Red Hat Enterprise Linux 6 Server type: yum base_url: file:///mnt/rhel6/content/dist/rhel/server/6/6Server/x86_64/os/
Thebase_urlpath may differ in your content ISO. The directory specified inbase_urlmust contain therepodatadirectory, otherwise the synchronization will fail. To synchronize multiple repositories, create a separate entry for each of them in the configuration file/etc/pulp/content/sources/conf.d/local.conf. - In the Satellite web UI, navigate to → and select the repository to be enabled, in this example Red Hat Enterprise Linux 6 Server RPMs x86_64 6Server.Under → select the repository to be synchronized and click .Note that there is no indication in the Satellite web UI of which source is being used. In case of problems with a local source, Satellite pulls content through the network. To monitor the process, run the following command in the console on Satellite (limited to Red Hat Enterprise Linux 7 base systems):
#
journalctl -f -l SYSLOG_IDENTIFIER=pulp | grep -v worker[\-,\.]heartbeatThe above command displays interactive logs. First, the Satellite server connects to the Red Hat Customer Portal to download and process repository metadata. Then, the local repository is loaded. In case of any errors, cancel the synchronization in the Satellite web UI and verify your configuration. - After successful synchronization you can detach the local source by removing its entry from
/etc/pulp/content/sources/conf.d/local.conf.
4.2. Disconnected Satellite
4.2.1. Using Content ISO
- Download the product ISO from the Red Hat Customer Portal, as follows:
- Go to
Downloads(at the very top of the window) and select Red Hat Satellite. - Open the
Content ISOstab. All products to which the account is subscribed are listed there. - Click the link for the product name, such as Red Hat Enterprise Linux 6 Server (x86_64)(2015-03-12) to download the ISO.
- Save to media.
- Copy all of the Satellite content ISOs to a directory that Satellite can access. This example uses
/root/isos. - Create a local directory that will be shared via
httpdon the Satellite. This example uses/var/www/html/pub/sat-import/.#
mkdir -p /var/www/html/pub/sat-import/ - Recursively copy the contents of the first ISO to the local directory:
#
mkdir /mnt/iso#mount -o loop /root/isos/first_iso /mnt/iso#cp -ruv /mnt/iso/* /var/www/html/pub/sat-import/#umount /mnt/iso#rmdir /mnt/iso - Repeat the above step for each ISO until you have copied all the data from the series of ISOs into the local directory
/var/www/html/pub/sat-import/. - Ensure that the SELinux contexts are correct:
#
restorecon -rv /var/www/html/pub/sat-import/ - Modify the default provider URL the Satellite web interface:
- Log in to the Satellite web interface.
- Select the required organization from the Organization menu.
- Click → and then click .
- On the Subscription Manifest information screen select the Actions tab. Under Red Hat Provider Details click the edit icon on the Red Hat CDN URL entry and change it to the Satellite host name with the newly created directory, for example:
http://server.example.com/pub/sat-import/
Click . - Click to choose the manifest file.
- Click to import your manifest.
Note
The Satellite is now acting as its own CDN with the files located inhttp://localhost. This is not a requirement. The CDN can be hosted on a different machine inside the same disconnected network as long as it is accessible to the Satellite server via HTTP. - To enable the repositories from the local CDN, click →
- Click → .
- Select the repositories you want to synchronize and click .
4.2.2. Using the Synchronization Host
Important

Figure 4.1. Disconnected Satellite
4.2.2.1. Configuring the Synchronization Host
To import content from the Red Hat Content Distribution Network (CDN), the synchronization host requires:
- An Internet connection
- Valid Red Hat Network subscriptions
- A valid manifest (See Section 4.1.1.1, “Creating a Subscription Manifest” for instructions on how to obtain one.)
Procedure 4.14. To Configure a Host to Synchronize and Export Content from the Red Hat CDN:
- Use Red Hat Subscription Manager to register the synchronization host to RHN.
- List all the available subscriptions to find the correct Red Hat Satellite product to allocate to your system:
#
subscription-manager list --available --allThis command displays output similar to the following:+-------------------------------------------+ Available Subscriptions +-------------------------------------------+ ProductName: Red Hat Satellite ProductId: SKU123456 PoolId: e1730d1f4eaa448397bfd30c8c7f3d334bd8b Quantity: 10 Multi-Entitlement: No Expires: 08/20/2013 MachineType: physicalNote
The Product ID and Pool ID depend on the Red Hat Satellite product type that corresponds to your system version and product type. - Subscribe to the required pool IDs:
#
subscription-manager subscribe \--pool=Red_Hat_Satellite_Pool_ID \--pool=Red_Hat_Enterprise_Linux_Pool_ID \--pool=Red_Hat_Enterprise_Linux_Software_Collections_Pool_ID - Disable all existing repositories:
#
subscription-manager repos --disable "*" - Enable the Red Hat Satellite and Red Hat Enterprise Linux and Red Hat Software Collections repositories. Ensure the Red Hat Enterprise Linux repository matches the specific version you are using.
#
subscription-manager repos --enable rhel-6-server-rpms \--enable rhel-server-rhscl-6-rpms \--enable rhel-6-server-satellite-6.1-rpmsNote
The commands above are based on Red Hat Enterprise Linux 6. If you are using a different version of Red Hat Enterprise Linux, change the repository based on your specific version. - Install katello-utils:
#
yum install katello-utilskatello-utils includes thekatello-disconnectedutility that is required to set up repositories for import while qpid related packages are necessary for pulp configuration. - Generate a 32-character alphanumeric string for the
oauth_secretentry in the/etc/pulp/server.conffile:$
tr -dc "[:alnum:]" < /dev/urandom | head -c 32 - In the
/etc/pulp/server.conf, uncomment the[oauth]entry and add the randomly-generated value from the previous step as theoauth_secretvalue:[oauth] enabled: true oauth_key: katello oauth_secret: v8SeYqvS5QUfmg0dIrJOBG58lAHDRZnN
- Disable authentication in
/etc/qpid/qpidd.conf:# Configuration file for qpidd. Entries are of the form: # name=value # # (Note: no spaces on either side of '='). # Run "qpidd --help" or see "man qpidd" for more details. auth=no
All incoming connections authenticate using the Satellite's default realm. - Configure the connection from
katello-disconnectedto Pulp with the previously generated value as your--oauth-secretoption:#
katello-disconnected setup --oauth-key=katello --oauth-secret=v8SeYqvS5QUfmg0dIrJOBG58lAHDRZnNThis places a configuration value in~/.katello-disconnected. - Configure Pulp on the synchronization server:
sudo service qpidd start sudo chkconfig qpidd on sudo service mongod start sleep 10 sudo chkconfig mongod on sudo -u apache pulp-manage-db sudo service httpd restart sudo chkconfig httpd on sudo chkconfig pulp_workers on sudo service pulp_workers start sudo chkconfig pulp_celerybeat on sudo service pulp_celerybeat start sudo chkconfig pulp_resource_manager on sudo service pulp_resource_manager start
- Import the manifest to set up the list of available repositories to synchronize based on the selected subscriptions:
#
katello-disconnected import -m ./manifest.zip
4.2.2.2. Synchronizing Content
katello-disconnected enables all repositories that are included in the manifest for synchronization. Synchronization time is directly related to the amount of repositories to be synchronized. If the manifest has a large amount of repositories, the synchronization will take time and network resources.
katello-disconnected allows for the synchronization of specific repositories. This section will set up Pulp for synchronizing content.
- Disable all repositories:
#
katello-disconnected disable --allkatello-disconnectedenables all repositories by default. - Choose which repositories you wish to sync by listing all available repositories from the manifest:
#
katello-disconnected list --disabledrhel-6-server-rhn-tools-rpms-6_6-x86_64 rhel-6-server-rhn-tools-rpms-6Server-x86_64 rhel-6-server-kickstart-6Server-x86_64 rhel-6-server-kickstart-6_6-x86_64 rhel-6-server-rh-common-rpms-6_6-x86_64 rhel-6-server-rpms-6_6-x86_64 - Enable the chosen repositories for synchronization:
#
katello-disconnected enable -r rhel-6-server-rh-common-rpms-6_6-x86_64 - Create the repositories and push them to Pulp to allow synchronization:
#
katello-disconnected configureNote
The configure option forkatello-disconnectedreads the manifest, creates pulp repositories, and generates scripts before synchronization. It needs to be run each time a repository is enabled or disabled. - Synchronize the repositories:
#
katello-disconnected syncYou can use thewatchoption to monitor the synchronization process.#
katello-disconnected watchWatching sync... (this may be safely interrupted with Ctrl+C) running: rhel-6-server-rh-common-rpms-6_6-x86_64 running: rhel-6-server-rh-common-rpms-6_6-x86_64 ... finished: rhel-6-server-rh-common-rpms-6_6-x86_64 Watching finished
4.2.2.3. Exporting Content
- Export the synchronized repositories:
#
katello-disconnected export -t /var/tmp/exportYou can use thewatchoption to monitor the synchronization process. The output will look similar to:#
katello-disconnected watchWatching sync... (this may be safely interrupted with Ctrl+C) running: rhel-6-server-rh-common-rpms-6_6-x86_64 finished: rhel-6-server-rh-common-rpms-6_6-x86_64 Watching finished Done watching ... Copying content to /var/tmp/export Archiving contents of /var/tmp/export into 4600M tar archives. NOTE: This may take a while. tar: Removing leading `/' from member names Done exporting content, please copy /var/tmp/export/* to your disconnected hostThis operation will create the following files in/var/tmp/export:#
ls /var/tmp/export/content-export-00 content-export-01 content-export-02 expand_export.sh - Copy the files from
/var/tmp/exportto the external media.Note
If the files are too big for your external media, the files can be copied sequentially in a series of DVDs.
4.2.2.4. Importing Content to a Disconnected Satellite Server
- Copy all of the Satellite Content ISOs to a directory that the Satellite can access. This example uses
/root/isos. - Create a local directory that will be shared via
httpdon the Satellite. This example uses/var/www.html/pub/sat-import/.#
mkdir -p /var/www/html/pub/sat-import/ - Recursively copy the contents of the first ISO to the local directory:
#
mkdir /mnt/iso#mount -o loop /root/isos/first iso /mnt/iso#cp -ruv /mnt/iso/* /var/www/html/pub/sat-import/#umount /mnt/iso#rmdir /mnt/iso - Repeat the above step for each ISO until you have copied all the data from the series of ISOs into the local directory
/var/www/html/pub/sat-import/. - Ensure that the SELinux contexts are correct:
#
restorecon -rv /var/www/html/pub/sat-import/ - Change the default provider URL in the Satellite web interface:
- Log in to the Satellite web interface and select the required organization.
- Click → and then click .
- On the Subscription Manifest information screen select the Actions tab. Under Red Hat Provider Details, click the edit icon next to the Red Hat CDN URL entry and change the URL to reference the location that the ISOs were copied to. This example uses the Satellite fully qualified domain name (FQDN)
server.example.com, so the URL is:http://server.example.com/pub/sat-import/
- Click to choose the manifest file.
- Click to import your manifest.
- Enable the repositories from the local CDN:
- Click →
- Enable the repositories that were enabled and synchronized in the Synchronizing Content section.
- Click → .
- Select the repositories you want to synchronize and click .
Note
http://localhost. This is not a requirement. The CDN can be hosted on a different machine inside the same disconnected network as long as it is accessible to the Satellite server via HTTP.
4.2.3. Migrating from Disconnected to Connected Satellite
- Ensure the correct organization is selected. Navigate to → and click .
- On the Subscription Manifest screen select the Actions tab. Click the edit icon next to the Red Hat CDN URL entry and insert the following URL:
https://cdn.redhat.com
Click .
Chapter 5. Configuring a Self-Registered Satellite
- The same life cycle management procedures can be applied to the Satellite 6 server itself that have been applied to the rest of the managed estate.
- By subscribing the Satellite 6 server to its own content views, it will receive the same updates on the same schedule as the rest of the managed hosts.
- A virt-who service can be run directly on the Satellite 6 server without the need for an additional host.
- A self-registered Satellite Server cannot test package updates by using life cycle environments. It is essential to make a full backup of a self-registered Satellite Server before doing an upgrade to untested packages.
- Not all puppet modules are supported by a self-registered Satellite server. When applying puppet modules to a self-registered Satellite server ensure that they will not create an unsupported configuration.
5.1. Registering a Satellite to Itself
Procedure 5.1. To Register a Satellite to Itself:
- If the Satellite is already registered to the Red Hat Customer Portal, unregister the Satellite from the Red Hat Customer Portal using the following commands:
# subscription-manager remove --all # subscription-manager unregister
- The Satellite subscription on the Red Hat Customer Portal is now available and can be transferred into the Satellite's manifest. For further information on Manifests see Section 4.1.1, “Accessing Red Hat Content Providers”.Transfer the subscription to the Satellite's manifest:
- Navigate to https://access.redhat.com and click SUBSCRIPTIONS on the main menu at the top of the page.
- Scroll down to the Red Hat Subscription Management section, and click Satellite under Subscription Management Applications.
- Select the required Satellite server by clicking its host name in the table.
- Click and select subscriptions you want to attach. Specify the quantity for each subscription, and click
- Refresh the manifest on the Satellite Server:
- Log in to the Satellite server.
- Ensure that the correct organization is selected.
- Click → and then click at the upper right of the page.
- In the Subscription Manifest section, click Actions and under the Subscription Manifest subsection, click .
- Enable Red Hat repositories using the Satellite web interface:
- Click → .
- Navigate to the required repositories. Click each repository set from which you want to select repositories and select the check box for each required repository. The repository is automatically enabled.For Red Hat Enterprise Linux 6 the repositories that need to be enabled are:
- Red Hat Enterprise Linux 6 Server RPMs x86_64 6Server
- Red Hat Satellite 6.1 for RHEL 6 Server RPMs x86_64
- Red Hat Software Collections RPMs for Red Hat Enterprise Linux 6 Server x86_64 6Server
- Red Hat Enterprise Linux 6 Server - Satellite Tools RPMs x86_64 Repository
For Red Hat Enterprise Linux 7 the repositories that need to be enabled are:- Red Hat Enterprise Linux 7 Server RPMs x86_64 6Server
- Red Hat Satellite 6.1 for RHEL 7 Server RPMs x86_64
- Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Server x86_64 6Server
- Red Hat Enterprise Linux 7 Server - Satellite Tools RPMs x86_64 Repository
- Synchronize the Satellite server:
- Navigate to → . Based on the subscriptions and repositories enabled, the list of product repositories available for synchronization is displayed.
- Click the arrow next to the product name to see available content.
- Select the content you want to synchronize.
- Click to starting synchronizing. The status of the synchronization process will appear in the Result column. If synchronization is successful, Sync complete will appear in the Result column. If synchronization failed, Error syncing will appear.
Note
Content synchronization can take a long time. The length of time required depends on the speed of disk drives, network connection speed, and the amount of content selected for synchronization. - Optionally, create a content view to represent the Satellite server. This will allow the Satellite to follow the same life cycle management procedures as the rest of the content on the server. For further information about content views see the Content Views chapter in the Red Hat Satellite 6.1 User Guide
- To create a content view:
- Log into the web interface as a Satellite administrator.
- Click → .
- Click .
- Specify the Name of the content view. The Label field is automatically populated when the Name field is filled out. Optionally, provide a description of the content view.
- Click .
- Edit the content view to add the Red Hat Enterprise Linux server and Satellite repositories:
- Click → and choose the Content View to add repositories to.
- Click Yum Content and select from the drop-down menu. From the submenu, click .
- Select the required repositories to add and click Add Repositories. The required repositories for a self-registered Satellite are all the repositories for the Satellite itself, any supporting repositories and the repository for the Base OS. The repositories required for a self-registered Satellite are listed in Step 4 of this procedure.
- Download and install the required certificates by running:
# rpm -Uvh /var/www/html/pub/katello-ca-consumer-latest.noarch.rpm
- Register the Satellite server and attach the appropriate entitlements using subscription manager. When registering the server you must specify the organization to which the server belongs, also the life cycle environment.
# subscription-manager register --org=organization --environment=environment
Example 5.1.
# subscription-manager register --org=ExampleCompany --environment=Library
You will be prompted for your Red Hat Satellite user name and password. The Satellite Server administrator can configure new users. See the Users and Roles chapter in the Red Hat Satellite 6.1 User Guide for more information. - Find the pool IDs for the Satellite and for Red Hat Enterprise Linux by running the following command:
# subscription-manager list --available
- Attach the entitlements by running the following command:
# subscription-manager attach --pool Red_Hat_Satellite_Pool_ID --pool Red_Hat_Enterprise_Linux_ID
A content host has now been created for the Satellite server inside of the Satellite server. - Enable the repositories required for the Satellite server by running the following command:
# subscription-manager repos --enable=repository-to-be-enabled
See Step 4 of this procedure for the list of repositories that need to be enabled. - Install the Katello Agent package to allow errata management and package installation through the Satellite web interface. The katello-agent package depends on the gofer package that provides the goferd service. The goferd service must be enabled so that the Red Hat Satellite Server or Capsule Server can provide information about errata that are applicable for content hosts.To install the katello-agent run the following command:
# yum install katello-agent
The goferd service is started and enabled automatically after successful installation of katello-agent.
5.2. Updating a Self-Registered Satellite
Procedure 5.2. To Update a Self-Registered Satellite:
- It is essential to make a full backup of a self-registered Satellite server prior to doing an upgrade as package updates cannot be tested. For instructions on how to backup and, if necessary, restore a Satellite server see Backup and Disaster Recovery in the Red Hat Satellite 6.1 User Guide.
- Ensure your backup location has enough disk space to contain a copy of all of the following directories:
/etc//var/lib/pulp/var/lib/mongodb/var/lib/pgsql/
This can be a considerable amount of space so plan accordingly. - Stop all services:
# katello-service stop
- Run the backup script:
# /usr/bin/katello-backup backup_directory
This process can take a long time to complete, due to the amount of data to copy. - Restart all services:
# katello-service start
- Synchronize to Satellite server:
- Navigate to → . Based on the subscriptions and repositories enabled, the list of product repositories available for synchronization is displayed.
- Click the arrow next to the product name to see available content.
- Select the content you want to synchronize.
- Click to starting synchronizing. The status of the synchronization process will appear in the Result column. If synchronization is successful, Sync complete will appear in the Result column. If synchronization failed, Error syncing will appear.
Note
Content synchronization can take a long time, and depends on the speed of disk drives, network connection speed, and the amount of content selected for synchronization. - Optionally, publish and promote the required content views:
- After a content view has been created, it needs to be published in order for it to be visible and usable by hosts. Before publishing the content view definition, make sure that the content view definition has the necessary products, repositories and filters.To publish the content view:
- Click → .
- Click on the content view that represents the Satellite server.
- Click .
- Fill in a comment.
- Click .
- After the content view has been published it needs to promoted into the required life cycle environment.To promote the content view:
- On the main menu, click → .
- In the Name column, select the content view that represents the Satellite server.
- On the Versions tab, identify the latest version, and click .
- Identify the promotion path where you want to promote the content view, select the appropriate life cycle environment, and click .
- After the promotion has completed, the Versions tab updates to display the new status of your content views.
- Update the Satellite server:
# yum update # katello-installer --upgrade
- Restart the services:
# katello-service restart
Chapter 6. Managing Hypervisors and Virtual Guest Subscriptions
# subscription-manager repos --enable=rhel-7-server-satellite-tools-6.1-rpms
# yum install virt-who
6.1. Introduction to virt-who
virt-who system:
- Scans the hypervisor (host) management platform and its guests
- Creates the host/guest mapping
- Communicates this host/guest mapping to Satellite
virt-who the first time, a virt-who daemon automatically runs in the background and makes updates based on a schedule you select (the default is hourly).
6.1.1. The Universally Unique Identifier (UUID)
virt-who system makes this host/guest association by extracting a universally unique identifier (UUID) for each guest from the hypervisor and then associating each UUID with its hypervisor in the Satellite inventory.
6.1.2. Important Conditions for virt-who to Correctly Attach Subscriptions
- The
virt-whosystem must be run periodically to detect new guest instances. - The hypervisor and the guest systems must be registered to the same subscription service (that is, the same Satellite organization).
- The hypervisor must have a subscription attached to it that includes virtual subscriptions or inheritable subscriptions.
6.1.3. Subscription Status and virt-who
virt-who so that the Satellite knows which hypervisor the guest resides on. With the default auto-attach configuration enabled, and assuming virt-who runs successfully, the guest subscription displays as green in 24 hours.
6.2. Before You Begin
6.2.1. Prerequisites
virt-who:
- You must have credentials that allow
virt-whoto communicate with:- a Satellite user account
- your virtualization system
- The system running
virt-whois registered already to the Satellite server(virt-whowill use the host credentials). - The ports configured for your hypervisor allow communication (the default
virt-whoport is 443).
6.2.2. User Login for virt-who
- Red Hat Enterprise Virtualization Manager
- VMware vSphere
- Microsoft Hyper-V
Note
- The login has read-only permission.
- The login is for a service account or non-user login.
- The password does not expire.
6.2.3. virt-who Configuration File Location
virt-who configuration is stored in the following configuration files:
/etc/sysconfig/virt-who(default)Sample Configuration File:$ cat /etc/sysconfig/virt-who [rdu] VIRTWHO_BACKGROUND=1 VIRTWHO_DEBUG=1 VIRTWHO_ESX=1 VIRTWHO_ESX_OWNER=Organization_label VIRTWHO_ESX_SERVER=vcenter-server.example.com VIRTWHO_ESX_USERNAME=esx-readonly-user VIRTWHO_ESX_PASSWORD=password VIRTWHO_ESX_ENV=Library
/etc/virt-who.d/exampleconfig.conf(only for encrypted passwords)Sample Configuration File:$ cat /etc/virt-who.d/exampleconfig.conf [rdu] type=abc owner=virtwho server=abc-server.example.com username=root password=password rhsm_username=admin rhsm_password=admin #rhsm_encrypted_password=61fde1a1e2cbe95faef0ef0ecfd85057
6.2.4. Limitations Related to Satellite Organizations
virt-who can report to multiple Satellite organizations, you cannot share subscriptions across organizations.
Important
6.3. Supported Hypervisors
virt-who system can work with any of the hypervisors outlined in the following table.
Table 6.1. Supported Hypervisors
|
If you have...
|
Go here for setup instructions...
|
Warnings:
|
|---|---|---|
|
None
| |
|
Microsoft Hyper-V
|
You cannot install
virt-who directly on the Hyper-V hypervisors. Instead. you must install virt-who on a Red Hat Enterprise Linux platform that can communicate with the Hyper-V server.
| |
|
VMware: vCenter, vSphere, or ESX
|
You cannot install
virt-who directly on the VMware hypervisors. Instead, you must install virt-who on a Red Hat Enterprise Linux platform that can communicate with the vCenter server.
|
6.3.1. Rerunning virt-who
virt-who does not change a previously created hypervisor's environment or content view. This lets you manually move a hypervisor to a different environment and content view in Satellite. You can also change the virt-who host without impacting existing hypervisors. To rerun virt-who, use the command option:
# virt-who --one-shot
virt-who is running to a new organization creates new hypervisors in that organization. Previously created hypervisors in another organization remain unchanged (until you delete them manually). If you add an organization, you must restart virt-who.
6.4. Setting up a Red Hat Enterprise Virtualization Manager Server or Libvirt (KVM) Hypervisor
- Configure Subscription Manager on the virtual system to use Satellite and the CA certificate:
# rpm -ivh \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the Red Hat Enterprise Linux system (which communicates with Red Hat Enterprise Virtualization Manager) to Satellite:
# subscription-manager register --username=admin --password=secret --org=organization_label --auto-attach
The organization label is available in the Satellite web UI. If another system is already registered to that organization, then you can get the label by using thesubscription-manager orgscommand. - Install the virt-who packages on the hypervisor.
Note
For both the Red Hat Enterprise Virtualization Manager server and the libvirt (KVM) hypervisor, Red Hat recommends that you install the virt-who package on a physical system.# yum install virt-who
- Edit the
virt-whoconfiguration file (/etc/sysconfig/virt-who) and set the parameters as follows:For a Red Hat Enterprise Virtualization Manager server:VIRTWHO_DEBUG=1 VIRTWHO_SATELLITE6=1 VIRTWHO_RHEVM=1 VIRTWHO_RHEVM_OWNER=organization_label VIRTWHO_RHEVM_ENV=environment VIRTWHO_RHEVM_SERVER=RHEV-server_URL VIRTWHO_RHEVM_USERNAME=desired_user_name VIRTWHO_RHEVM_PASSWORD=desired_password
Note that to determine the organization label for the VIRTWHO_RHEVM_OWNER parameter execute thesubscription-manager identitycommand. The user name for the VIRTWHO_RHEVM_USERNAME parameter has the form admin@internal. With the VIRTWHO_SATELLITE6 parameter enabled,virt-whosends reports to the Satellite server.For a libvirt (KVM) hypervisor:VIRTWHO_BACKGROUND=1 VIRTWHO_DEBUG=1 VIRTWHO_SATELLITE6=1 VIRTWHO_LIBVIRT=1
With the VIRTWHO_SATELLITE6 parameter enabled, virt-who sends reports to Red Hat Satellite. - Start and enable the
virt-whoservice:- On Red Hat Enterprise Linux 6:
# service virt-who start # chkconfig virt-who on
- On Red Hat Enterprise Linux 7:
# systemctl start virt-who # systemctl enable virt-who
- After starting the
virt-whoservice, monitor the/var/log/rhsm/rhsm.log/file on the same system to confirm whether or not hosts and guests mappings are sent.2015-01-10 13:44:38,651 [DEBUG] @subscriptionmanager.py:112 - Sending update in hosts-to-guests mapping: {44454c4c-3900-1057-804c-b2c04f375231: [42346e7b-f3df-6651-4d43-6de0c769c6c7, 564ddf1c-1eec-aba5-aec4-03d311ca298e, 4234ee7d-b239-ebb1-738f-55a83861d1a5, 42343eb8-838f-18f3-24f9-682455093072, 42345839-6316-6733-f5a1-bd4213d693b3, 42344725-cf73-f8d9-6bff-c88d4df5c67c]} - On the Satellite server, go to → and confirm that host (hypervisor) system profiles display. By default, the hypervisor name is as follows:For a Red Hat Enterprise Virtualization Manager server:
hypervisor UUID
For a libvirt (KVM) hypervisor:hypervisor UUID
If desired, change this name in the Red Hat Satellite UI by editing the system entry. - To make virtual subscriptions available for virtual machines, the host system needs a subscription. To know on which host the virtual machine is running, open the virtual machine profile from the page. In the tab, the virtual machine displays as
Virtual Host UUID. Click the UUID link that opens the host system profile. Then, in theSubscriptionstab, assign the subscription to the host system. If you have multiple hypervisors running Red Hat Enterprise Linux guests, attach a subscription to all the hypervisors. - To consume the subscription assigned to the hypervisor profile on the machine running
virt-who,unsubscribe and then auto subscribe:# subscription-manager remove --all # subscription-manager attach --auto
- Confirm whether the subscription attached to the hypervisor is consumed by the guest running
virt-who:# subscription-manager list --consumed
- When you install new virtual machines on the hypervisor, you must register the new virtual machines and use the subscription attached to the hypervisor:
# rpm -ivh \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the new virtual machines and use the subscription attached to the hypervisor:
# subscription-manager register --org=organization_label # subscription-manager attach --auto # subscription-manager list --consumed
6.5. Using virt-who with Hyper-V
- To make the
virt-whoconnection to Hyper-V work, enable Windows Remote Management and either HTTP or HTTPS listener must be running. On the Hyper-V server:# winrm quickconfig
- The firewall must allow remote administration. On the Hyper-V server:
# netsh advfirewall firewall set rule group="Remote Administration" new enable=yes
- If you are using HTTP, enable the unencrypted connection. On the Hyper-V server:
# winrm set winrm/config/service @{AllowUnencrypted="true"} - Only Basic and NTLM authentication methods are supported. To verify that either Basic or Negotiate is enabled (True):
# winrm get winrm/config/service/auth
- On the Red Hat server, log in as root. Install the virt-who package:
# yum install virt-who
- Edit the
/etc/sysconfig/virt-whofile and set the parameters as follows:VIRTWHO_BACKGROUND=1 VIRTWHO_DEBUG=1 VIRTWHO_ONE_SHOT=0 VIRTWHO_INTERVAL=0 VIRTWHO_SATELLITE6=1 VIRTWHO_HYPERV=1 VIRTWHO_HYPERV_OWNER=Satellite_Organization VIRTWHO_HYPERV_ENV=Library VIRTWHO_HYPERV_SERVER=IP or FQDN VIRTWHO_HYPERV_USERNAME=Your_User_Name (you must use your Hyper-V administrator account) VIRTWHO_HYPERV_PASSWORD=Your_Password
With the VIRTWHO_SATELLITE6 parameter enabled, virt-who sends reports to Red Hat Satellite. - Start and enable the
virt-whoservice:- On Red Hat Enterprise Linux 6:
# service virt-who start # chkconfig virt-who on
- On Red Hat Enterprise Linux 7:
# systemctl start virt-who # systemctl enable virt-who
- Optional: To configure the
virt-whoservice to use a Windows domain account, edit your username with a double backslash in thevirt-whoconfiguration file.For example:VIRTWHO_HYPERV_USERNAME="MYDOMAIN\\user"
6.6. Setting up a VMware Hypervisor
virt-who service which connects to the VMware hypervisor.
- On Red Hat Enterprise Linux 6:
# iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT \ && iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT \ && service iptables save
Make sure theiptablesservice is started and enabled:# service iptables start # chkconfig iptables on
- On Red Hat Enterprise Linux 7:
# firewall-cmd --add-port="80/tcp" --add-port="443/tcp" \ && firewall-cmd --permanent --add-port="80/tcp" --add-port="443/tcp"
- Configure Subscription Manager on the virtual system to use the Satellite and the CA certificate, as follows:
# rpm -ivh \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the Red Hat Enterprise Linux system (which communicates with the VMware server) to Satellite.
# subscription-manager register --username=admin --password=secret --org=organization_label --auto-attach
The organization label is available in the Satellite UI for the organization. If another system is already registered to that organization, then you can get the label by using thesubscription-manager orgscommand. - Install the virt-who packages.
# yum install virt-who
- On the Red Hat Enterprise Linux system (which communicates with the VMware hypervisor), edit the
virt-whoconfiguration file (/etc/sysconfig/virt-who) and set the following parameters (to identify the location of your ESX management server):VIRTWHO_BACKGROUND=1 VIRTWHO_DEBUG=1 VIRTWHO_SATELLITE6=1 VIRTWHO_ESX=1 VIRTWHO_ESX_OWNER=Organization_label VIRTWHO_ESX_SERVER=vcenter-server.example.com VIRTWHO_ESX_USERNAME=esx-readonly-user VIRTWHO_ESX_PASSWORD=MyGNU4pass!! VIRTWHO_ESX_ENV=Library
TheVIRTWHO_ESX_USERNAMEis the local VMware vCenter or Microsoft Active Directory user with read-only permission to the virtual machines and hypervisors. With the VIRTWHO_SATELLITE6 parameter enabled, virt-who sends reports to Red Hat Satellite. - Start and enable the
virt-whoservice:- On Red Hat Enterprise Linux 6:
# service virt-who start # chkconfig virt-who on
- On Red Hat Enterprise Linux 7:
# systemctl start virt-who # systemctl enable virt-who
The data are added to the following file:/var/lib/virt-who/hypervisor-systemid-UUID - After starting the
virt-whoservice, monitor the/var/log/rhsm/rhsm.logfile on the same system to confirm whether or not hosts and guests mappings are sent.2015-01-10 13:44:38,651 [DEBUG] @subscriptionmanager.py:112 - Sending update in hosts-to-guests mapping: {44454c4c-3900-1057-804c-b2c04f375231: [42346e7b-f3df-6651-4d43-6de0c769c6c7, 564ddf1c-1eec-aba5-aec4-03d311ca298e, 4234ee7d-b239-ebb1-738f-55a83861d1a5, 42343eb8-838f-18f3-24f9-682455093072, 42345839-6316-6733-f5a1-bd4213d693b3, 42344725-cf73-f8d9-6bff-c88d4df5c67c]} - On the Satellite server, go to → and confirm that host (hypervisor) systems profiles display.By default, the hypervisor name is
esx hypervisor UUID. If desired, change this name in the Red Hat Satellite GUI by editing the system entry. - To make virtual subscriptions available for virtual machines, the host system needs a subscription. To know on which host the virtual machine is running, open the virtual machine profile from the page. In the tab, the virtual machine displays as
Virtual Host UUID. Click the UUID link that opens the host system profile. Then, in theSubscriptionstab, assign the subscription to the host system. If you have multiple VMware hypervisors running Red Hat Enterprise Linux guests, then attach a subscription to all the VMware hypervisors. - To attach the subscription assigned to the hypervisor profile on the machine running
the virt-whoservice, unsubscribe and then auto subscribe:# subscription-manager remove --all # subscription-manager attach --auto
- Confirm whether the subscription attached to the hypervisor is consumed by the guest running
virt-who:# subscription-manager list --consumed
- When you install new virtual machines on the hypervisor, you must register the new virtual machines and use the subscription attached to the hypervisor:
# rpm -ivh \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the new virtual machines and use the subscription attached to the hypervisor:
# subscription-manager register --org=organization_label # subscription-manager attach --auto # subscription-manager list --consumed
6.7. Configure virt-who with an Encrypted Password
virt-who can encrypt the passwords for the hypervisor and give you the string to use. The encrypted password is located in the /etc/virt-who.d/ configuration file.
- Verify
/var/lib/virt-who/keyencryption file has root read and write permission. - To get an encrypted password string, run the
virt-who-passwordas root:# virt-who-password Password: Use the following as a value for the encrypted_password key in the configuration file: encrypted_password_string
Type the password of your hypervisor and write down the encrypted string. - Create a new configuration file for
virt-whoinside/etc/virt-who.d/.Note
Since a configuration file is created under/etc/virt-who.d/, do not specify the hypervisor details in/etc/sysconfig/virt-who. For more information, see the man page:$ man virt-who-config
For example, on vCenter:# vi /etc/virt-who.d/config [config] type=esx server=vcenter/esx_host> username=vcenter/esx_username encrypted_password=encrypted_password_string owner=owner env=Library
- Verify that the
/var/lib/virt-who/keyencryption key file has root read and write permission.# ll /var/lib/virt-who/key -rw-------. 1 root root 130 Jun 29 14:43 /var/lib/virt-who/key
- After the configuration change, restart the
virt-whoservice.- On Red Hat Enterprise Linux 6:
# service virt-who restart
- On Red Hat Enterprise Linux 7:
# systemctl restart virt-who
- To determine the value of
ownerin the/etc/virt-who.d/configuration file, run the following command. The org ID string is the owner value:# subscription-manager identity org ID : string
6.8. vCenter Configuration Example for Reporting Data to Multiple Organizations
- Place hypervisors from the first instance of vCenter into the Organization 'Engineering' on your Satellite 6.
- Place hypervisors from the second instance of vCenter into the Organization 'Operations' on your Satellite 6.
Note
virt-who running on two systems, one for each organization. The following system hostnames denote the difference between the two virt-who systems:
hostname - eng-virt-who.example.com (virt-who instance reports hypervisors in vCenter1 to the 'Engineering' Organization) hostname - ops-virt-who.example.com (virt-who instance reports hypervisors in vCenter2 to the 'Operations' Organization)
Vcenter1: Hostname - vcenter1.example.com username - read_write@vsphere.local password - supersecret Vcenter2: Hostname - vcenter2.example.com username - read_only@vsphere.local password - notsosecret
Procedure 6.1. Part 1
- On system
eng-virt-who.example.com, installvirt-who:[root@eng-virt-who.example.com]# yum install virt-who
- Create an encrypted password string for
vcenter1:[root@eng-virt-who.example.com]# virt-who-password Password: type the 'supersecret' password Use following as value for encrypted_password key in the configuration file: 5e7367195d9fe2aa4b6667f93f17c5bd
- Edit
/etc/virt-who.d/vcenter-1and add the following content:[vcenter-1] type=esx server=vcenter1.example.com username=read_only@vsphere.local encrypted_password=5e7367195d9fe2aa4b6667f93f17c5bd owner=Engineering env=Library
- Restart
virt-who.- On Red Hat Enterprise Linux 6:
# service virt-who restart
- On Red Hat Enterprise Linux 7:
# systemctl restart virt-who
Procedure 6.2. Part 2
ops-virt-who.example.com, complete the following steps:
- Install
virt-who:[root@ops-virt-who.example.com]# yum install virt-who
- Create an encrypted password string for
vcenter2:[root@ops-virt-who.example.com]# virt-who-password Password: type the 'notsosecret' password Use following as value for encrypted_password key in the configuration file: 4ff5da2eee0648d99fd0c24337f98bd6
- Edit
/etc/virt-who.d/vcenter-2and add the following content:[vcenter-2] type=esx server=vcenter2.example.com username=read_only@vsphere.local encrypted_password=4ff5da2eee0648d99fd0c24337f98bd6 owner=Operations env=Library
- Restart
virt-who.- On Red Hat Enterprise Linux 6:
# service virt-who restart
- On Red Hat Enterprise Linux 7:
# systemctl restart virt-who
6.9. Registering Guest Instances
virt-who service must be running on the virtual host or on a hypervisor in the environment (for VMware). This ensures that the virt-who service maps the guest to a physical host, so the system is registered as a virtual system. Otherwise, the virtual instance is treated as a physical instance.
- Configure Subscription Manager on the virtual system to use the Satellite service and the CA certificate.
# rpm -Uvh \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the system to the same organization as its host.
# subscription-manager register --username=admin --password=secret --org=organization_label --auto-attach
The organization ID is available in the Portal entry for the organization. If another system is already registered to that organization, then get the organization ID by using the following command:# subscription-manager orgs
6.10. Removing a Guest Entry
# subscription-manager unregister
virt-who) cannot tell whether the service is deleted or paused. In that case, manually remove the system from Satellite.
- Log into the Satellite UI.
- in the top menu, hover over the Systems item and click the All item.
- In the left column, click the name of the system.
- At the top of the system's details page, click the Remove System link.
6.11. Removing a Hypervisor Entry
- Unregister the hypervisor.
# subscription-manager unregister
- For VMware, delete the UUID file to remove the host/guest mapping records:
/var/lib/virt-who/hypervisor-systemid-UUID
6.12. Troubleshooting virt-who
virt-who command. The host list in the Satellite web UI now displays two green hypervisors. One hypervisor has a subscription attached, and you create a guest ID. Run virt-who again. The host list now displays two green hypervisors, but the new guest ID is displayed as red.
- Move the virtual data subscription to hypervisor 2.
- Move the guest to hypervisor 1.
- Stop using this guest.
Host unknown status
Late binding to a host through virt-who (host/guest mapping)
virt-who in the /var/log/rhsm/rhsm.log file. Then, search the errors in the knowledgebase in Red Hat Customer Portal.
virt-who to run and fix the problem itself, or run virt-who manually.
Chapter 7. Installing Red Hat Satellite Capsule Server
- Pulp Server features, including:
- Repository synchronization
- Content delivery
- Red Hat Satellite Provisioning Smart Proxy features, including:
- DHCP, including ISC DHCP servers
- DNS, including Bind
- Any UNIX-based TFTP server
- Puppet Master servers from 0.24
- Puppet CA to manage certificate signing and cleaning
- Baseboard Management Controller (BMC) for power management
7.1. Red Hat Satellite Capsule Server Scalability
7.1.1. Capsule Scalability with Puppet Clients
- Number of CPUs
- Run-interval distribution
- Number of puppet classes
- There are no external puppet clients reporting directly to the Satellite 6 integrated capsule.
- All other puppet clients report directly to an external capsule.
- With minimum number of CPUs (two CPUs):
- At 1 puppet class per host: Not tested
- At 10 puppet classes per host: Maximum of 1020-860
- At 20 puppet classes per host: Maximum of 375-330
- With recommended number of CPUs (four CPUs):
- At 1 puppet class per host: Maximum of 2250-1875
- At 10 puppet classes per host: Maximum of 1600-1250
- At 20 puppet classes per host: Maximum of 700-560
Note
7.2. Red Hat Satellite Capsule Server Prerequisites
Important
7.2.1. Base Operating System
- Red Hat Satellite Capsule requires a networked base system with the following minimum specifications:
- 64-bit architecture.
- The latest version of Red Hat Enterprise Linux 6 Server or 7 Server.
- A minimum of two CPU cores, but four CPU cores are recommended.
- A minimum of 12 GB memory but ideally 16 GB of memory for each Satellite instance. A minimum of 4 GB of swap is recommended.
- A minimum of 5 GB storage for the base install of Red Hat Enterprise Linux, 300 MB for the installation of Red Hat Satellite Capsule and at least 10 GB storage for each unique software repository to be synchronized in the /var file system.Packages that are duplicated in different repositories are only stored once on the disk. Additional repositories containing duplicate packages will require less additional storage.
Note
The bulk of storage resides on the/var/lib/mongodband/var/lib/pulpdirectories. These end points are not manually configurable. Ensure that storage is available on the/varfile system to prevent storage issues. - No Java virtual machine installed on the system, remove any if they exist.
- No Puppet RPM files installed on the system.
- No third-party unsupported yum repositories enabled. Third-party repositories may offer conflicting or unsupported package versions that may cause installation or configuration errors.
- Administrative user (
root) access. - Full forward and reverse DNS resolution using a fully qualified domain name. Check that
hostnameandlocalhostresolve correctly, using the following commands:# ping -c1 localhost # ping -c1 `hostname -f` # my_system.domain.com
- Ensure the Satellite Server's base system can resolve the Capsule's host name.
- Available subscriptions on the Red Hat Satellite Server.
Important
7.2.2. Application Specifications
# chkconfig ntpd on; service ntpd start
# systemctl start chronyd; systemctl enable chronyd
7.2.3. Network Ports Required for Capsule Communications
Table 7.1. Ports for Satellite to Capsule Communication
Table 7.2. Ports for Capsule to Satellite Communication
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 443 | TCP | HTTPS | Connections to Katello, Foreman, Foreman API, and Pulp |
| 5646 | TCP | amqp | Capsule's Qpid dispatch router to Qpid dispatch router in the Satellite |
| 5647 | TCP | amqp | The Katello agent to communicate with the Satellite's Qpid dispatch router |
Table 7.3. Ports for Client to Capsule Communication
| Port | Protocol | Service | Required for |
|---|---|---|---|
| 53 | TCP and UDP | DNS | Queries to the DNS service |
| 67 | UDP | DHCP | For Client provisioning from the Capsule |
| 69 | UDP | TFTP | Downloading PXE boot image files |
| 80 | TCP | HTTP | Anaconda, yum, and for obtaining Katello certificate updates |
| 443 | TCP | HTTPS | Anaconda, yum, Telemetry Services, and Puppet |
| 5647 | TCP | amqp | The Katello agent to communicate with the Capsule's Qpid dispatch router |
| 8000 | TCP | HTTPS | Anaconda to download kickstart templates to hosts, and for downloading iPXE firmware |
| 8140 | TCP | HTTPS | Puppet agent to Puppet master connections |
| 8443 | TCP | HTTPS | Subscription Management Services connection to the reverse proxy for the certificate-based API |
| 9090 | TCP | HTTPS | Sending generated SCAP reports to the proxy in the Capsule for spooling |
Connections from Satellite to Capsule
- On a Red Hat Enterprise Linux 6 Capsule, execute as
root:#
iptables -A INPUT -m state --state NEW -p tcp --dport 9090 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables restart#chkconfig iptables on - On a Red Hat Enterprise Linux 7 Capsule, execute as
root:#
firewall-cmd --add-port="9090/tcp" \--add-port="443/tcp" \&& firewall-cmd --permanent --add-port="9090/tcp" \--add-port="443/tcp"
Connections from Capsule to Satellite
- On a Red Hat Enterprise Linux 6 Satellite, execute as
root:#
iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 5646 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 5647 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables restart#chkconfig iptables on - On a Red Hat Enterprise Linux 7 Satellite, execute as
root:#
firewall-cmd --add-port="443/tcp" \--add-port="5646/tcp" --add-port="5647/tcp" \&& firewall-cmd --permanent --add-port="443/tcp" \--add-port="5646/tcp" --add-port="5647/tcp"
Connections from Client to Capsule
- On a Red Hat Enterprise Linux 6 Capsule, execute as
root:#
iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p udp --dport 67 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p udp --dport 69 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 5647 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 8000 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 8140 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 8443 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 9090 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables restart#chkconfig iptables on - On a Red Hat Enterprise Linux 7 Capsule, execute as
root:#
firewall-cmd --add-port="53/udp" --add-port="53/tcp" \--add-port="67/udp" \--add-port="69/udp" --add-port="80/tcp" \--add-port="443/tcp" --add-port="5647/tcp" \--add-port="8000/tcp" --add-port="8140/tcp" \--add-port="8443/tcp" --add-port="9090/tcp" \&& firewall-cmd --permanent --add-port="53/udp" --add-port="53/tcp" \--add-port="67/udp" \--add-port="69/udp" --add-port="80/tcp" \--add-port="443/tcp" --add-port="5647/tcp" \--add-port="8000/tcp" --add-port="8140/tcp" \--add-port="8443/tcp" --add-port="9090/tcp"
Note
7.3. Obtaining the Required Packages for the Capsule Server
- The Satellite Server's base system must be able to resolve the host name of the Capsule Server's base system.
- You will need a Red Hat Satellite user name and password.
- Register the Capsule Server to the Red Hat Satellite Server to use the Red Hat Satellite Server products and subscriptions:
- Install the Red Hat Satellite Server's CA certificate in the Capsule Server:
# rpm -Uvh http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
- Register the Capsule server with your organization by using the organization label:
# subscription-manager register --org organization_label
You will be prompted for your Red Hat Satellite user name and password. The Satellite Server administrator can configure new users. See the Users and Roles chapter in the Red Hat Satellite 6.1 User Guide for more information.
Procedure 7.1. To Install a Satellite Capsule Server on a Certificate-managed System:
- List all the available subscriptions to find the correct Red Hat Satellite and Red Hat Enterprise Linux product to allocate to your system:
# subscription-manager list --available --all
The screen displays:Subscription Name: Red Hat Satellite Capsule Server Provides: Red Hat Satellite Proxy Red Hat Satellite Capsule Red Hat Software Collections (for RHEL Server) Red Hat Satellite Capsule Red Hat Enterprise Linux Server Red Hat Enterprise Linux High Availability (for RHEL Server) Red Hat Software Collections (for RHEL Server) Red Hat Enterprise Linux Load Balancer (for RHEL Server) SKU: MCT0369 Pool ID: 9e4cc4e9b9fb407583035861bb6be501 Available: 3 Suggested: 1 Service Level: Premium Service Type: L1-L3 Multi-Entitlement: No Ends: 10/07/2015 System Type: PhysicalNote
The SKU and Pool ID depend on the Red Hat Satellite product type that corresponds to your system version and product type. - Subscribe to the required pool IDs:
# subscription-manager subscribe --pool=Red_Hat_Satellite_Capsule_Pool_Id
- Disable all existing repositories:
# subscription-manager repos --disable "*"
- Enable the Satellite and Red Hat Enterprise Linux repositories by running
subscription-manager. You might need to alter the Red Hat Enterprise Linux repository to match the specific version you are using. If enabling a repository unexpectedly fails, check the correct repository is enabled on the Satellite Server. In the web UI, navigate to → and check the status of the repository under → .For Red Hat Enterprise Linux 6:# subscription-manager repos --enable rhel-6-server-rpms \ --enable rhel-6-server-satellite-capsule-6.1-rpms
For Red Hat Enterprise Linux 7:# subscription-manager repos --enable rhel-7-server-rpms \ --enable rhel-7-server-satellite-capsule-6.1-rpms
- If required, to verify what repositories have been enabled, use the
yum repolist enabledcommand. For example, on Red Hat Enterprise Linux 7:#
yum repolist enabledLoaded plugins: langpacks, product-id, subscription-manager repo id repo name status !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (RPMs) 7,617 !rhel-7-server-satellite-capsule-6.1-rpms/x86_64 Red Hat Satellite Capsule 6.1 (for RHEL 7 Server) (RPMs) 176 repolist: 7,793 - Run the following command as the
rootuser to install the capsule-installer package:# yum install capsule-installer
The capsule-installer package provides thecapsule-installerfunctionality.
7.4. Running the Installation and Configuration Program for Capsule Server
You must meet the following conditions before continuing on this task:
- Install the Red Hat Satellite Server.
- Red Hat recommends that SELinux on the Satellite 6 Capsule Server is set to enforcing.
- Create a Capsule Server certificate on the Satellite Server:
- On the Satellite Server, use the
capsule-certs-generatecommand:# capsule-certs-generate --capsule-fqdn capsule.example.com --certs-tar ~/capsule.example.com-certs.tar
Where:capsule-fqdnis the Satellite Capsule Server's fully qualified domain name. Mandatory.certs-taris the name of the file to generate that will contain the certificate for the Satellite Capsule installer.
Thecapsule-certs-generatecommand returns the installation instructions with the commands to be executed on the Capsule Server, however if you have followed the procedure in the previous section then you have already installed the Satellite's CA certificate contained in the katello-ca-consumer-latest package and registered the Capsule to the Satellite.Note that the syntax of those commands depends on the parameters ofcapsule-certs-generateand the fully qualified domain name of your Satellite. For example, thecapsule-certs-generatecommand executed on Satellite with FQDN satellite.example.com generates the following output:To finish the installation, follow these steps: 1. Ensure that the capsule-installer package is available on the system. 2. Copy ~/capsule.example.com-certs.tar to the capsule system capsule.example.com 3. Run the following commands on the capsule (possibly with the customized parameters, see capsule-installer --help and documentation for more info on setting up additional services): rpm -Uvh http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm subscription-manager register --org "Default_Organization" capsule-installer --parent-fqdn "satellite.example.com"\ --register-in-foreman "true"\ --foreman-oauth-key "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf"\ --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\ --pulp-oauth-secret "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\ --certs-tar "~/capsule.example.com-certs.tar"\ --puppet "true"\ --puppetca "true"\ --pulp "true"Important
Thecapsule-certs-generatecommand returns the arguments required to successfully install a Capsule with thecapsule-installercommand. The--foreman-oauth-keyand--foreman-oauth-secretarguments are always required, the--pulp-oauth-secretargument is required if the Capsule will host content (the--pulpoption set to true). See Section 7.4.1, “Installing a Capsule Server” for more information on installing a Capsule. - Copy the archive file created by
capsule-certs-generate, in this case calledcapsule.example.com-certs.tar, from the Satellite Server to the Capsule Server.Note
If you have a custom certificate, see Section 7.5.1, “Configuring Red Hat Satellite Capsule Server with a Custom Server Certificate” for instructions.
- Satellite Capsule Server with content functionality.
- Satellite Capsule Server without content functionality.
7.4.1. Installing a Capsule Server
capsule-installer --help for a list of the available parameters.
capsule-certs-generate):
# capsule-installer --parent-fqdn "satellite.example.com"\
--register-in-foreman "true"\
--foreman-oauth-key "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf"\
--foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\
--pulp-oauth-secret "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\
--certs-tar "~/capsule.example.com-certs.tar"\
--puppet "true"\
--puppetca "true"\
--pulp "true"
capsule-installer --help and specify the desired value from the list of command options.
7.4.2. Verifying Your Capsule Server Installation
# echo $?
/var/log/katello-installer/capsule-installer.log file to debug the cause of failure. This log file contains the output generated by the capsule-certs-generate and capsule-installer commands.
Note
Notice: There is 1 host with no organization assigned
7.5. Optional Configuration Options
7.5.1. Configuring Red Hat Satellite Capsule Server with a Custom Server Certificate
capsule-certs-generate is first run or any time afterward. If capsule-certs-generate has not been run before, see Procedure 7.2, “To Set a Custom Server Certificate When Running capsule-certs-generate for the First Time:”, otherwise see Procedure 7.3, “To Set a Custom Server Certificate After Running capsule-certs-generate:”.
Important
katello-installer parameter --certs-server-ca-cert. It is important to concatenate the certificates in the right order so that the trust chain can be validated.
# cat1st_ca.cert2nd_ca.cert3th_ca.cert>/root/sat_cert/ca.bundle# katello-installer --certs-server-ca-cert/root/sat_cert/ca.bundle--certs-update-server-ca
Important
Prerequisites
- Certificate file for the Capsule Server.
- Capsule certificates generate parameter
--server-cert. In this example,capsule.crt. - Certificate signing request file for the Capsule Server.
- Capsule certificates generate parameter
--server-cert-req. In this example,capsule.crt.req. - Capsule Server's private key used to sign the certificate.
- Capsule certificates generate parameter
--server-key. In this example,capsule.key. - CA certificate.
- Capsule certificates generate parameter
--server-ca-cert. In this example, examplecacert.crt.
Other capsule-certs-generate Parameters
- The parameter
--certs-tarspecifies the name of the archive file to be output by thecapsule-certs-generate. - The parameter
--capsule-fqdnis the Satellite Capsule Server's fully qualified domain name.
Procedure 7.2. To Set a Custom Server Certificate When Running capsule-certs-generate for the First Time:
Note
/root/sat_cert. Using an absolute path in the root users' directory provides a fixed location that is available to all users who log in to the server with root permissions. Before running this command, ensure the directory already exists.
- Run the following command on the Red Hat Satellite Server to create the certificates archive:
# capsule-certs-generate \ --capsule-fqdn "capsule.example.com" \ --certs-tar /root/sat_cert/capsule.example.com-certs.tar \ --server-cert /root/sat_cert/capsule.crt \ --server-cert-req /root/sat_cert/capsule.crt.req \ --server-key /root/sat_cert/capsule.key \ --server-ca-cert /root/sat_cert/cacert.crt
Where:--capsule-fqdnis the Satellite Capsule Server's fully qualified domain name. Mandatory.--certs-taris the name of the tar file to be generated that contains the certificate to be used by the Satellite Capsule installer.--server-certis the path to your certificate, signed by your certificate authority (or self-signed).--server-cert-reqis the path to your certificate signing request file that was used to create the certificate.--server-keyis the private key used to sign the certificate.--server-ca-certis the path to the CA certificate on this system.
- Copy the generated archive file,
capsule.example.com-certs.tar, from the Satellite Server to the Satellite Capsule Server. - On the Satellite Capsule Server:
- Run the following commands to register your Satellite Capsule Server to the Satellite Server:
# rpm -Uvh http://satellite.example.redhat.com/pub/katello-ca-consumer-latest.noarch.rpm # subscription-manager register --org "ACME_Corporation" --env [environment]/[content_view_name]
Note
The Satellite Capsule Server must be assigned to an organization, because it requires an environment to synchronize content from the Satellite Server. Only organizations have environments.Assigning a location is optional, but recommended, to indicate proximity to the hosts that the Satellite Capsule Server is managing. - Depending on the desired Satellite Capsule Server type, choose one of the following options:
Satellite Capsule Server with content functionality
Run the following command on the Satellite Capsule Server to enable the custom certificate. The significant parameter is--pulp="true", which indicates that content functionality is to be enabled.# capsule-installer --pulp="true" \ --qpid-router="true" \ --puppet="true" \ --puppetca="true" \ --reverse-proxy="true" \ --certs-tar "~/capsule.example.com-certs.tar"
Satellite Capsule Server without content functionality
Run the following command on the Satellite Capsule Server to enable the custom certificate. The significant parameter is--pulp="false", which indicates that content functionality is not to be enabled.# capsule-installer --pulp="false" \ --qpid-router="false" \ --puppet="true" \ --puppetca="true" \ --reverse-proxy="true" \ --certs-tar "~/capsule.example.com-certs.tar"
Procedure 7.3. To Set a Custom Server Certificate After Running capsule-certs-generate:
- Run the following command as the
rootuser on the Satellite Server to generate a new certificate based on your custom server certificate:Note
In this example the files are stored in the directory/root/sat_cert. Using an absolute path in therootusers' directory provides a fixed location that is available to all users who log in to the server withrootpermissions. Before running this command, ensure the directory already exists.# capsule-certs-generate \ --capsule-fqdn "capsule.example.com" \ --certs-tar /root/sat_cert/capsule-certs.tar \ --server-cert /root/sat_cert/capsule.crt \ --server-cert-req /root/sat_cert/capsule.crt.req \ --server-key /root/sat_cert/capsule.key \ --server-ca-cert /root/sat_cert/cacert.crt \ --certs-update-server
- Copy the generated archive file,
capsule.example.com-certs.tar, from the Satellite Server to the Satellite Capsule host system. - On the Satellite Capsule Server, re-run the
capsule-installercommand to refresh the certificates. Depending on the desired Satellite Capsule Server type, choose one of the following options:Satellite Capsule Server with content functionality
Run the following command on the Satellite Capsule Server to refresh the certificates. The significant parameter is--pulp="true", which indicates that content functionality is to be enabled.# capsule-installer --pulp="true" \ --qpid-router="true" \ --puppet="true" \ --puppetca="true" \ --reverse-proxy="true" \ --certs-tar "capsule.example.com-certs.tar"
Satellite Capsule Server without content functionality
Run the following command on the Satellite Capsule Server to refresh the certificates. The significant parameter is--pulp="false", which indicates that content functionality is not to be enabled.# capsule-installer --pulp="false" \ --qpid-router="false" \ --puppet="true" \ --puppetca="true" \ --reverse-proxy="true" \ --certs-tar "capsule.example.com-certs.tar"
7.5.2. Using Power Management Features on Managed Hosts
7.5.2.1. Installing a Capsule Server with BMC Options
Have a baseboard management controller (BMC) provider set up for your deployment of Capsule Server.
capsule-installer. You are required to choose either a Capsule Server with content functionality or one without. See Section 7.4.1, “Installing a Capsule Server” for more information.
--bmc "enabled"\ --bmc_default_provider "freeipmi"
- For Capsule Server Installations with content functionality:
# capsule-installer --pulp=true --foreman-oauth-key "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf"\ --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\ --pulp-oauth-secret "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\ --certs-tar "~/capsule.example.com-certs.tar"\ --qpid-router=true\ --puppet=true\ --puppetca=true\ --reverse-proxy=true\ --bmc "enabled"\ --bmc_default_provider "freeipmi"
- For Capsule Server Installations without content functionality:
# capsule-installer --pulp=false --foreman-oauth-key "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf"\ --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\ --certs-tar "~/capsule.example.com-certs.tar"\ --qpid-router=false\ --puppet=true\ --puppetca=true\ --reverse-proxy=true
7.5.3. Provisioning Options for Capsule Server
# capsule-installer --help
# capsule-installer --tftp=true\ --foreman-oauth-key "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf"\ --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\ --certs-tar "~/capsule.example.com-certs.tar"\ --templates=true\ --dhcp=true\ --dhcp-gateway=192.168.122.1\ --dhcp-nameservers=192.168.122.1\ --dhcp-range="192.168.122.100 192.168.122.200"\ --dhcp-interface=eth0\ --dns=true\ --dns-forwarders=8.8.8.8\ --dns-interface=eth0\ --dns-zone=example.com
dns-interface argument is set with the correct network interface name for the DNS server to listen on. Also ensure that the dhcp-interface argument is set correctly with the interface name for the DHCP server. After configuration, create a subnet on the Satellite server under → for the Capsule which registers automatically.
Note
- 192.168.122.1 to 192.168.122.99 (reservation pool) are addresses reserved during bare-metal provisioning by Satellite.
- 192.168.122.100 to 192.168.122.200 (lease pool) are addresses reserved for dynamic clients in the subnet (discovered hosts and unmanaged hosts).
7.6. Adding Life Cycle Environments to a Red Hat Satellite Capsule Server
Important
hammer commands on the Satellite Server.
Procedure 7.4. To Add Environments to the Satellite Capsule Server:
- Log in to the Satellite Server CLI as root.
- Choose the desired Red Hat Satellite Capsule Server from the list and take note of its
id:# hammer capsule list
The Satellite Capsule Server's details can be verified using the command:# hammer capsule info --id capsule_id_number
- Verify the list of life cycle environments available for the Red Hat Capsule Server and note down the
environment id:# hammer capsule content available-lifecycle-environments --id capsule_id_number
Where:available-lifecycle-environmentsare life cycle environments that are available to the Satellite Capsule but are currently not attached to the Satellite Capsule.
- Add the life cycle environment to the Satellite Capsule Server:
# hammer capsule content add-lifecycle-environment --id capsule_id_number --environment-id environment_id_number
Where:- capsule_id_number stands for the Satellite Capsule Server's identification number.
- environment_id_number stands for the life cycle environment's identification number.
Repeat this step for every life cycle environment to be added to the Capsule Server. - Synchronize the content from the Satellite Server's environment to the Satellite Capsule Server:
# hammer capsule content synchronize --id capsule_id_number
When an external Satellite Capsule Server has various life cycle environments, and only one life cycle environment needs to be synchronized, it is possible to target a specific environment by specifying the environment identification:# hammer capsule content synchronize --id external_capsule_id_number --environment-id environment_id_number
7.7. Removing Life Cycle Environments from the Red Hat Satellite Capsule Server
- When life cycle environments are no longer relevant to the host systems
- When life cycle environments have been incorrectly added to the Satellite Capsule Server
Procedure 7.5. To remove a life cycle environment from the Satellite Capsule Server:
- Log in to the Satellite Server CLI as the root user.
- Choose the desired Red Hat Satellite Capsule Server from the list and take note of its
id:# hammer capsule list
The Satellite Capsule Server's details can be verified using the command:# hammer capsule info --id capsule_id_number
- Verify the list of life cycle environments currently attached to the Red Hat Capsule Server and take note of the
environment id:# hammer capsule content lifecycle-environments --id capsule_id_number
- Remove the life cycle environment from the Satellite Capsule Server:
# hammer capsule content remove-lifecycle-environment --id capsule_id_number --environment-id environment_id
Where:- capsule_id_number is the Satellite Capsule Server's identification number.
- environment_id is the life cycle environment's identification number.
Repeat this step for every life cycle environment to be removed from the Capsule Server. - Synchronize the content from the Satellite Server's environment to the Satellite Capsule Server:
# hammer capsule content synchronize --id capsule_id_number
7.8. Registering Host Systems to a Red Hat Satellite Capsule Server
The client system must be configured for registration. See the following chapters in the Red Hat Satellite 6.1 User Guide for information about configuring a client to register with a Red Hat Satellite Capsule:
Procedure 7.6. Registering Host Systems to the Capsule Server
- In the web UI, select → and then click .
- Choose the required Capsule Server in the Content Source drop-down list.
- Connect to the host and install the bootstrap RPM:
#
Where capsule.example.com is the host name of the Capsule to be used as the content source. If the Satellite Server's integrated Capsule is to be used, then use the Satellite Server's host name.rpm -Uvh http://capsule.example.com/pub/katello-ca-consumer-latest.noarch.rpm - Run
subscription-managerin a console on the client host.- You can use an Activation Key to register:
#
subscription-manager register --org=organization_label --activationkey="activation_key" - Alternatively:
- authenticate with a user name and password:
#
subscription-manager register --org=organization_label --environment="Library" - and attach a subscription:
#
subscription-manager list --available --all#subscription-manager attach --pool=pool_ID
- Enable the Satellite tools repository:
#
Replace version withsubscription-manager repos --enable=rhel-version-server-satellite-tools-6.1-rpms6or7depending on the Red Hat Enterprise Linux version you are using. - Enable any additional repositories required for this host:
#
subscription-manager repos --enable=repository-to-be-enabled - Install
katello-agentfor remote actions and displaying errata information:#
yum install katello-agent
7.9. Configuring Satellite 6 with External Services
TFTP service available in Red Hat Enterprise Linux. It can optionally install DNS and DHCP services. If required to use Capsule with external services, prevent installation of the unwanted services by running the installer with the relevant options set to false.
Example 7.1. Installing Capsule Without Services
TFTP, enter a command as follows:
#katello-installer \--capsule-tftp false
false to reset the configuration files back to the desired state. This will not uninstall the packages for the services, such as bind or tftp-server. If required, uninstall the unused packages manually.
Example 7.2. Reinstalling Capsule Without Services
DNS, DHCP, and TFTP, enter a command as follows:
#katello-installer \--capsule-dns false \--capsule-dns-managed false \--capsule-dhcp false \--capsule-dhcp-managed false \--foreman-proxy-tftp false
Important
NFSv3. The procedures should work for other releases, such as Red Hat Enterprise Linux 6 or Red Hat Enterprise Linux 7.0, but note there may be differences in NFS exporting. See the Red Hat Enterprise Linux 7 Storage Administration Guide and Red Hat Enterprise Linux 6 Storage Administration Guide for more information on exporting file systems using NFS.
192.168.38.0/24, the domain is called virtual.lan, the server for the external services is 192.168.38.2/24, and the Capsule Server is at 192.168.38.1/24.
7.9.1. Configuring an External DNS Service
# yum install bind bind-utils
Procedure 7.7. Configuring the External DNS Server
DNS server as follows:
- Create the configuration for the domain with a configuration similar to the following:
#
Note that thecat /etc/named.confinclude "/etc/rndc.key"; controls { inet 192.168.38.2 port 953 allow { 192.168.38.1; 192.168.38.2; } keys { "capsule"; }; }; options { directory "/var/named"; forwarders { 8.8.8.8; 8.8.4.4; }; }; include "/etc/named.rfc1912.zones"; zone "38.168.192.in-addr.arpa" IN { type master; file "dynamic/38.168.192-rev"; update-policy { grant "capsule" zonesub ANY; }; }; zone "virtual.lan" IN { type master; file "dynamic/virtual.lan"; update-policy { grant "capsule" zonesub ANY; }; };inetline must be entered as one line in the configuration file.The example above configures a domainvirtual.lanas one subnet192.168.38.0/24, a security key namedforeman, and sets forwarders to Google's publicDNSaddresses (8.8.8.8and8.8.4.4). - Create a key file:
#
ddns-confgen -k capsuleThe above command can take a long time as the program is reading a pseudo random device. For testing or proof-of-concept deployments, an insecure non-blocking device can be used as follows:#
ddns-confgen -k capsule -r /dev/urandom - The above command will print the key section with some instructions as comments. Copy and paste the key section into a separate file named
/etc/rndc.key, which is included by a statement innamed.conf, so that the file looks as follows:#
cat /etc/rndc.keykey "capsule" { algorithm hmac-sha256; secret "GeBbgGoLedEAAwNQPtPh3zP56MJbkwM84UJDtaUS9mw="; };This is the secret key that is used to changeDNSserver configuration, keep it safe and make sure onlyrootcan read and write it. This file will be copied over to Capsule server in a later step. - Create zone files as follows:
#
cat /var/named/dynamic/virtual.lan$ORIGIN . $TTL 10800 ; 3 hours virtual.lan IN SOA service.virtual.lan. root.virtual.lan. ( 9 ; serial 86400 ; refresh (1 day) 3600 ; retry (1 hour) 604800 ; expire (1 week) 3600 ; minimum (1 hour) ) NS service.virtual.lan. $ORIGIN virtual.lan. $TTL 86400 ; 1 day capsule A 192.168.38.1 service A 192.168.38.2 - Create the reverse zone file:
#
cat /var/named/dynamic/38.168.192-rev$ORIGIN . $TTL 10800 ; 3 hours 38.168.192.in-addr.arpa IN SOA service.virtual.lan. root.38.168.192.in-addr.arpa. ( 4 ; serial 86400 ; refresh (1 day) 3600 ; retry (1 hour) 604800 ; expire (1 week) 3600 ; minimum (1 hour) ) NS service.virtual.lan. $ORIGIN 38.168.192.in-addr.arpa. $TTL 86400 ; 1 day 1 PTR capsule.virtual.lan. 2 PTR service.virtual.lan.Important
Make sure there are no extra non-US-ASCII characters as BIND is sensitive to this.
Procedure 7.8. Testing and Starting the DNS Service
DNS service, proceed as follows:
- Validate the syntax as follows:
#
named-checkconf -z /etc/named.conf - Start the server:
- On Red Hat Enterprise Linux 7:
#
systemctl restart named - On Red Hat Enterprise Linux 6:
#
service named restart
- Try to add a new host dynamically:
#
echo -e "server 192.168.38.2\n \update add aaa.virtual.lan 3600 IN A 192.168.38.10\n \send\n" | nsupdate -k /etc/rndc.key - Test that the
DNSservice can resolve the new host added in the previous step:#
nslookup aaa.virtual.lan 192.168.38.2 - If required, delete the new entry:
#
echo -e "server 192.168.38.2\n \update delete aaa.virtual.lan 3600 IN A 192.168.38.10\n \send\n" | nsupdate -k /etc/rndc.key - Configure the firewall for external access to the
DNSservice (UDPandTCPon port 53):- On a Red Hat Enterprise Linux 6 Satellite, execute as root:
#
iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT \&& iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables start#chkconfig iptables on - On a Red Hat Enterprise Linux 7 Satellite, execute as root:
#
firewall-cmd --add-port="53/udp" --add-port="53/tcp" \&& firewall-cmd --permanent --add-port="53/udp" --add-port="53/tcp"
Procedure 7.9. Configuring a Capsule Server to Use an External DNS Service
DNS service, proceed as follows:
- Ensure that the nsupdate utility, from the bind-utils package, is installed:
#
yum install bind-utils - Copy the
/etc/rndc.keyfile from the services server to the Capsule Server. For example:- On the services server:
scp localfile username@hostname:remotefile
- Alternatively, on the Capsule Server:
scp username@hostname:remotefile localfile
- Make sure the key file has the correct owner, permissions, and SELinux label:
#
ls /etc/rndc.key -Zla-rw-r-----. root named system_u:object_r:dnssec_t:s0 /etc/rndc.key - The Capsule uses the nsupdate utility to update
DNSrecords on the remote server. Before configuring it, test adding one additional host remotely as follows:#
echo -e "server 192.168.38.2\n \update add aaa.virtual.lan 3600 IN A 192.168.38.10\n \send\n" | nsupdate -k /etc/rndc.key#nslookup aaa.virtual.lan 192.168.38.2#echo -e "server 192.168.38.2\n \update delete aaa.virtual.lan 3600 IN A 192.168.38.10\n \send\n" | nsupdate -k /etc/rndc.key - Run the
katello-installerscript to make the following persistent changes to the/etc/foreman-proxy/settings.d/dns.ymlfile. Enable the smart-proxy module setting provider to bensupdate, add the address to theDNSserver, and set the default time to live for records created by this Capsule. For example:#
katello-installer --foreman-proxy-dns=true --foreman-proxy-dns-managed=false --foreman-proxy-dns-provider=nsupdate --foreman-proxy-dns-server="192.168.38.2" --foreman-proxy-keyfile=/etc/rndc.key --foreman-proxy-dns-ttl=86400 - Restart foreman-proxy service:
- On Red Hat Enterprise Linux 7:
#
systemctl restart foreman-proxy - On Red Hat Enterprise Linux 6:
#
service foreman-proxy restart
- View the Satellite Server GUI in your browser;
https://satellite_host.example.com. - Select → . Locate the Capsule being configured and select from the drop-down list. The
DNSfeature should appear. - Select → and associate the
DNSservice with the appropriate subnets and domain.
7.9.2. Configuring an External DHCP Service
# yum install dhcp
Note
Procedure 7.10. Configuring the External DHCP Server
DHCP server as follows:
- Generate a security token in an empty directory as follows:
#
The above command can take a long time, for less-secure proof-of-concept deployments you can use a non-blocking random number generator:dnssec-keygen -a HMAC-MD5 -b 512 -n HOST omapi_key#
This will create the key pair in two files in the current directory.dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST omapi_key - Copy the secret hash from the key:
#
cat Komapi_key.+*.private |grep ^Key|cut -d ' ' -f2 - Edit the
dhcpdconfiguration file for all the subnets, and add the secret key from the previous step:#
cat /etc/dhcp/dhcpd.confdefault-lease-time 604800; max-lease-time 2592000; log-facility local7; subnet 192.168.38.0 netmask 255.255.255.0 { range 192.168.38.10 192.168.38.100; option routers 192.168.38.1; option subnet-mask 255.255.255.0; option domain-search "virtual.lan"; option domain-name "virtual.lan"; option domain-name-servers 8.8.8.8; } omapi-port 7911; key omapi_key { algorithm HMAC-MD5; secret "jNSE5YI3H1A8Oj/tkV4...A2ZOHb6zv315CkNAY7DMYYCj48Umw=="; }; omapi-key omapi_key; - Delete the two key files from the directory where you created them.
- For each subnet defined (
192.168.38.0in this example) defineSubneton the Satellite server. It is recommended to set up a lease range and reservation range separately to prevent conflicts. In this example, the lease range is192.168.38.10to192.168.38.100so the reservation range (defined in Satellite GUI) would be192.168.38.101to192.168.38.250. Do not setDHCP Capsulefor the definedSubnetyet.Note that ISC DHCP listens only on interfaces that match defined subnets. In this example, the server has an interface that routes to192.168.38.0subnet directly. - Configure the firewall for external access to the
DHCPservice:- On a Red Hat Enterprise Linux 7:
#
firewall-cmd --add-service dhcp \&& firewall-cmd --permanent --add-service dhcp - On a Red Hat Enterprise Linux 6:
#
iptables -A INPUT -m state --state NEW -p tcp --dport 67 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables start#chkconfig iptables on
- Configuration files are read by
foreman-proxyuser, first determine the UID and GID numbers of theforeman-proxyuser on the Capsule Server, then create the same user and group with same IDs on this server:#
groupadd -g 990 foreman-proxy#useradd -u 992 -g 990 -s /sbin/nologin foreman-proxy - Configuration files must be readable for this user. Recent dhcp package updates removed read and execute flags from the configuration directory which prevents that. To restore the required flags and prevent this change in behavior on the next package update, enter the following commands:
#
chmod o+rx /etc/dhcp/#chmod o+r /etc/dhcp/dhcpd.conf#chattr +i /etc/dhcp/ /etc/dhcp/dhcpd.conf - Start the
DHCPservice:- On Red Hat Enterprise Linux 7:
#
systemctl start dhcpd - On Red Hat Enterprise Linux 6:
#
service dhcpd start
- Export
DHCPconfiguration and leases file usingNFS, so that the Capsule Server can read it:#
yum install nfs-utils#systemctl enable rpcbind nfs-server#systemctl start rpcbind nfs-server nfs-lock nfs-idmapd - Create the
DHCPconfiguration and leases files to be exported usingNFS:#
mkdir -p /exports/var/lib/dhcpd /exports/etc/dhcp - Add the newly created mount point to
/etc/fstabfile:/var/lib/dhcpd /exports/var/lib/dhcpd none bind,auto 0 0 /etc/dhcp /exports/etc/dhcp none bind,auto 0 0
- Mount the file systems in
/etc/fstab:#
mount -a - Ensure the following lines are present in
/etc/exports:/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check)
/exports/etc/dhcp 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)
/exports/var/lib/dhcpd 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)
- Reload the
NFSserver:#
exportfs -rva - Configure the firewall for the
DHCPomapiport7911for the Capsule Server:- On a Red Hat Enterprise Linux 7:
#
firewall-cmd --add-port="7911/tcp" \&& firewall-cmd --permanent --add-port="7911/tcp" - On a Red Hat Enterprise Linux 6:
#
iptables -A INPUT -m state --state NEW -p tcp --dport 7911 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables start#chkconfig iptables on
- This step is common to both the
DHCPandTFTPprocedures and need only be carried out once per system. If required, follow this step to configure the firewall for external access to theNFSservice.Note
In this guide the clients are configured to useNFSv3and this step is thereforeNFSv3specific.- On Red Hat Enterprise Linux 7:It is recommended to use
firewallddaemon'sNFSservice option becauseNFSuses multiple ports to initiate connections. To do so, enter the following commands:#
For additional information on usingfirewall-cmd --zone public --add-service mountd \&& firewall-cmd --zone public --add-service rpc-bind \&& firewall-cmd --zone public --add-service nfs \&& firewall-cmd --permanent --zone public --add-service mountd \&& firewall-cmd --permanent --zone public --add-service rpc-bind \&& firewall-cmd --permanent --zone public --add-service nfsNFSv3behind a firewall on Red Hat Enterprise Linux 7, see the “Running NFS Behind a Firewall” section in the Red Hat Enterprise Linux 7 Storage Administration Guide and the “Securing NFS” section in the Red Hat Enterprise Linux 7 Security Guide. - On Red Hat Enterprise Linux 6:Configure ports for
NFSv3in the/etc/sysconfig/nfsfile as follows:LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 RQUOTAD_PORT=875 STATD_PORT=662 STATD_OUTGOING_PORT=2020
Restart the service for the changes to take effect:#
service nfs restartAdd the following rules to the/etc/sysconfig/iptablesfile by entering commands as follows:#
Restart the firewall for the changes to take effect:iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 2049 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT \&& service iptables save#
service iptables restartFor additional information on usingNFSv3behind a firewall on Red Hat Enterprise Linux 6, see the Red Hat Enterprise Linux 6 Storage Administration Guide and the “Running NFS Behind a Firewall” section in the “Securing NFS” section in the Red Hat Enterprise Linux 6 Security Guide.
Procedure 7.11. Configuring a Capsule Server to Use an External DHCP Service
DHCP service, proceed as follows:
- Install the
NFSclient:#
yum install nfs-utils - Create the
DHCPdirectories to prepare forNFS:#
mkdir -p /mnt/nfs/etc/dhcp /mnt/nfs/var/lib/dhcpd - Change the file owner as follows:
#
chown -R foreman-proxy /mnt/nfs - Try to reach the
NFSserver and verify RPC communication paths:#
showmount -e 192.168.38.2#rpcinfo -p 192.168.38.2 - Add these two lines to the
/etc/fstabfile:192.168.38.2:/exports/etc/dhcp /mnt/nfs/etc/dhcp nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcp_etc_t:s0" 0 0
192.168.38.2:/exports/var/lib/dhcpd /mnt/nfs/var/lib/dhcpd nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcpd_state_t:s0" 0 0
- Mount the file systems in
/etc/fstab:#
mount -a - Try to read the relevant files:
#
In case of problems, investigate thesu foreman-proxy -s /bin/bashbash-4.2$cat /mnt/nfs/etc/dhcp/dhcpd.confbash-4.2$cat /mnt/nfs/var/lib/dhcpd/dhcpd.leasesbash-4.2$exitNFSconfiguration, logs, and firewall rules. - On the Capsule Server, run the
katello-installerscript to make the following persistent changes to the/etc/foreman-proxy/settings.d/dhcp.ymlfile:#
Ensure thekatello-installer --foreman-proxy-dhcp=true --foreman-proxy-dhcp-provider=isc --foreman-proxy-dhcp-config /mnt/nfs/etc/dhcp/dhcpd.conf --foreman-proxy-dhcp-leases /mnt/nfs/var/lib/dhcpd/dhcpd.leases --foreman-proxy-dhcp-key-name=omapi_key --foreman-proxy-dhcp-key-secret=jNSE5YI3H1A8Oj/tkV4...A2ZOHb6zv315CkNAY7DMYYCj48Umw== --foreman-proxy-dhcp-server dhcp.example.comdhcp_key_secretvalue is correctly entered without quotes. The trailing=character is optional. - Restart the proxy:
- On Red Hat Enterprise Linux 7:
#
systemctl restart foreman-proxy - On Red Hat Enterprise Linux 6:
#
service foreman-proxy restart
- View the Satellite Server GUI in your browser;
https://satellite_host.example.com. - Select → . Locate the Capsule and select from the drop-down list. The
DHCPfeature should appear. - Select → and associate the
DHCPservice with the appropriate subnets and domain.
7.9.3. Configuring an External TFTP Service
Procedure 7.12. Configuring the TFTP Server
TFTP server as follows:
- Install and enable the
TFTPserver:#
yum install tftp-server syslinux- On Red Hat Enterprise Linux 7, enable and activate the
tftp.socketunit:#
systemctl enable tftp.socket#systemctl start tftp.socket - On Red Hat Enterprise Linux 6, enable and start the
xinetdservice:#
service xinetd enable#service xinetd start
- Configure the PXELinux environment as follows:
#
mkdir -p /var/lib/tftpboot/{boot,pxelinux.cfg}#cp /usr/share/syslinux/{pxelinux.0,menu.c32,chain.c32} /var/lib/tftpboot/ - Restore SELinux file contexts:
#
restorecon -RvF /var/lib/tftpboot/ - Create the
TFTPdirectory to be exported usingNFS:#
mkdir -p /exports/var/lib/tftpboot - Add the newly created mount point to the
/etc/fstabfile:/var/lib/tftpboot /exports/var/lib/tftpboot none bind,auto 0 0
- Mount the file systems in
/etc/fstab:#
mount -a - Ensure the following lines are present in
/etc/exports:/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check)
/exports/var/lib/tftpboot 192.168.38.1(rw,async,no_root_squash,no_subtree_check,nohide)
The first line is common to theDHCPconfiguration and therefore should already be present if the previous procedure was completed on this system. - Reload the
NFSserver:#
exportfs -rva - This step is common to both the
DHCPandTFTPprocedures and need only be carried out once per system. If required, follow this step to configure the firewall for external access to theNFSservice.Note
In this guide the clients are configured to useNFSv3and this step is thereforeNFSv3specific.- On Red Hat Enterprise Linux 7:It is recommended to use
firewallddaemon'sNFSservice option becauseNFSuses multiple ports to initiate connections. To do so, enter the following commands:#
For additional information on usingfirewall-cmd --zone public --add-service mountd \&& firewall-cmd --zone public --add-service rpc-bind \&& firewall-cmd --zone public --add-service nfs \&& firewall-cmd --permanent --zone public --add-service mountd \&& firewall-cmd --permanent --zone public --add-service rpc-bind \&& firewall-cmd --permanent --zone public --add-service nfsNFSv3behind a firewall on Red Hat Enterprise Linux 7, see the “Running NFS Behind a Firewall” section in the Red Hat Enterprise Linux 7 Storage Administration Guide and the “Securing NFS” section in the Red Hat Enterprise Linux 7 Security Guide. - On Red Hat Enterprise Linux 6:Configure ports for
NFSv3in the/etc/sysconfig/nfsfile as follows:LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 RQUOTAD_PORT=875 STATD_PORT=662 STATD_OUTGOING_PORT=2020
Restart the service for the changes to take effect:#
service nfs restartAdd the following rules to the/etc/sysconfig/iptablesfile by entering commands as follows:#
Restart the firewall for the changes to take effect:iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 2049 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT \&& iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT \&& service iptables save#
service iptables restartFor additional information on usingNFSv3behind a firewall on Red Hat Enterprise Linux 6, see the Red Hat Enterprise Linux 6 Storage Administration Guide and the “Running NFS Behind a Firewall” section in the “Securing NFS” section in the Red Hat Enterprise Linux 6 Security Guide.
Procedure 7.13. Configure the Firewall for External access to the TFTP service
- Configure the firewall for external access to the
TFTPservice (UDPon port 69):- On a Red Hat Enterprise Linux 7:
#
firewall-cmd --add-port="69/udp" \&& firewall-cmd --permanent --add-port="69/udp" - On a Red Hat Enterprise Linux 6:
#
iptables -A INPUT -m state --state NEW -p tcp --dport 69 -j ACCEPT \&& service iptables saveMake sure theiptablesservice is started and enabled:#
service iptables start#chkconfig iptables on
Procedure 7.14. Configuring a Capsule Server to Use an External TFTP Service
TFTP service, proceed as follows:
- Create the
TFTPdirectory to prepare forNFS:#
mkdir -p /mnt/nfs/var/lib/tftpboot - In the
/etc/fstab, add a line as follows:192.168.38.2:/exports/var/lib/tftpboot /mnt/nfs/var/lib/tftpboot nfs rw,vers=3,auto,nosharecache,context="system_u:object_r:tftpdir_rw_t:s0" 0 0
- Mount the file systems in
/etc/fstab:#
mount -a - Run the
katello-installerscript to make the following persistent changes to the/etc/foreman-proxy/settings.d/tftp.ymlfile:#
katello-installer --foreman-proxy-tftp=true --foreman-proxy-tftp-root /mnt/nfs/var/lib/tftpbootIf theTFTPservice is running on a different server than theDHCPservice, update thetftp_servernamesetting with the FQDN orIPaddress of that server.#
katello-installer --foreman-proxy-tftp-servername=new_FQDN - View the Satellite Server GUI in your browser;
https://satellite_host.example.com. - Select → in the user interface. Locate the Capsule and select from the drop-down list. The
TFTPfeature should appear. - Select → and associate the
TFTPservice with the appropriate subnets and domain.
Chapter 8. Upgrading Red Hat Satellite Server and Capsule Server
Important
- Satellite 6.0 to Satellite 6.1
- Satellite 6.1 Public Beta (non-production) to Satellite 6.1 GA
Important
- Verify that the Satellite has the
6.1 satellite-toolsandcapsulerepositories fully synchronized and available to update the Satellite Capsule servers to the latest upgrade package versions. - Ensure that the existing Content Views are updated to include the newly synchronized repositories. If you use Activation Keys for content host registration, ensure that your Activation Key is updated with the newly synchronized repositories. If you created a new Content View for these repositories, include this Content View in the Activation Key. See the Red Hat Satellite 6.1 User Guide [10] for more information on Activation Keys.
- Refresh subscriptions to include the newly synchronized repositories both on Capsules and Hosts.
- In the Satellite web UI, navigate to → and check for running tasks. It is recommended that you wait for the tasks to complete. It is possible to cancel some tasks, but you should follow the guidance in the Red Hat Knowledgebase solution How to manage paused tasks on Red Hat Satellite 6 to understand which tasks are safe to cancel and which are not safe to cancel.
8.1. Upgrading Red Hat Satellite
Prerequisites
Procedure 8.1. Updating the Subscription Manifest
- Navigate to https://access.redhat.com and click SUBSCRIPTIONS on the main menu at the top of the page.
- Scroll down to the Red Hat Subscription Management section, and click Satellite under Subscription Management Applications.
- Click the name of the system this manifest is associated to, and click Attach a subscription.
- For each subscription that you want to attach, select the check box for that subscription, and specify the quantity of subscriptions to attach.
- Click . It can take several minutes for all the subscriptions to attach. Refresh the screen every few minutes until you receive confirmation that the subscriptions are attached.
- After the subscriptions have been attached, click to generate an archive in
.zipformat containing the manifest for Red Hat Satellite and save the manifest file to a known location. - Upload the updated manifest to the Red Hat Satellite Server.
- Log in to the Satellite server.
- In the top left corner menu, select the organization that you want to associate with the subscription manifest.
- Click → and then click at the upper right of the page.
- In the Subscription Manifest section, click Actions and under the Upload New Manifest subsection, click .
- Select the manifest file to upload, and then click Upload.
Procedure 8.2. Upgrading Red Hat Satellite
- If the Satellite server is running on a virtual machine, take a snapshot prior to upgrading. Otherwise, run
katello-service stopand create a backup of the relevant databases. See How to generate database backup for Red Hat Satellite 6.0 for instructions on backing up your databases. - Update the operating system:
# yum update
- Disable the repositories for the previous version of Satellite.
- If upgrading from Satellite 6.0 on Red Hat Enterprise Linux 7:
# subscription-manager repos --disable rhel-7-server-satellite-6.0-rpms
- If upgrading from Satellite 6.1 Beta on Red Hat Enterprise Linux 7:
# subscription-manager repos --disable rhel-server-7-satellite-6-beta-rpms
- If upgrading from Satellite 6.0 on Red Hat Enterprise Linux 6:
# subscription-manager repos --disable rhel-6-server-satellite-6.0-rpms
- If upgrading from Satellite 6.1 Beta on Red Hat Enterprise Linux 6:
# subscription-manager repos --disable rhel-server-6-satellite-6-beta-rpms
- Enable the new repositories.
- On Red Hat Enterprise Linux 7:
# subscription-manager repos --enable rhel-7-server-satellite-6.1-rpms
- On Red Hat Enterprise Linux 6:
# subscription-manager repos --enable rhel-6-server-satellite-6.1-rpms
- If there are discovered hosts available, turn them off and delete all entries under the Discovered hosts page.
- Stop services:
# katello-service stop output omitted Success!Wait for the command to complete. If required, confirm services have stopped:#
Restart the Mongo database as it is required for upgrading the Pulp database:katello-service statusmongod is stopped qdrouterd is stopped qpidd is stopped celery init v10.0. Using configuration: /etc/default/pulp_workers, /etc/default/pulp_celerybeat pulp_celerybeat is stopped. elasticsearch is stopped celery init v10.0. Using config script: /etc/default/pulp_resource_manager node resource_manager is stopped... foreman-proxy is stopped tomcat6 is stopped [ OK ] output truncated# service-wait mongod start
- Clear the repository cache and update all packages:
# yum clean all # yum update
- Run the installer with the
--upgradeoption:# katello-installer --upgrade
If required, add the--noopoption to the command and review the/var/log/katello-installer/katello-installer.logto see what changes would be applied if the--noopwas omitted.Important
If you have made manual edits to DNS and DHCP configuration files, they will be overwritten during the upgrade process. To avoid this, append the--capsule-dns-managed=falseand--capsule-dhcp-managed=falseoptions to the--upgradeinstaller command.Thekatello-installerutility will backup files that it changes and log this. For example:/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
The old file can be restored with this command:#
puppet filebucket -l restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1 - Restart all services:
# katello-service restart
Enabling The New Repositories
Procedure 8.3. Enable New Red Hat Repositories
- On the main menu, click → and then click the tab for the type of content that you want to enable.
- Click the product name for which you want to add repositories. This expands the list of available repository sets.
- Click each repository set from which you want to select repositories, and select the check box for each required repository. The repository is automatically enabled. After enabling a Red Hat repository, a product for this repository is automatically created. The content from this repository will be downloaded during the next synchronization.
Important
Ensure you enable the Satellite Tools repository. This repository provides the katello-agent and puppet-agent packages for clients registered to the Satellite Server. - Start the synchronization process as described in Section 4.1.3, “Synchronizing Content”.
8.1.1. Upgrading Disconnected Satellite
Prerequisites
- Upgrade to the latest minor version of Red Hat Satellite 6.0 before proceeding. Direct upgrade to 6.1 from earlier minor versions is not supported.
- Run
katello-service startto restart all services and update the operating system. For instructions on how to update a disconnected system see Deployment Guide[11] for Red Hat Enterprise Linux 6 or System Administrator's Guide[12] for Red Hat Enterprise Linux 7.
Procedure 8.4. Upgrading Disconnected Satellite
- If there are discovered hosts available, turn them off and delete all entries under the Discovered hosts page.
- Stop services:
# katello-service stop output omitted Success!Wait for the command to complete. If required, confirm services have stopped:#
Restart the Mongo database as it is required for upgrading the Pulp database:katello-service statusmongod is stopped qdrouterd is stopped qpidd is stopped celery init v10.0. Using configuration: /etc/default/pulp_workers, /etc/default/pulp_celerybeat pulp_celerybeat is stopped. elasticsearch is stopped celery init v10.0. Using config script: /etc/default/pulp_resource_manager node resource_manager is stopped... foreman-proxy is stopped tomcat6 is stopped [ OK ] output truncated# service-wait mongod start
- Obtain the ISO file, mount it, and run the install_packages script as described in Section 2.1.2, “Downloading from a Disconnected Network”. After executing successfully, the script returns the following message:
Upgrade is complete. Please backup your data and run katello-installer.
- Create a backup of the relevant databases. See How to generate database backup for Red Hat Satellite 6.0 for instructions on backing up your databases.
- Run the installer with the
--upgradeoption:# katello-installer --upgrade
If required, add the--noopoption to the command and review the/var/log/katello-installer/katello-installer.logto see what changes would be applied if the--noopwas omitted.Important
If you have made manual edits to DNS and DHCP configuration files, they will be overwritten during the upgrade process. To avoid this, append the--capsule-dns-managed=falseand--capsule-dhcp-managed=falseoptions to the--upgradeinstaller command.Thekatello-installerutility will backup files that it changes and log this. For example:/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
The old file can be restored with this command:#
puppet filebucket -l restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1 - Restart all services:
# katello-service restart
- Update the Discovery template:
- At the Hosts tab, select Provisioning templates.
- Select PXELinux global default.
- At the Template editor dialog box, in the tab, modify the PXELinux global default template discovery menu entry. Insert the following text at the end of the template:
LABEL discovery MENU LABEL Satellite 6 Discovery MENU DEFAULT KERNEL boot/fdi-image-rhel_7-vmlinuz APPEND initrd=boot/fdi-image-rhel_7-img rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=https://SATELLITE_CAPSULE_URL:9090 proxy.type=proxy IPAPPEND 2
Theproxy.typeoption can be eitherproxyorforeman. Forproxy, all communication goes through the Capsule. Forforeman, the communication goes directly to Satellite Server, which was the behavior in Satellite 6.0.Theproxy.urlspecifies the URL of the Satellite Capsule or Server. Both HTTP and HTTPS protocols are supported.
8.2. Upgrading Red Hat Satellite Capsule
Procedure 8.5. To Upgrade Red Hat Satellite Capsule:
- Update the operating system:
# yum update
- Disable the repositories for the previous version of Satellite.
- If upgrading from Satellite 6.0 on Red Hat Enterprise Linux 7:
# subscription-manager repos --disable rhel-7-server-satellite-capsule-6.0-rpms
- If upgrading from Satellite 6.1 Beta on Red Hat Enterprise Linux 7:
# subscription-manager repos --disable rhel-server-7-satellite-capsule-6-beta-rpms
- If upgrading from Satellite 6.0 on Red Hat Enterprise Linux 6:
# subscription-manager repos --disable rhel-6-server-satellite-capsule-6.0-rpms
- If upgrading from Satellite 6.1 Beta on Red Hat Enterprise Linux 6:
# subscription-manager repos --disable rhel-server-6-satellite-capsule-6-beta-rpms
- Enable the new repositories.
- On Red Hat Enterprise Linux 7:
# subscription-manager repos --enable rhel-7-server-satellite-capsule-6.1-rpms
- On Red Hat Enterprise Linux 6:
# subscription-manager repos --enable rhel-6-server-satellite-capsule-6.1-rpms
- If there are discovered hosts available, turn them off and delete all entries under the Discovered hosts page.
- Stop the following services to prevent dependency errors during the database migration:
# for i in qpidd pulp_workers pulp_celerybeat pulp_resource_manager httpd; do service $i stop; done
- Clear the repository cache and update all packages:
# yum clean all # yum update
- The following steps are required only if you upgrade from Satellite 6.0:
- Install the capsule-installer package:
# yum install capsule-installer
Note
In Red Hat Satellite 6.0, thekatello-installerscript provided the Satellite Capsule Server installer. In Satellite 6.1, thecapsule-installerscript has its own package.Installing capsule-installer automatically removes the katello-installer package and saves the previous Capsule configuration and answer files. - Copy the previous answer file to the new
capsule-installerdirectory:# cp /etc/katello-installer/answers.capsule-installer.yaml.rpmsave /etc/capsule-installer/answers.capsule-installer.yaml
- On the Satellite Server, generate an archive with new certificates:
# capsule-certs-generate --capsule-fqdn "capsule.example.com" --certs-tar "capsule.example.com-certs.tar"
Replace capsule.example.com with the fully qualified domain name of the Capsule. Copy the archive file to the Capsule. - Install the Discovery plug-in if you plan to use the Capsule as a proxy for discovered hosts:
# yum install rubygem-smart_proxy_discovery.noarch
- Verify if the foreman_url setting refers to the Satellite Server correctly. On the Capsule execute:
# grep foreman_url /etc/foreman-proxy/settings.yml
The above command should return the fully qualified domain name (FQDN) of the Satellite server, for example::foreman_url: https://satellite.example.com
- Restart the foreman-proxy component on the Satellite Capsule server:
# service foreman-proxy restart
- Run the installer with the
--upgradeoption:# capsule-installer --upgrade --certs-tar capsule.example.com-certs.tar
Replace capsule.example.com-certs.tar with the path to the certificate archive on the Capsule.Important
If you have made manual edits to DNS and DHCP configuration files, they will be overwritten during the upgrade process. To avoid this, append the--dns-managed=falseand--dhcp-managed=falseoptions to the--upgradeinstaller command. - Upgrade the foreman-discovery-image package on the Satellite server and turn on the hosts that were shut down prior the upgrade.
8.3. Upgrading the Discovery Feature
Procedure 8.6. How to Upgrade the Discovery Feature of Satellite 6
- Verify that all relevant packages are up-to-date on the Satellite server:
# yum upgrade ruby193-rubygem-foreman_discovery
Restart the Satellite server if any packages were updated. - Upgrade the Discovery image on the Satellite Capsule that is either connected to the provisioning network with discovered hosts or provides TFTP services for discovered hosts.
# yum upgrade foreman-discovery-image
- On the same instance, install the package which provides the Proxy service, and then restart
foreman-proxyservice. Discovered hosts in Satellite 6.1 are no longer required to have direct connection to Satellite Server.# yum install rubygem-smart_proxy_discovery # service foreman-proxy restart
- All subnets with discovered nodes need this specified in Satellite Server so it connects via the Foreman Proxy. In the web UI, navigate to → and verify that the desired proxy lists the Discovery feature. If it does not, click .
- Navigate to → and select the required Smart Proxy for each subnet that you want to use discovery, and verify that it is connected to the Discovery Proxy.
- Navigate to , edit the PXELinux global default template and modify it according to the example below.
Note
Different options appear on the APPEND line compared to the Satellite 6.0 release.LABEL discovery MENU LABEL Satellite 6 Discovery MENU DEFAULT KERNEL boot/fdi-image-rhel_7-vmlinuz APPEND initrd=boot/fdi-image-rhel_7-img rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=https://SATELLITE_CAPSULE_URL:9090 proxy.type=proxy IPAPPEND 2
Theproxy.typeoption can be eitherproxyorforeman. If you specifyproxythen all communication goes through the Satellite Capsule. This is the preferred method. If you specifyforemanthen all communication goes directly to the Satellite Server. This is the method used by Satellite 6.0.Note
When using proxy type, the default port on Satellite Capsule is 9090, but for direct communication with Satellite Server, you need to use port 80.Theproxy.urloption specifies the URL of the Satellite Capsule or Server depending on the previous setting. Both HTTP and HTTPS schemes are supported.It is possible to omit theproxy.urloption to determine the Capsule DNS name from its SRV record. This might be useful when there are multiple discovery subnets. Review the global settings and permissions in the Satellite Server user interface. See the Red Hat Satellite 6.1 User Guide for more information.
8.4. Upgrading Red Hat Satellite Clients
Procedure 8.7. To Upgrade the katello-agent Package:
- Log in to the client system and enable the Satellite tools repository.
# subscription-manager repos --enable=rhel-version-server-satellite-tools-6.1-rpms
Replace version with6or7depending on the Red Hat Enterprise Linux version you are using. - Synchronize the repository. Replace ID with the ID of the tools repository.
# hammer repository synchronize --id ID
- Upgrade the katello-agent package.
# yum upgrade katello-agent
Important
8.5. Upgrading Between Minor Versions of Satellite
Prerequisites
- Ensure you have synchronized Satellite Server repositories for Satellite, Capsule, and Satellite Tools.
- Ensure each external Capsule and Content Host can be upgraded by promoting the updated repositories to all relevant content views.
Procedure 8.8. Upgrading the Satellite Server to the Next Minor Version
- Check that only the correct repositories are enabled:
- List the enabled repositories:
subscription-manager repos --list-enabled
- Ensure you only have the following repositories enabled:
rhel-X-server-rpms rhel-X-server-satellite-6.1-rpms rhel-server-rhscl-X-rpms
Where X is the major version of Red Hat Enterprise Linux you are using. If you have a self-registered Satellite, the Red Hat Satellite Tools repository (rhel-6-server-satellite-tools-6.1-rpms or rhel-7-server-satellite-tools-6.1-rpms), which provides Katello Agent, can also be present.
- If you are on a self-registered Satellite, download all packages before stopping Satellite Server:
# yum update --downloadonly
This step is optional for Satellites which are not self-registered. - Stop services:
# katello-service stop output omitted Success! - Update all packages:
# yum update
- If a kernel update occurs, reboot the system:
# reboot
- Perform the upgrade:
# katello-installer --upgrade
- On a self-registered Satellite, restart
goferd:- On Red Hat Enterprise Linux 6:
# service goferd restart
- On Red Hat Enterprise Linux 7:
# systemctl restart goferd
Procedure 8.9. Upgrading a Capsule Server to the Next Minor Version
- Check that only the correct repositories are enabled:
- List the enabled repositories:
subscription-manager repos --list-enabled
- Ensure you only have the following repositories enabled:
rhel-X-server-rpms rhel-X-server-satellite-capsule-6.1-rpms rhel-server-rhscl-X-rpms rhel-X-server-satellite-tools-6.1-rpms
Where X is the major version of Red Hat Enterprise Linux you are using. The Red Hat Satellite Tools repository (rhel-6-server-satellite-tools-6.1-rpms or rhel-7-server-satellite-tools-6.1-rpms), provides Katello Agent.
- Stop services:
# katello-service stop output omitted Success! - Update all packages:
# yum update
- If a kernel update occurs, reboot the system:
# reboot
- Perform the upgrade:
# capsule-installer --upgrade
- Restart
goferd:- On Red Hat Enterprise Linux 6:
# service goferd restart
- On Red Hat Enterprise Linux 7:
# systemctl restart goferd
Procedure 8.10. Upgrading a Content Host to the Next Minor Version
- Update all packages:
# yum update
- If a kernel update occurs, reboot the system:
# reboot
- Restart
goferd:- On Red Hat Enterprise Linux 6:
# service goferd restart
- On Red Hat Enterprise Linux 7:
# systemctl restart goferd
Chapter 9. Next Steps
Chapter 10. Uninstalling Red Hat Satellite Server and Capsule Server
Warning
Removing Satellite Server
katello-remove. The uninstall script will issue a warning twice, requiring confirmation before it removes all packages and configuration files in the system. Below is a sample output of the command:
# katello-remove WARNING: This script will erase many packages and config files. Important packages such as the following will be removed: * elasticsearch * httpd (apache) * mongodb * tomcat6 * puppet * ruby * rubygems * All Katello and Foreman Packages Once these packages and configuration files are removed there is no going back. If you use this system for anything other than Katello and Foreman you probably do not want to execute this script. Read the source for a list of what is removed. Are you sure(Y/N)? y ARE YOU SURE?: This script permanently deletes data and configuration. Read the source for a list of what is removed. Type [remove] to continue? remove Shutting down Katello services... ...
Removing Capsule Server
capsule-remove from the capsule-installer package. Same as katello-remove, capsule-remove will issue a warning twice, requiring confirmation before removing the content.
Appendix A. Glossary of Terms
- Activation Key
- A registration token used in a Kickstart file to control actions at registration. These are similar to Activation Keys in Red Hat Satellite 5, but provide a subset of features because Puppet controls package and configuration management after registration.
- Application Life Cycle Environment
- An Application Life Cycle Environment represents a step, or stage, in a promotion path through the Software Development Life Cycle (SDLC). Promotion paths are also known as development paths. Content such as packages and Puppet modules move through life cycle environments by publishing and promoting Content Views. All Content Views have versions, which means you can promote a specific version through a typical promotion path; for example, from development to test to production. Channel cloning implements this concept in Red Hat Satellite 5.
- Attach
- The process of associating a Subscription to a Host that provides access to RPM content.
- Capsule
- A Capsule is an additional server that can be used in a Red Hat Satellite 6 deployment to facilitate content federation and distribution in addition to other localized services (Puppet Master,
DHCP,DNS,TFTP, and more). - Catalog
- A Catalog is a document that describes the desired system state for one specific computer. It lists all of the resources that need to be managed, as well as any dependencies between those resources.
- Compute Profile
- Compute Profiles specify default attributes for new virtual machines on a compute resource.
- Compute Resource
- A Compute Resource is virtual or cloud infrastructure, which Red Hat Satellite 6 uses for deployment of hosts and systems. Examples include Red Hat Enterprise Virtualization Manager, OpenStack, EC2, and VMWare.
- Content
- Content includes software packages (RPM files) and Puppet modules. These are synchronized into the Library and then promoted into Life Cycle Environments using Content Views so that they can be consumed by Hosts.
- Content Delivery Network (CDN)
- The Content Delivery Network (CDN) is the mechanism used to deliver Red Hat content in a geographically co-located fashion. For example, content that is synchronized by a Satellite in Europe pulls content from a source in Europe.
- Content Host
- A Content Host is the part of a host that manages tasks related to content and subscriptions.
- Content View
- A Content View is a definition of content that combines products, packages, and Puppet modules with capabilities for intelligent filtering and creating snapshots. Content Views are a refinement of the combination of channels and cloning from Red Hat Satellite 5.
- External Node Classifier
- An External Node Classifier is a Puppet construct that provides additional data for a Puppet Master to use when configuring Hosts. Red Hat Satellite 6 acts as an External Node Classifier to Puppet Masters in a Satellite deployment.
- Facter
- Facter is a program that provides information (facts) about the system on which it is run; for example, Facter can report total memory, operating system version, architecture, and more. Puppet modules enable specific configurations based on host data gathered by Facter.
- Hammer
- Hammer is a command line tool for Red Hat Satellite 6. Use Hammer to manage Red Hat Satellite 6 as a standard CLI, for scripts, and also through an interactive shell.
- Hiera
- Hiera is a key/value look-up tool for configuration data which allows keeping site-specific data out of puppet manifests.
- Host
- A Host refers to any system, either physical or virtual, that Red Hat Satellite 6 manages.
- Host Collection
- A Host Collection is equivalent to a Satellite 5 System Group, that is, a user defined group of one or more Hosts.
- Host Group
- A Host Group is a template for building a Host. This includes the content view (which defines the available RPM files and Puppet modules) and the Puppet classes to apply (which ultimately determines the software and configuration).
- Location
- A Location is collection of default settings that represent a physical place. These can be nested so that you can set up an hierarchical collection of locations. For example, you can set up defaults for "Middle East", which are refined by "Tel Aviv", which are further refined by "Data Center East", and then finally by "Rack 22".
- Library
- The Library contains every version, including the latest synchronized version, of the software that the user will ever deploy. For an Information Technology Infrastructure Library (ITIL) [13] organization or department, this is the Definitive Media Library [14] (previously named the Definitive Software Library).
- Manifest
- A Manifest transfers subscriptions from the Customer Portal to Red Hat Satellite 6. This is similar in function to certificates used with Red Hat Satellite 5.For more information about certificates and subscription types, see:
- Organization
- An Organization is an isolated collection of systems, content, and other functionality within a Satellite 6 deployment.
- Product
- A collection of content repositories. Products can be Red Hat products or newly-created products made up of software and configuration content.
- Promote
- The act of moving a content view comprised of software and configuration content from one Application Life Cycle Environment to another, such as moving from development to QA to production.
- Provisioning Template
- A Provisioning Template is a user-defined template for Kickstart files, snippets, and other provisioning actions. In Satellite 6 they provide similar functionality to Kickstart Profiles and cobbler Snippets in Red Hat Satellite 5.
- Pulp Node
- A Pulp Node is a Capsule Server component that mirrors content. This is similar to the Red Hat Satellite 5 Proxy. The main difference is that content can be staged on the Pulp Node before it is used by a Host.
- Puppet Agent
- The Puppet Agent is an agent that runs on a Host and applies configuration changes to that Host.
- Puppet Master
- A Puppet Master is a Capsule Server component that provides Puppet manifests to Hosts for execution by the Puppet Agent.
- Puppet Module
- A Puppet Module is a self-contained bundle of code and data that you can use to manage resources such as users, files, and services.
- Repository
- A Repository provides storage for a collection of content. For example, a YUM repository or a Puppet repository.
- Role
- A Role specifies a collection of permissions that are applied to a set of resources, such as Hosts.
- Smart Proxy
- A Smart Proxy is a Capsule Server component that can integrate with external services, such as
DNSorDHCP. - Smart Variable
- A Smart Variable is a configuration value that controls how a Puppet Class behaves. This can be set on a Host, a Host Group, an Organization, or a Location.
- Standard Operating Environment (SOE)
- A Standard Operating Environment (SOE) is a controlled version of the operating system on which applications are deployed.
- Subscription
- Subscriptions are the means by which you receive content and service from Red Hat.
- Synchronizing
- Synchronizing refers to mirroring content from external resources into the Red Hat Satellite 6 Library.
- Synchronization Plans
- Synchronization Plans provide scheduled execution of content synchronization.
- User Group
- A User Group is a collection of roles which can be assigned to a collection of users. This is similar to a Role in Red Hat Satellite 5.
- User
- A user is anyone registered to use Red Hat Satellite. Authentication and authorization is possible through built-in logic, through external LDAP resources, or with Kerberos.
Appendix B. Revision History
| Revision History | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revision 1-70 | Wed 30 Nov 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-69 | Fri 21 Oct 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-68 | Tue 13 Sept 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-67 | Tue 18 Aug 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-66 | Tue 02 Aug 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-65 | Wed Apr 27 2016 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-64 | Tue Dec 15 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-63 | Mon Nov 16 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-62 | Mon Oct 12 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-61 | Thu Sept 24 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-60 | Mon Sept 21 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-59 | Tues August 25 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-58 | Fri August 7 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-57 | Mon August 3 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-56 | Fri July 24 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-55 | Thu July 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-54 | Thu July 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-53 | Tue July 21 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-52 | Mon July 20 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-51 | Fri July 17 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-50 | Thu July 16 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-49 | Tue July 14 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-48 | Mon July 13 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-47 | Sat July 11 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-46 | Wed July 8 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-45 | Thu July 2 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-44 | Wed July 1 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-43 | Thu Jun 25 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-42 | Wed Jun 24 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-41 | Mon Jun 15 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-40 | Thu June 8 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-39 | Thu June 4 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-38 | Wed May 27 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-37 | Wed May 13 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-36 | Mon May 11 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-35 | Mon May 4 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-34 | Thu April 30 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-33 | Wed April 29 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-32 | Tue April 28 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-31 | Mon April 27 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-30 | Fri April 24 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-29 | Thu April 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-28 | Wed April 22 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-29 | Wed April 22 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-27 | Wed April 15 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-26 | Wed April 8 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-25 | Fri April 1 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-24 | Fri April 1 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-23 | Mon Mar 30 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-22 | Wed Mar 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-21 | Wed Mar 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-20 | Wed Mar 18 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-19 | Tue Mar 17 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-18 | Thu Mar 12 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-17 | Mon Mar 09 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-16 | Wed Mar 03 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-15 | Fri Feb 27 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-14 | Wed Feb 25 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-13 | Tue Feb 18 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-12 | Mon Feb 9 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-11 | Fri Jan 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-10 | Fri Jan 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-9 | Fri Jan 23 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-8 | Wed Jan 21 2015 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-7 | Thu Dec 18 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-6.2 | Thu Nov 19 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-6.1 | Friday Nov 14 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-6 | Thu Nov 13 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-5 | Tue Nov 11 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-4 | Mon Nov 10 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-3 | Fri Nov 7 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-2.02 | Fri Oct 3 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-2.01 | Fri Sep 12 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-2 | Thu Sep 11 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-1 | Wed Sep 10 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 1-0 | Tue Sep 9 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-34 | Thu Aug 21 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-33 | Tue Aug 12 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-32 | Fri Jul 11 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-31 | Mon Jun 30 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-30 | Tue Jun 24 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-29 | Tue Jun 24 2014 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-28 | Mon Nov 11 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-27 | Mon 11 Nov 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-26 | Mon 11 Nov 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-25 | Thu 7 Nov 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-24 | Thu 7 Nov 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-23 | Wed 30 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-22 | Tue 29 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-21 | Wed 09 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-20 | Wed 2 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-19 | Wed 2 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-18 | Tue 1 Oct 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-17 | Thu 19 Sep 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-16 | Tue 17 Sep 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-15 | Wed 11 Sep 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-14 | Mon 12 Aug 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-13 | Mon 12 Aug 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-09 | Thu 20 June 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-08 | Thu 20 June 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-07 | Wed 19 June 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-06 | Thu 13 June 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-05 | Tue 11 June 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-04 | Fri 31 May 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-03 | Thu 30 May 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-02 | Tue 28 May 2013 | |||||||||||||||||||
| ||||||||||||||||||||
| Revision 0-01 | Fri 17 May 2013 | |||||||||||||||||||
| ||||||||||||||||||||
