1、安装apache
tar xvf httpd-2.2.15.tar.tar
cd httpd-2.2.15
makedir /usr/local/apache2
./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most --with-mpm=worker --enable-disk-cache --enable-mem-cache
make
make install
2、安装mysql
安装mysql
rpm -ivh MySQL-client-community-5.1.49-1.rhel5.i386.rpm
rpm -ivh MySQL-devel-community-5.1.49-1.rhel5.i386.rpm
rpm -ivh MySQL-server-community-5.1.49-1.rhel5.i386.rpm
service mysql stop
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
service mysql start
3、安装php(php不能用5.3及以上的版本,因为废除了以前很多函数。导致cacti的程序不兼容)
3.1、安装jpegsrc.v6b.tar.gz
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir /usr/local/jpeg6/man
mkdir /usr/local/jpeg6/man/man1
gunzip jpegsrc.v6b.tar.gz
tar xvf jpegsrc.v6b.tar
cd jpeg-6b/
./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static
make
make install
3.2、安装libpng-1.4.3.tar.gz
gunzip libpng-1.4.3.tar.gz
tar xvf libpng-1.4.3.tar
cd libpng-1.4.3
./configure --prefix=/usr/local/libpng
make
make install
3.3、安装freetype-2.4.1.tar.gz
gunzip freetype-2.4.1.tar.gz
tar xvf freetype-2.4.1.tar
cd freetype-2.4.1
./configure --prefix=/usr/local/freetype
make
make install
3.4、安装zlib-1.2.5.tar.gz
gunzip zlib-1.2.5.tar.gz
tar xvf zlib-1.2.5.tar
cd zlib-1.2.5
./configure --prefix=/usr/local/zlib
make
make install
3.5、安装gd库
前提是要安装 gettext
gunzip gettext-0.18.1.1.tar.gz
tar xvf gettext-0.18.1.1.tar
cd gettext-0.18.1.1
./configure --prefix=/usr/local/gettext
make
make install
最好装gettext-devel以便能找到对应的库文件,否则会报错
gunzip gd-2.0.35.tar.gz
tar xvf gd-2.0.35.tar
cd gd-2.0.35
./configure --prefix=/usr/local/gd2 --with-jpeg-dir=/usr/local/jpeg6 --with-png=/usr/local/libpng --with-zlib-dir=/usr/local/zilb --with-freetype=/usr/local/freetype --enable-m4_pattern_allow
make
make install
3.6、安装libxml2-2.7.7.tar.gz
gunzip libxml2-2.7.7.tar.gz
tar xvf libxml2-2.7.7.tar
cd libxml2-2.7.7
./configure --prefix=/usr/local/libxml2
make
make install
3.7、安装libxslt-1.1.22.tar.gz
gunzip libxslt-1.1.22.tar.gz
tar xvf libxslt-1.1.22.tar
cd libxslt-1.1.22
./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
make
make install
3.8、安装php5
gunzip php-5.2.14.tar.gz
tar xvf php-5.2.14.tar
cd php-5.2.14
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-gd=/usr/local/gd2 --with-ttf --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg6 --with-png-dir=/usr/local/libpng --with-zlib-dir=/usr/local/zlib --with-iconv --enable-xml --enable-mbstring --enable-sockets --enable-gd-native-ttf --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php5/etc
make
make install
cp php.ini-development /usr/local/php5/etc/php.ini
vi /usr/local/php5/etc/php.ini将register_globals = Off改成register_globals = On
;date.timezone = 改为date.timezone = utc
;extension=php_mbstring.dll 改为 extension=php_mbstring.dll
;mbstring.func_overload = 0修改为:mbstring.func_overload = 7
配置apache
最后修改httpd.conf,使apache能使用php,增加如下参数
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddType image/x-icon .ico
DirectoryIndex index.php index.html index.html.var
4、安装rrd
4.1、安装cgilib
gunzip cgilib-0.5.tar.gz
tar xvf cgilib-0.5.tar
cd cgilib-0.5
make CC=gcc CFLAGS="-O3 -fPIC -I."
mkdir -p /usr/local/cgilib/include
cp *.h /usr/local/cgilib/include/
mkdir -p /usr/local/cgilib/lib
cp libcgi* /usr/local/cgilib/lib/
4.2、安装libart_lgpl-2.3.21.tar.gz
gunzip libart_lgpl-2.3.21.tar.gz
tar xvf libart_lgpl-2.3.21.tar
cd libart_lgpl-2.3.21
./configure --disable-shared --prefix=/usr/local/libart_lgpl
make
make install
编辑/etc/ld.so.conf,增加如下参数
/usr/local/zlib/lib
/usr/local/freetype/lib
/usr/local/jpeg6/lib
/usr/local/cgilib/lib
/usr/local/libart_lgpl/lib
配置完后执行ldconfig命令,使用动态装入器装载到共享库
4.3、安装rrdtool(最好用1.3,目前cacti能支持的最高只到1.3)
gunzip rrdtool-1.4.4.tar.gz
tar xvf rrdtool-1.4.4.tar
cd rrdtool-1.4.4
./configure --prefix=/usr/local/rrdtool --disable-python --disable-tcl
make
make install
5、安装net-snmp
gunzip net-snmp-5.5.tar.gz
tar xvf net-snmp-5.5.tar
cd net-snmp-5.5
./configure --prefix=/usr/local/net-snmp --enable-developer
make
make install
ln -s /usr/local/net-snmp/bin3 * * * * /usr/local/php5/bin/php /usr/local/apache2/htdocs/poller.php
7、安装cacti-spine-0.8.7e.tar
tar xvf cacti-spine-0.8.7e.tar
cd cacti-spine-0.8.7e
./configure --prefix=/usr/local/spine --with-mysql --with-snmp=/usr/local/net-snmp
make
make install
查看/usr/local/spine/etc/spine.conf的配置是否正确
这样就可以在Threshold Templates里面添加监控硬盘的模块了,我添加的是Host MIB - Hard Drive Space ,最后在Threshold CDEF里面选择刚自定义的cdef,这样就可以正常监控硬盘使用率了。
官方论坛上有介绍,地址http://forums.cacti.net/about8777-0-asc-0.html
下面把使用方法摘录如下:
1. Copy net-snmp_devio.xml to /resource/snmp_queries/net-snmp_devio.xml
2. Import all *_templ.xml via Cacti "Import Templates" interface - These templates should include all their dependancies
3. Add "ucd/net - Get Device I/O" Data Query to your SNMP Enabled host using the "Index Count Changed" Re-index Method.
4. Create Graphs for your desired Disk and/or Memory devices.
总体注意事项:
1)、很重要的一点:在cacti的设备中一定要选择snmp的版本为>=2,否则会获取不到cpu和网卡等相关信息。
2)、cacti自带的local视图内存监控单位是错误的,可以删掉重新创建,就会改正。
3)、系统监控中,cpu图标的 200m这类数字,表示的是 万分之多少,我的理解cacti是为了方便显示画图。
4)、权限问题:cacti_path/rra log目录的权限一定要给cacti的新用户,否则会出错:有图,但是没有数据。