Katello is an open source content management software. It 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. In fact it is a lifecycle management plugin to Foreman which handles subscription, and repository management.
You'll need a CentOS 7 server with atleast 8 GB RAM and 2 CPU cores to follow this guide for installing Katello 3.2 on your server. You'll need root user privileges over the server. You can switch from non root user to root user using
sudo -i command.
It is highly recommended to install Katello on a freshly updated server so run following command to upgrade available packages and update your system.
yum -y update
Set Hostname and Firewall Rules
First of all you'll have to set hostname using hostnamectl command and then change firewall rules to meet Katello requirements. Run following command to set hostname as shown below.
hostnamectl set-hostname "katello.example.com"
You may need to update
/etc/hosts file in case you don’t have your own DNS Server. Use following command to do so.
echo "192.168.1.12 katello.example.com" >> /etc/hosts
Once done with hostname now you'll need to change firewall rules to open the ports for Katello. Run following commands one by one to do so.
firewall-cmd --permanent --zone=public --add-port=80/tcp --add-port=443/tcp --add-port=5647/tcp --add-port=9090/tcp
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
Katello requires some repositories to be set up before installation process so there are some repositories that here we are setting up for Katello. All you'll have to do is run these following commands one by one and they,ll do the job for you.
yum -y localinstall http://fedorapeople.org/groups/katello/releases/yum/3.2/katello/el7/x86_64/katello-repos-latest.rpm
yum -y localinstall http://yum.theforeman.org/releases/1.13/el7/x86_64/foreman-release.rpm
yum -y localinstall http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
yum -y localinstall http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install foreman-release-scl
Next, you'll have to update your server again because we have just added some repositories, run this command to do so.
yum -y update
Install Katello Package
We have installed all the dependencies required by Katello now you are all set to install katello using yum command like is shown below.
yum -y install katello
Next, you'll need to configure NTP service so that your server can sync time with upstream time server for accurate timing.
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Calcutta /etc/localtime
yum -y install ntp
Next start katello installation using foreman-installer command like shown below.
foreman-installer --scenario katello --foreman-admin-username admin --foreman-admin-password <Specify_Password>
In above command replace
Specify_Password with a strong password and this password will be used to login to foreman dashboard in web access of katello.
When installation will be completed, you'll get an output stating that Installing Success. If in case your server is running behind the proxy server then you'll have to run below given command.
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>
In above command replace Proxy-Server_Name_or_IP with the name of your proxy server or IPaddress of your server and replace specify password with a strong password.
Your installation of Katello 3.2 on your CentOS 7 server is completed now you can access it through web interface. Open up your favorite web browser and browse http://katello.example.com/ or https://YourIPaddress and you'll see a login page.
Please provide login credentials to login to admin dashboard and use admin as username and password that you set up earlier and click on login button.
You'll see a Homepage of Katello foreman like this shown below.
In tutorial we've learned how to install Katello 3.2 on a CentOS 7 server. You've also learned to configure it and now we hope you have enough knowledge to work with Katello.