How to Install Katello 3.2 on CentOS 7 / RHEL 7

Katello is an open source lifecycle management plugin to Foreman; it handles subscription, and repository management. Katello connects to external repositories for the content (updates) and downloads it; you can apply them (update) to the subscribed systems. You can also say that Katello is the alternate to Redhat Satellite or SpaceWalk.

Katello also allows you to perform tasks such as machine provisioning, configuration management using foreman.

Components of Katello:

Inner Components:

Candlepin – It handles subscription management.

Pulp –  handles repository and content management.

Smart Proxy –  It acts as a proxy for some of the services like DNS, DHCP, and Puppetmaster configuration.

Outer Components:

Foreman –  An open source application that allows you to provision physical and virtual systems automatically using Kickstart and Puppet modules.

In this post, we are going to install Katello 3.3 on CentOS 7 / RHEL 7.

Hardware Requirments:

  • 2 CPU
  • 8GB RAM (12GB RAM recommended)
  • 20GB for / filesystem.
  • Supports only CentOS 7 / RHEL 7
  • /var/lib/pulb holds the operating systems repository content, so allocate 30GB of space for each operating system you wish to sync.
If you wish to sync only two (CentOS 7 and CentOS 6) repositories, then you should have 60GB for /var/lib/pulp file system or /var filesystem.


Use the following command to set the hostname.

hostnamectl set-hostname katello.itzgeek.local

If you don’t have DNS in your environment, then update the /etc/hosts file.

echo " katello.itzgeek.local itzgeek" >> /etc/hosts

Upgrade your base operating system to the latest version (Recommended).

READ: How to Update CentOS 7.0 / 7.1 / 7.2 to CentOS 7.3

Set the firewall rules for Katello.

firewall-cmd --permanent --zone=public --add-port=80/tcp --add-port=443/tcp --add-port=5647/tcp --add-port=9090/tcp

Additionally for the smart proxy.

firewall-cmd --permanent --zone=public  --add-port=8140/tcp --add-port=8443/tcp --add-port=8000/tcp --add-port=67/udp --add-port=68/udp --add-port=69/udp

Reload the firewall.

firewall-cmd --reload

Configure NTP service so that your server can sync time with upstream time server for accurate timing.

yum install -y ntp
service ntpd restart
timedatectl set-timezone America/New_York # Set timezone if required
ntpdate -u

You may need to enable following repositories only on RHEL 7.

### RHEL 7 Only ###
yum -y  --disablerepo="*" --enablerepo=rhel-7-server-rpms install yum-utils wget
yum-config-manager --disable "*"
yum-config-manager --enable rhel-7-server-rpms
yum-config-manager --enable rhel-7-server-optional-rpms
yum-config-manager --enable rhel-7-server-extras-rpms

Configure required repositories for Katello.

yum -y install
yum -y install
yum -y install
yum -y install
yum -y install foreman-release-scl

Run the following command to install Katello packages.

yum -y install katello

Use foreman-installer to setup Katello.

foreman-installer --scenario katello

Upon completion of Katello setup, foreman-installer will display the account details (Greened); you would need this information to log in into Foreman dashboard.

[root@katello ~]# foreman-installer --scenario katello
Installing             Done                                               [100%] [.............................]
  * Katello is running at https://katello.itzgeek.local
      Initial credentials are admin / wkJH7T2qo3JjCCXc
  * To install an additional capsule on a separate machine run the following command:

      capsule-certs-generate --capsule-fqdn "$CAPSULE" --certs-tar "/root/$CAPSULE-certs.tar"

  The full log is at /var/log/foreman-installer/katello.log

Now, open up your web browser and navigate to the following URL.



Log in using the credentials you got during Katello setup.

Install Katello 3.2 on CentOS 7 - Foreman Login
Install Katello 3.2 on CentOS 7 – Foreman Login

The homepage of Katello / Foreman will look like below.

Install Katello 3.2 on CentOS 7 - Foreman Homepage
Install Katello 3.2 on CentOS 7 – Foreman Homepage

If you wish to change the password of admin user, go to Admin User –> My Account.

Install Katello 3.2 on CentOS 7 - Change Admin Password
Install Katello 3.2 on CentOS 7 – Change Admin Password

That’s all!!, for now. Please stay tuned for Configuring Katello to deliver patches for CentOS / RHEL clients.


Share This Post