此内容没有您所选择的语言版本。
Chapter 1. Preparing your Environment for Installation
1.1. System Requirements
The following requirements apply to the networked base system:
- x86_64 architecture
- The latest version of Red Hat Enterprise Linux 7 Server
- 4-core 2.0 GHz CPU at a minimum
- A minimum of 12 GB RAM is required for Capsule Server to function. In addition, a minimum of 4 GB RAM of swap space is also recommended. Capsule running with less RAM than the minimum value might not operate correctly.
- A unique host name, which can contain lower-case letters, numbers, dots (.) and hyphens (-)
- A current Red Hat Satellite subscription
- Administrative user (root) access
- A system umask of 0022
- Full forward and reverse DNS resolution using a fully-qualified domain name
Before you install Capsule Server, ensure that your environment meets the requirements for installation.
Capsule Server must be installed on a freshly provisioned system that serves no other function except to run Capsule Server. The freshly provisioned system must not have the following users provided by external identity providers to avoid conflicts with the local users that Capsule Server creates:
- postgres
- mongodb
- apache
- tomcat
- foreman
- foreman-proxy
- qpidd
- qdrouterd
- squid
- puppet
The Red Hat Satellite Server and Capsule Server versions must match. For example, a Satellite 6.2 Server cannot run a 6.6 Capsule Server and a Satellite 6.6 Server cannot run a 6.2 Capsule Server. Mismatching Satellite Server and Capsule Server versions results in the Capsule Server failing silently.
For more information on scaling your Capsule Servers, see Capsule Server Scalability Considerations.
Certified hypervisors
Capsule Server is fully supported on both physical systems and virtual machines that run on hypervisors that are supported to run Red Hat Enterprise Linux. For more information about certified hypervisors, see Which hypervisors are certified to run Red Hat Enterprise Linux?
FIPS Mode
You can install Capsule Server on a Red Hat Enterprise Linux system that is operating in FIPS mode. For more information, see Enabling FIPS Mode in the Red Hat Enterprise Linux Security Guide.
1.2. Storage Requirements
The following table details storage requirements for specific directories. These values are based on expected use case scenarios and can vary according to individual environments.
The runtime size was measured with Red Hat Enterprise Linux 6, 7, and 8 repositories synchronized.
Directory | Installation Size | Runtime Size |
---|---|---|
/var/cache/pulp/ | 1 MB | 20 GB (Minimum) |
/var/lib/pulp/ | 1 MB | 300 GB |
/var/lib/mongodb/ | 3.5 GB | 50 GB |
/opt | 500 MB | Not Applicable |
1.3. Storage Guidelines
Consider the following guidelines when installing Capsule Server to increase efficiency.
-
Because most Capsule Server data is stored within the
/var
directory, mounting/var
on LVM storage can help the system to scale. -
For the
/var/lib/pulp/
and/var/lib/mongodb/
directories, use high-bandwidth, low-latency storage, and solid state drives (SSD) rather than hard disk drives (HDD). As Red Hat Satellite has many operations that are I/O intensive, using high latency, low-bandwidth storage causes performance degradation. Ensure your installation has a speed in the range 60 - 80 Megabytes per second. You can use thefio
tool to get this data. See the Red Hat Knowledgebase solution Impact of Disk Speed on Satellite 6 Operations for more information on using thefio
tool. -
The
/var/lib/qpidd/
directory uses slightly more than 2 MB per Content Host managed by thegoferd
service. For example, 10 000 Content Hosts require 20 GB of disk space in/var/lib/qpidd/
. -
Using the same volume for the
/var/cache/pulp/
and/var/lib/pulp/
directories can decrease the time required to move content from/var/cache/pulp/
to/var/lib/pulp/
after synchronizing.
File System Guidelines
-
Use the XFS file system for Red Hat Satellite 6 because it does not have the inode limitations that
ext4
does. As Capsule Server uses a lot of symbolic links it is likely that your system may run out of inodes if usingext4
and the default number of inodes. -
Do not use NFS with MongoDB because MongoDB does not use conventional I/O to access data files and performance problems occur when both the data files and the journal files are hosted on NFS. If required to use NFS, mount the volumes with the following option in the
/etc/fstab
file:bg
,nolock
, andnoatime
. - Do not use NFS for Pulp data storage. Using NFS for Pulp has a negative performance impact on content synchronization.
- Do not use the GFS2 file system as the input-output latency is too high.
SELinux Considerations for NFS Mount
When /var/lib/pulp
directory is mounted using an NFS share, SELinux blocks the synchronization process. To avoid this, specify the SELinux context of the /var/lib/pulp
directory in the file system table by adding the following lines to /etc/fstab
:
nfs.example.com:/nfsshare /var/lib/pulp/content nfs context="system_u:object_r:httpd_sys_rw_content_t:s0" 1 2
If NFS share is already mounted, remount it using the above configuration and enter the following command:
# chcon -R system_u:object_r:httpd_sys_rw_content_t:s0 /var/lib/pulp
Duplicated Packages
Packages that are duplicated in different repositories are only stored once on the disk. Additional repositories containing duplicate packages require less additional storage. The bulk of storage resides in the /var/lib/mongodb/
and /var/lib/pulp/
directories. These end points are not manually configurable. Ensure that storage is available on the /var
file system to prevent storage problems.
Temporary Storage
The /var/cache/pulp/
directory is used to temporarily store content while it is being synchronized. For content in RPM format, a maximum of 5 RPM files are stored in this directory at any time. After each file is synchronized, it is moved to the /var/lib/pulp/
directory. Up to 8 RPM content synchronization tasks can run simultaneously by default, with each using up to 1 GB of metadata.
ISO Images
For content in ISO format, all ISO files per synchronization task are stored in /var/cache/pulp/
until the task is complete, after which they are moved to the /var/lib/pulp/
directory.
If you plan to use ISO images for installing or updating, you must provide external storage or allow space in /var/tmp
for temporarily storing ISO files.
For example, if you are synchronizing four ISO files, each 4 GB in size, this requires a total of 16 GB in the /var/cache/pulp/
directory. Consider the number of ISO files you intend synchronizing because the temporary disk space required for them typically exceeds that of RPM content.
Software Collections
Software collections are installed in the /opt/rh/
and /opt/theforeman/
directories.
Write and execute permissions by the root user are required for installation to the /opt
directory.
Symbolic links
You cannot use symbolic links for /var/lib/pulp/
and /var/lib/mongodb/
.
Log Storage
You can view log files at the following locations: /var/log/messages/
, /var/log/httpd/
, and /var/lib/foreman-proxy/openscap/content/
. To manage the size of the log files use the logrotate
configuration file. For more information, see Log Rotation in the Red Hat Enterprise Linux 7 System Administrator’s Guide.
1.4. Supported Operating Systems
You can install the operating system from disc, local ISO image, kickstart, or any other method that Red Hat supports. Red Hat Capsule Server is supported only on the latest versions of Red Hat Enterprise Linux 7 Server that is available at the time when Capsule Server 6.6 is installed. Previous versions of Red Hat Enterprise Linux including EUS or z-stream are not supported.
Red Hat Capsule Server requires a Red Hat Enterprise Linux installation with the @Base
package group with no other package-set modifications, and without third-party configurations or software not directly necessary for the direct operation of the server. This restriction includes hardening and other non-Red Hat security software. If you require such software in your infrastructure, install and verify a complete working Capsule Server first, then create a backup of the system before adding any non-Red Hat software.
Install Capsule Server on a freshly provisioned system. Do not register Capsule Server to the Red Hat Content Delivery Network (CDN). Red Hat does not support using the system for anything other than running Capsule Server.
1.5. Ports and Firewalls Requirements
For the components of Satellite architecture to communicate, ensure that the required network ports are open and free on the base operating system. You must also ensure that the required network ports are open on any network-based firewalls.
The installation of a Capsule Server fails if the ports between Satellite Server and Capsule Server are not open before installation starts.
Use this information to configure any network-based firewalls. Note that some cloud solutions must be specifically configured to allow communications between machines because they isolate machines similarly to network-based firewalls. If you use an application-based firewall, ensure that the application-based firewall permits all applications that are listed in the tables and known to your firewall. If possible, disable the application checking and allow open port communication based on the protocol.
Integrated Capsule
Satellite Server has an integrated Capsule and any host that is directly connected to Satellite Server is a Client of Satellite in the context of this section. This includes the base system on which Capsule Server is running.
Clients of Capsule
Hosts which are clients of Capsules, other than Satellite’s integrated Capsule, do not need access to Satellite Server. For more information on Satellite Topology, see Capsule Networking in Planning for Red Hat Satellite 6.
Required ports can change based on your configuration.
A matrix table of ports is available in the Red Hat Knowledgebase solution Red Hat Satellite 6.6 List of Network Ports.
The following tables indicate the destination port and the direction of network traffic:
Port | Protocol | Service | Required For |
---|---|---|---|
5646 | TCP | AMQP | Capsule’s Qpid dispatch router to Qpid dispatch router in Satellite |
Port | Protocol | Service | Required for |
---|---|---|---|
80 | TCP | HTTP | Anaconda, yum, and for obtaining Katello certificate updates |
443 | TCP | HTTPS | Anaconda, yum, Telemetry Services, and Puppet |
5647 | TCP | AMQP | Katello agent to communicate with 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 and Telemetry Services |
9090 | TCP | HTTPS | Sending SCAP reports to the Smart Proxy in the Capsule and for the discovery image during provisioning |
53 | TCP and UDP | DNS | Client DNS queries to a Capsule’s DNS service (Optional) |
67 | UDP | DHCP | Client to Capsule broadcasts, DHCP broadcasts for Client provisioning from a Capsule (Optional) |
69 | UDP | TFTP | Clients downloading PXE boot image files from a Capsule for provisioning (Optional) |
5000 | TCP | HTTPS | Connection to Katello for the Docker registry (Optional) |
Port | Protocol | Service | Required For |
---|---|---|---|
7 | TCP and UDP | ICMP | DHCP Capsule to Client network, ICMP ECHO to verify IP address is free (Optional) |
68 | UDP | DHCP | Capsule to Client broadcasts, DHCP broadcasts for Client provisioning from a Capsule (Optional) |
8443 | TCP | HTTP | Capsule to Client "reboot" command to a discovered host during provisioning (Optional) |
Any managed host that is directly connected to Satellite Server is a client in this context because it is a client of the integrated Capsule. This includes the base system on which a Capsule Server is running.
Port | Protocol | Service | Required For |
---|---|---|---|
22 | TCP | SSH | Satellite and Capsule originated communications, for Remote Execution (Rex) and Ansible. |
7911 | TCP | DHCP |
|
A DHCP Capsule sends an ICMP ECHO to confirm an IP address is free, no response of any kind is expected. ICMP can be dropped by a networked-based firewall, but any response prevents the allocation of IP addresses.
1.6. Enabling Connections from Capsule Server to Satellite Server
On Satellite Server, you must enable the incoming connection from Capsule Server to Satellite Server and make this rule persistent across reboots.
Prerequisites
- Ensure that the firewall rules on Satellite Server are configured to enable connections for client to Satellite communication, because Capsule Server is a client of Satellite Server. For more information, see Enabling Connections from a Client to Satellite Server in Installing Satellite Server from a Connected Network.
Procedure
On Satellite Server, enter the following command to open the port for Capsule to Satellite communication:
# firewall-cmd --add-port="5646/tcp"
Make the changes persistent:
# firewall-cmd --runtime-to-permanent
1.7. Enabling Connections from Satellite Server and Clients to a Capsule Server
On the base operating system on which you want to install Capsule, you must enable incoming connections from Satellite Server and clients to Capsule Server and make these rules persistent across reboots.
Procedure
On the base operating system on which you want to install Capsule, enter the following command to open the ports for Satellite Server and clients communication to Capsule Server:
# 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="5000/tcp" --add-port="5647/tcp" \ --add-port="8000/tcp" --add-port="8140/tcp" \ --add-port="8443/tcp" --add-port="9090/tcp"
Make the changes persistent:
# firewall-cmd --runtime-to-permanent
1.8. Verifying Firewall Settings
Use this procedure to verify your changes to the firewall settings.
Procedure
To verify the firewall settings, complete the following step:
Enter the following command:
# firewall-cmd --list-all
For more information, see Getting Started with firewalld in the Red Hat Enterprise Linux 7 Security Guide.