How to Install Katello 3.2 on CentOS 7.x

Katello is an open source content management software. Katello is the alternate of Red Hat Satellite Server 6.1 and 6.2. Apart from the content management katello can also perform provisioning and configuration task using foreman. In other words we can say Katello is the open source Satellite Server which can push updates to its register Linux Servers or clients.

Following are the different components in Satellite Server :

  • Katello – It manage all contents or repository and Software Development Life Management (SDLC )
  • Foreman – It performs provisioning of physical and virtual servers using methods like kickstart and PXE, It also allows us to automate our tasks using puppet modules.
  • Candlepin – It is a service within katello which is responsible for handling subscription management.
  • Pulp – It is a service within the katello which handles repositories and it’s content
  • Capsule Server –  It acts as proxy server for some of the katello services like repository storage, DNS, DHCP and Puppet server configurations

In this article we are going to install Katello 3.2 on CentOS 7.x Server. Beneath are the minimum recommendation for Katello Server :

  • Minimum of 8 GB RAM
  • Minimum 2 CPU Cores
  •  20 GB in / file system
  • Separate and maximum Size of /var/ becuase all the OS repositories will be synced under /var/lib/pulp, ideally allocate 30 GB space for each OS repositories. let’s assume i will sync repo of three OS than size of /var would be 90 GB.

Perform the following Steps to install Katello 3.2, I am assuming minimal CentOS 7.x is already install.

Step:1 Set Hostname and update the Server

Use the hostnamectl command to set the hostname

[root@localhost ~]# hostnamectl set-hostname "katello.example.com"

Update the /etc/hosts file in case you don’t have your own DNS Server

[root@katello ~]# echo "192.168.1.12 katello.example.com" >> /etc/hosts

Use the below yum command to  update the server and then reboot

[root@katello ~]# yum update -y ; reboot

Step:2 Set the firewall rules for katello

Run the below command to open the ports in OS firewall for katello setup.

[root@katello ~]# firewall-cmd --permanent --add-port="80/tcp" --add-port="443/tcp" --add-port="5646/tcp" --add-port="5647/tcp" --add-port="5671/tcp" --add-port="5672/tcp"  --add-port="8140/tcp" --add-port="9090/tcp" --add-port="53/udp" --add-port="53/tcp"  --add-port="67/udp" --add-port="68/udp" --add-port="69/udp"

Step:3 Set the required repositories for katello

Run the beneath commands one after the other to set the required repositories for katello setup.

[root@katello ~]# yum -y localinstall http://fedorapeople.org/groups/katello/releases/yum/3.2/katello/el7/x86_64/katello-repos-latest.rpm
[root@katello ~]# yum -y localinstall http://yum.theforeman.org/releases/1.13/el7/x86_64/foreman-release.rpm
[root@katello ~]# yum -y localinstall http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
[root@katello ~]# yum -y localinstall http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@katello ~]# yum -y install foreman-release-scl

Now again update your system as we have added new repositories.

[root@katello ~]# yum -y update

Step:4 Install Katello Package and start the installation

Run the following yum command to install katello packages.

[root@katello ~]# yum -y install katello

Before starting the Installation , configure your server with NTP for time syncing. Set the time zone with respect to your location

[root@katello ~]# rm -f /etc/localtime
[root@katello ~]# ln -s /usr/share/zoneinfo/Asia/Calcutta /etc/localtime
[root@katello ~]# yum install ntp -y
[root@katello ~]# ntpdate in.pool.ntp.org
11 Nov 14:50:34 ntpdate[6812]: step time server 139.59.19.184 offset 1.308420 sec
[root@katello ~]#

Start the Katello Installation now using below foreman-installer command

[root@katello ~]# foreman-installer --scenario katello --foreman-admin-username admin --foreman-admin-password <Specify_Password>

Once the Installation is completed , we will get output something like below :

katello-3-2-installation-success-message

Note : In case your server is running behind the proxy server then run the below command

[root@katello ~]# foreman-installer --scenario katello --katello-proxy-url http://<Proxy-Server_Name_or_IP> --katello-proxy-port <Proxy-port> --foreman-admin-username admin --foreman-admin-password <Specify_Password>

Step:5 Access the Katello Admin Dashboard

Open the Web Browser and type the url “https://katello.example.com/” , Use the username as admin and password that we specify in the above step.

katello-login-screen

katello-foreman-admin-dashboard

That’s all for this article. Please share your valuable feedback and Comments. Refer the below URL for downloading Yum Repositories and Register Clients for patching in Katello setup.

Katello – Download Yum Repositories and Register clients for patching

2 Responses

  1. lzap says:

    Few suggestions: Use timedatectl to set time or timezone. I also recommend chrony for the NTP.

  2. Tomas says:

    Use –foreman-initial-organization and –foreman-initial-location, unless you enjoy using the Default Organisation 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *