Install cacti in centos server Hi to all, most of admins know Cacti is an open-source, web-based network monitoring and graphing tool
designed as a front-end application for the open-source,
industry-standard data logging tool RRDtool.
In this Article you will be learning how to install Cacti and installed it on CentOS system.
Step 1 – Prerequisites
First we need to install some of the software packages needed for
Cacti to run properly. Software which is not included or enabled in the
base CentOS installation are:
Let’s use yum to get these installed.
yum -y install mysql-server php php-cli php-mysql net-snmp-utils rrdtool php-snmp gcc mysql-devel net-snmp-devel autoconf automake libtool dos2unix
gcc and the devel packages are required for the installation of spine, hence that’s why we include it here.
Now let’s make sure that our webserver and the database are
automatically starting up after a reboot. Use the following commands to
chkconfig httpd on chkconfig mysqld on chkconfig crond on
Now that we did make sure that these services start after a reboot,
let’s start them manually now in order to continue the installation.
Cron may already be running so don’t panic if you don’t see the usual
/etc/init.d/httpd start /etc/init.d/mysqld start /etc/init.d/crond start
Step 2 – Cacti Files
Let’s now move to the actualy installation of Cacti. First we need to
download and extract it. As of version 0.8.8, a fully patched Cacti
including the Plugin Architecture (PIA) is officially available, so
we’re downloading that one:
cd /var/www/html wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz tar -xzvf cacti-0.8.8a.tar.gz
I usually suggest to create a symbolic link to the newly created
directory “cacti-0.8.8a”. This will make upgrades to never Cacti
ln –s cacti-0.8.8a cacti
Step 3 – Cron and file permissions
Cacti uses cron (scheduled task) in order to execute its polling
process. It’s always a good idea to run this under a special user.
Let’s create the system “cacti” user now:
Having done that, we can now add a new cron entry to your system for a 5 minute polling interval using the following command:
echo "*/5 * * * * cacti php /var/www/html/cacti/poller.php &>/dev/null" >> /etc/cron.d/cacti
Finally, we also need to make sure that the permissions on the log and rra directories are set correctly:
cd /var/www/html/cacti chown -R cacti.apache rra log chmod 775 rra log
Step 4 – Cacti Database
Now that we have extracted the cacti files, we can move on preparing
the database for the final installation step. Your first step should be
securing the mysql database. The following command will help you with
this task on a CentOS system. Make sure to select a strong password for
root, e.g. Rimawi@321
Let’s create a new database and assign a special user to it:
mysqladmin -u root -p create cacti mysql -p cacti < /var/www/html/cacti/cacti.sql mysql -u root -p
With the last command, you should be seing a mysql prompt where you
can enter mysql commands. Here we are going to create the special cacti
user. That user only needs to be able to connect from the local system
and should have a strong password as well. Enter the following commands
and make sure to replace the password:
GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'Rimawi@321'; flush privileges; exit
We now have the cacti files and the cacti database setup. The last
step before moving to the web-based installer is setting the database
credentials within the Cacti config file:
cd /var/www/html/cacti/include/ nano config.php
Change the $database_ lines to fit your new settings:
$database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cactiuser"; $database_password = "Rimawi@321"; $database_port = "3306"; $database_ssl = false;
Step 5 – Running the Web-based installer
Final Step go to the address of the web like: http://192.168.1.5/cacti
move to next next next then enter:
If you have any problem to run this please make the following:
then copy to it the following:
Alias /cacti /var/www/html/cacti/
Options Indexes FollowSymLinks Includes MultiViews
Allow from all
save it and restart the apache.
If you need any help don’t hesitate to contact me.