Installing
Cacti and Spine from Source
- Required Libraries
/ Tools
- Mysql
- Php
- Snmp
- HTTP
- Miscellaneous libraries associated with above
packages
- Pre-work
Install Apache
# yum install httpd httpd-devel
Install MySQL
# yum install mysql mysql-server
Install PHP
# yum install php-mysql php-pear php-common php-gd php-devel php
php-mbstring php-cli php-mysql
Install PHP-SNMP
# yum install php-snmp
Install NET-SNMP
# yum install net-snmp-utils p net-snmp-libs php-pear-Net-SMTP
Install RRDTool
# yum install rrdtool
# Recompiling PHP with socket support (if not)
./configure --with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/include/mysql --prefix=/usr/local/apache/php
--with-config-file-path=/usr/local/apache/php --enable-force-cgi-redirect
--disable-cgi --with-zlib --with-gettext --with-gdbm -enable-sockets
1. ./Configure /* creates Make Config file
2.make /* Builds using MakeConfig file
3. make install /* Installs Software
Installing PHP SAPI module:
apache2handler
/usr/local/apache/build/instdso.sh
SH_LIBTOOL='/usr/local/apache/build/libtool' libphp5.la
/usr/local/apache/modules
/usr/local/apache/build/libtool --mode=install cp libphp5.la
/usr/local/apache/modules/
cp .libs/libphp5.so /usr/local/apache/modules/libphp5.so
cp .libs/libphp5.lai /usr/local/apache/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish
/admin/scripts/home/tac/php-5.3.1/libs'
chmod 755 /usr/local/apache/modules/libphp5.so
[activating module `php5' in /usr/local/apache/conf/httpd.conf]
Installing PHP CLI binary:
/usr/local/apache/php/bin/
Installing PHP CLI man page:
/usr/local/apache/php/man/man1/
Installing build environment:
/usr/local/apache/php/lib/php/build/
Installing header files:
/usr/local/apache/php/include/php/
Installing helper programs:
/usr/local/apache/php/bin/
program: phpize
program: php-config
Installing man pages:
/usr/local/apache/php/man/man1/
page: phpize.1
page: php-config.1
Installing PEAR environment:
/usr/local/apache/php/lib/php/
[PEAR] Archive_Tar -
already installed: 1.3.3
[PEAR] Console_Getopt - already installed: 1.2.3
[PEAR] Structures_Graph- already installed: 1.0.2
[PEAR] XML_Util -
already installed: 1.2.1
[PEAR] PEAR -
already installed: 1.9.0
Wrote PEAR system config file at:
/usr/local/apache/php/etc/pear.conf
You may want to add: /usr/local/apache/php/lib/php to your
php.ini include_path
/admin/scripts/home/tac/php-5.3.1/build/shtool install -c
ext/phar/phar.phar /usr/local/apache/php/bin
ln -s -f /usr/local/apache/php/bin/phar.phar
/usr/local/apache/php/bin/phar
Installing PDO headers:
/usr/local/apache/php/include/php/ext/pdo/
4. copy the .ini file to
/etc/php.ini
Stop and
start the httpd
You will have --enable socket support - enabled
*write a small PHP
program <?php phpinfo(); ?> in mysystem.php /*shows system variables of php
*browse http://hostname/mysystem.php
- Cacti Installation
0. Create username cacti in OS/MySQL ; Create database cacti;
#mysqladmin
-u root -p create cacti
1. wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz
2. tar -xvzf cacti-0.8.8b.tar.gz
mysql -p cacti <
/usr/local/apache/htdocs/ips/cacti/cacti.sql
mysql>
GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'password';
Query
OK, 0 rows affected (0.00 sec)
mysql>
flush privileges;
Query
OK, 0 rows affected (0.00 sec)
mysql>
exit
3. vim include/config.php
/*
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
= "password";
$database_port
= "3306";
$database_ssl
= false;
/*
Edit this to point to the
default URL of your Cacti install
ex: if your cacti install as
at http://serverip/cacti/ this
would be set to /cacti/
*/
$url_path
= "/cacti/";
4. Installing Spine Poller
wget
http://www.cacti.net/downloads/spine/cacti-spine-0.8.7c.tar.gz
./configure
5. Settings Poller in crontab
vim
/var/spool/cron/cacti
#min
hour dayofmonth monthofyear dayofweek0-sunday commands
* *
* * *
/usr/bin/php /usr/local/apache/htdocs/ips/cacti/poller.php
6. Use Spine Poller that higher degree of Efficieny that polls every one
minute - use GUI.
-----------------------------------*-------------------------------------------------*------------------------------------------------
Installing the core Plugin Architecture
mysql
-u cacti < cacti-plugin-arch/pa.sql
1. curl
http://docs.cacti.net/_media/plugin:thold-v0.5.0.tgz >threshold.tgz
(Threshold Management)
curl
http://docs.cacti.net/_media/plugin:settings-v0.71-1.tgz >settings.tgz
(Mailer API)
tar
-xvzf threshold.tgz
tar
-xvzf settings.tgz
2. Use GUI Plugin Settings to Install
3. Creating Crontab for spine Poller
vim
/var/spool/cron/cacti
#min
hour dayofmonth monthofyear dayofweek0-sunday commands
* *
* * *
/usr/bin/php /usr/local/apache/htdocs/ips/cacti/poller.php
- Use Spine Poller for higher performance through GUI interface
- chown -R cacti.apache rra log / Changing ownership of these directories
recursively for
drwxr-xr-x 2 cacti
users 4.0K 2012-04-03 20:49 log
drwxr-xr-x 2 cacti
users 4.0K 2014-06-05 16:48 rra