How To Install Cacti 0.8.7d From Source OpenSUSE 11
What is Cacti ?
Cacti is a complete frontend to RRDTool, it stores all of the necessary information to create graphs and populate them with data in a MySQL database. The frontend is completely PHP driven. Along with being able to maintain Graphs, Data Sources, and Round Robin Archives in a database, cacti handles the data gathering. There is also SNMP support for those used to creating traffic graphs with MRTG.
Preparing Anything
I assume you already have apache + php + mysql running in OpenSUSE11.
If you running other distro, you also can follow up this tutorial since this tutorial made for linux OS.
If you server still don't have apache + php + mysql, please kindly to follow up this tutorial to install it into your server.
1. Download and Install All Packages and Dependencies.
Login into your server with root access
[code]#cd /root
#wget http://superb-west.dl.sourceforge.net/sourceforge/net-snmp/net-snmp-5.4....
#tar -zxvf net-snmp-5.4.2.1.tar.gz
#cd net-snmp-5.4.2.1
#./configure && make && make install
#wget http://ftp.gnu.org/pub/gnu/gettext/gettext-0.17.tar.gz
#tar -zxvf gettext-0.17.tar.gz
#cd gettext-0.17
#./configure && make && make install
#wget http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/intltool-0.40.0.tar.gz
#tar -zxvf intltool-0.40.0.tar.gz
#cd intltool-0.40.0
#./configure && make && make install
#wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
#tar -zxvf pkg-config-0.23.tar.gz
#cd pkg-config-0.23
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/pixman-0.10.0.tar.gz
#tar -zxvf pixman-0.10.0.tar.gz
#cd pixman-0.10.0
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/freetype-2.3.5.tar.gz
#tar -zxvf freetype-2.3.5.tar.gz
#cd freetype-2.3.5
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/fontconfig-2.4.2.tar.gz
#tar -zxvf fontconfig-2.4.2.tar.gz
#cd fontconfig-2.4.2
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/cairo-1.6.4.tar.gz
#tar -zxvf cairo-1.6.4.tar.gz
#cd cairo-1.6.4
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/glib-2.15.4.tar.gz
#tar -zxvf glib-2.15.4.tar.gz
#cd glib-2.15.4
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/pango-1.21.1.tar.bz2
#tar -xjvf pango-1.21.1.tar.bz2
#cd pango-1.21.1
#./configure && make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz
#tar -zxvf libart_lgpl-2.3.17.tar.gz
#cd libart_lgpl-2.3.17
#./configure enable-shared
# make && make install
#wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.30.tar.gz
#tar -zxvf rrdtool-1.2.30.tar.gz
#cd rrdtool-1.2.30
#./configure && make && make install
#wget http://ftp.gnu.org/gnu/m4/m4-latest.tar.gz
#tar -zxvf m4-latest.tar.gz
#cd m4-1.4.13
#./configure && make && make install
#wget http://ftp.gnu.org/gnu/libtool/libtool-2.2.4.tar.gz
#tar -zxvf libtool-2.2.4.tar.gz
#cd libtool-2.2.4
#./configure && make && make install
#wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.gz
#tar -zxvf autoconf-2.63.tar.gz
#cd autoconf-2.63
#./configure && make && make install
#wget http://ftp.gnu.org/gnu/automake/automake-1.10.1.tar.gz
#tar -zxvf automake-1.10.1.tar.gz
#cd automake-1.10.1
#./configure && make && make install[/code]
2. Reconfigure PHP to Support SNMP, Gettext and Sockets
[code]#cd /root/php-5.2.9
#./configure --with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-gd=/usr/local \
--with-jpeg-dir=/usr/local/lib \
--with-zlib-dir=/usr/local \
--enable-ftp \
--with-png-dir=/usr/local/lib \
--with-freetype-dir=/usr/local \
--with-curl=/usr/local \
--enable-sockets \
--with-snmp \
--with-gettext
#make && make install[/code]
2.1 Restart apache.
[code]#/usr/local/apache2/bin/apachectl stop
#/usr/local/apache2/bin/apachectl start[/code]
3. Create cacti DB
[code]#mysql -u root -p
Enter mysql password : xxxx
mysql>create database cacti;
mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'somepassword';
mysql> flush privileges;[/code]
4. Download and Install Cacti
4.1 Create cacti user
[code]#useradd cacti -s /bin/false[/code]
[code]#cd /root
#wget http://www.cacti.net/downloads/cacti-0.8.7d.tar.gz
#tar -zxvf cacti-0.8.7d.tar.gz
#cd cacti-0.8.7d[/code]
4.2 Apply Cacti Patch
There are few patch for cacti-0.8.7d, You can take a look in cacti official page to download any patch.
[code]#cd /root/cacti-0.8.7d
#wget http://www.cacti.net/downloads/patches/0.8.7d/ping_timeout.patch
#wget http://www.cacti.net/downloads/patches/0.8.7d/graph_search.patch
#wget http://www.cacti.net/downloads/patches/0.8.7d/page_length_graph_view.patch
#wget http://www.cacti.net/downloads/patches/0.8.7/snmp_string_issue_with_rrdt...
#patch -p1 -N < ping_timeout.patch
#patch -p1 -N < graph_search.patch
#patch -p1 -N < page_length_graph_view.patch
#patch -p1 -N < snmp_string_issue_with_rrdtool_creation.patch[/code]
4.3 Import Cacti DB
[code]#mysql -u cacti cacti < cacti.sql -p[/code]
4.4 Modify config.php
[code]#cd include
#pico config.php
### Modify few lines below
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "somepassword";[/code]
4.5 Modify RRA and LOG directory permission
[code]#chown -R cacti rra log[/code]
4.6 Move cacti directory to htdocs
[code]#cd /root
#mv cacti-0.8.7d /usr/local/apache2/htdocs/cacti[/code]
5. Access Cacti from Browser
Open Firefox or IE.
Type cacti URL : http://yourdomain.com/cacti/
Input username and password : admin
Change password immediately.
6. Configure Cronjob / Crontab
[code]#crontab -e
*/5 * * * * cacti /usr/local/bin/php /usr/local/apache2/htdocs/cacti/poller.php > /dev/null 2>&1[/code]
7. Setting Cacti Path from Web Based
Open cacti web mozilla firefox / IE
Input user admin and password admin
Click Settings
Click General
### change RRD Tools Version to 1.2.x ####

7.1 Click PATHS Tabular
click Paths tab
Click SAVE to finish.

8. Here is a localhost Graph Result

Recent blog posts |
Recent comments
|
Comments
configure PHP
Hi! Where you need to reconfigure PHP, that path cd /root/PHP does not exist?!?
I installed LAMP using YAST2 anyhelp??
Not sure where the folder is for PHP with ./configure in!
Thanks
if you are using yast2 to
if you are using yast2 to install LAMP, i'm pretty sure your php.ini is stored in /etc/
try to find using ls or find command
ls -al /etc/php.ini or find / -name php.ini
this should help alot :)
Post new comment