Preparing the master host operating system

Perform the steps in Downloading and staging required files, before performing this procedure.
Use this procedure to prepare a RHEL/CentOS host as a Control Center master host.
  1. Log in to the candidate master host as root, or as a user with superuser privileges.
  2. Ensure the host has a persistent numeric ID.
    Skip this step if you are installing a single-host deployment.
    Each Control Center host must have a unique host ID, and the ID must be persistent (not change when the host reboots).
    test -f /etc/hostid || genhostid ; hostid
    Record the ID for comparison with other Control Center hosts.
  3. Disable the firewall, if necessary.
    This step is required for installation but not for deployment. For more information, refer to the Resource Manager Planning Guide or the Zenoss Community Edition (Core) Planning Guide.
    1. Determine whether the firewalld service is enabled.
      systemctl status firewalld.service
      • If the result includes Active: inactive (dead), the service is disabled. Proceed to the next step.
      • If the result includes Active: active (running), the service is enabled. Perform the following substep.
    2. Disable the firewalld service.
      systemctl stop firewalld && systemctl disable firewalld
      On success, the preceding commands display messages similar to the following example:
      rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
      rm '/etc/systemd/system/basic.target.wants/firewalld.service'
  4. Optional: Enable persistent storage for log files, if desired.
    By default, RHEL/CentOS systems store log data only in memory or in a ring buffer in the /run/log/journal directory. By performing this step, log data persists and can be saved indefinitely, if you implement log file rotation practices. For more information, refer to your operating system documentation.
    mkdir -p /var/log/journal && systemctl restart systemd-journald
  5. Enable and start the Dnsmasq package.
    The package facilitates networking among Docker containers.
    systemctl enable dnsmasq && systemctl start dnsmasq
    If name resolution in your environment relies solely on entries in /etc/hosts, configure dsnmasq so that containers can use the file:
    1. Open /etc/dnsmasq.conf with a text editor.
    2. Locate the line that starts with #domain-needed, and then make a copy of the line, immediately below the original.
    3. Remove the number sign character (#) from the beginning of the line.
    4. Locate the line that starts with #bogus-priv, and then make a copy of the line, immediately below the original.
    5. Remove the number sign character (#) from the beginning of the line.
    6. Locate the line that starts with #local=/localnet/, and then make a copy of the line, immediately below the original.
    7. Remove net, and then remove the number sign character (#) from the beginning of the line.
    8. Locate the line that starts with #domain=example.com, and then make a copy of the line, immediately below the original.
    9. Replace example.com with local, and then remove the number sign character (#) from the beginning of the line.
    10. Save the file, and then close the editor.
    11. Restart the dnsmasq service.
      systemctl restart dnsmasq
  6. Install and configure the NTP package.
    1. Stop and disable chronyd, if present.
      test "$(systemctl is-active chronyd)" = "active" \
        && systemctl stop chronyd && systemctl disable chronyd
    2. Install the NTP package.
      yum makecache fast && yum install ntp
    3. Set the system time.
      ntpd -gq
    4. Enable and start the ntpd service.
      systemctl enable ntpd && systemctl start ntpd