Cacti: How to install on Centos 5.x server Rumi, September 11, 2011September 11, 2011 Required software(s) You need to install the following software on RHEL / Fedora / CentOS Linux: MySQL Server : Store cacti data. NET-SNMP server – SNMP (Simple Network Management Protocol) is a protocol used for network management. PHP with net-snmp module – Access SNMP data using PHP. Apache / lighttpd / ngnix webserver : Web server to display graphs created with PHP and RRDTOOL. Install the software First, login as root user and type the following command to install mysql, apache and php: # yum install mysql-server mysql php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-snmp php-pear-Net-SMTP php-mysql httpd Configure MySQL server First, set root password: # mysqladmin -u root password NEWPASSWORD Create cacti MySQL database Create a database called cacti, enter: # mysql -u root -p -e 'create database cacti' Create a user called cacti with a password called zYn95ph43zYtq, enter: # mysql -u root -p mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'zYn95ph43zYtq'; mysql> FLUSH privileges; mysql> \q Install snmpd Type the following command to install net-snmpd # yum install net-snmp-utils php-snmp net-snmp-libs Configure snmpd, open /etc/snmp/snmpd.conf # vi /etc/snmp/snmpd.conf rocommunity public # /etc/init.d/snmpd start # chkconfig snmpd on Make sure you are getting information from snmpd: # snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex Sample ouptut: IP-MIB::ipAdEntIfIndex.10.10.29.68 = INTEGER: 2 IP-MIB::ipAdEntIfIndex.67.yy.zz.eee = INTEGER: 3 IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1 Install cacti First, DAG repo is created. #nano /etc/yum.repos.d/DAG.rep [dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=0 enabled=1 protect=0 Type the following command to install cacti: # yum install cacti Install cacti tables Type the following command to find out cacti.sql path: # rpm -ql cacti | grep cacti.sql Sample output: /usr/share/doc/cacti-0.8.7d/cacti.sql Type the following command to install cacti tables (you need to type the cacti user password): # mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.7d/cacti.sql Configure cacti Open /etc/cacti/db.php file, enter: # vi /etc/cacti/db.php Make changes as follows: /* make sure these values refect your actual database/host/user/password */ $database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cacti"; $database_password = "zYn95ph43zYtq"; $database_port = "3306"; Save and close the file. Configure httpd Open /etc/httpd/conf.d/cacti.conf file, enter: # vi /etc/httpd/conf.d/cacti.conf You need to update allow from line. Either set to ALL or your LAN subnet to allow access to cacti: # # Cacti: An rrd based graphing tool # Alias /cacti /usr/share/cacti <Directory /usr/share/cacti/> Order Deny,Allow Deny from all Allow from 10.0.0.0/8 </Directory> Another option is create /usr/share/cacti/.htaccess file and password protect the directory. Finally, restart httpd: # service httpd restart Setup cacti cronjob Open /etc/cron.d/cacti file, enter: # vi /etc/cron.d/cacti Uncomment the line: */5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1 Save and close the file. Run cacti installer Now cacti is ready to install. Fire a webbrowser and type the url: http://your.example.com/cacti/ OR http://your.server.ip.address/cacti/ Just follow on screen instructions. The default username and password for cacti is admin / admin. Upon first login, you will be force to change the default password. How do I configure SNMP data collection? SNMP can be used to monitor server traffic. Once installed login to cacti. => Click on Devices => Select Localhost => Make sure SNMP options are selected as follows: Finally, click on Save button. Administrations Configurations (Linux) CactiCentOS