Red Hat Training

A Red Hat training course is available for Red Hat Satelitte

Appendix A. Large Deployment Considerations

Increasing the Maximum Number of File Descriptors for Apache

With more than 800 content hosts registered, Apache can reach several system-level limits, resulting in new content host registration failure. To avoid this, file descriptor limits must be increased before deploying a large number of content hosts.

  1. On Red Hat Enterprise Linux 7, create the /etc/systemd/system/httpd.service.d/limits.conf file and insert the following text:

    [Service]
    LimitNOFILE=65536
  2. Apply the changes to the unit.

    # systemctl daemon-reload
  3. Restart Katello services.

    # katello-service restart

Increasing the Maximum Number of File Descriptors for qpid

With more than 1100 content hosts with goferd running for errata updates, the qpid reach system-level limits, resulting in registration failures. To avoid this, file descriptors limits must be increased before deploying a large number of content hosts.

Increasing the Maximum Number of File Descriptors for qpid Using Red Hat Enterprise Linux 7

  1. Create the /etc/systemd/system/qpidd.service.d/limits.conf file and insert the following text:

    [Service]
    LimitNOFILE=65536
  2. Apply the changes to the unit.

    # systemctl daemon-reload
    # systemctl restart qpidd.service

Increasing the Maximum Number of File Descriptors for qpid Using Red Hat Enterprise Linux 6

  1. Edit the /etc/security/limits.conf file and insert the following text:

    qpidd - nofile 65536
  2. Restart the qpidd service.

    # service qpidd restart

Increasing the Shared Buffer and Work Memory

You can increase the shared_buffer and work_mem to 256M and 4M respectively.

  1. On Red Hat Enterprise Linux 7, create the /var/lib/pgsql/data/postgresql.conf file and insert the following text:

    work_mem = 4MB
    shared_buffers = 256MB
  2. Restart postgresql services.

    # service postgresql restart

Increasing Concurrent Content Host Registrations

To avoid reaching system-level limits, you can increase the global passenger queue limit to accommodate up to 250 concurrent content hosts.

  1. Adjust the maximum passenger pool size to 1.5 times the physical CPU cores available to the Satellite Server.

    For example, if you have a Satellite Server with 16 cores, then the maximum passenger pool size is 24. This number is referenced as an example and you should use the number applicable to your environment.

  2. Edit the /etc/httpd/conf.d/passenger.conf file, updating the IfModule stanza to match the following text:

    <IfModule mod_passenger.c>
      PassengerRoot /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/locations.ini
      PassengerRuby /usr/bin/ruby
      PassengerMaxPoolSize 24
      PassengerMaxRequestQueueSize 200
      PassengerStatThrottleRate 120
    </IfModule>
  3. Edit the Foreman Passenger application configuration file /etc/httpd/conf.d/05-foreman-ssl.conf, updating the stanza starting with PassengerAppRoot to match the following text:

     PassengerAppRoot /usr/share/foreman
     PassengerRuby /usr/bin/tfm-ruby
     PassengerMinInstances 6
     PassengerStartTimeout 90
     PassengerMaxPreloaderIdleTime 0
     PassengerMaxRequests 10000
     PassengerPreStart https://example.com
  4. Edit the Puppet Passenger application configuration file /etc/httpd/conf.d/25-puppet.conf, adding the following text to the end of the virtual host definition:

     PassengerMinInstances 6
     PassengerStartTimeout 90
     PassengerMaxPreloaderIdleTime 0
     PassengerMaxRequests 10000
     PassengerPreStart https://example.com:8140
  5. Change the maximum connections in the /var/lib/pgsql/data/postgresql.conf file.

    max_connections = 500
  6. Restart postgresql services.

    # service postgresql restart

Increasing the maximum number of open files for qdrouterd

With more than 1000 content hosts registered, qdrouterd can reach the default maximum number of open files. To avoid this, increase the maximum number of open files on the Satellite Server and all external Capsule Servers.

  1. Calculate the required maximum number of open files, using the following equation.

    (3 x number of content hosts) + 100

    For example, with 1020 content hosts, the new maximum should be set to 3160 ((3 x 1020) + 100).

  2. On Red Hat Enterprise Linux 7, create the file /etc/systemd/system/qdrouterd.service.d/limits.conf and add the following text.

    [Service]
    LimitNOFILE=maximum_number_of_files
    1. Apply the changes to the unit.

      # systemctl daemon-reload
    2. Restart the Satellite services.

      # katello-service restart
  3. On Red Hat Enterprise Linux 6, edit the file /etc/security/limits.conf and add the following line.

    qdrouterd   -   nofile  maximum_number_of_files

    Add the new line before the # End of file line because anything past that is ignored.

    1. Restart the qdrouterd service.

      # service qdrouterd restart