一、搭建lamp架构

1、yum方式如下:

yum groupinstall “Web Server”

yum groupinstall “Mysql Database”
 
yum –y install php-mysql
2 、编译方式略:(注意在编译PHP时候要加上 --enable-sockets 这个参数)
二、安装 net-snmp、snmpwalk 和 snmpget 命令
rpm -qa | grep net-snmp ( 查看系统中有否已经装有所需的软件 )
 
yum net-snmp* install 安装上述软件
修改配置文件 snmpd.conf 保留以下部分即可!
com2sec notConfigUser  10.10.10.80    cheng              ##团体名可以自定义
group   notConfigGroup v1           notConfigUser
group   notConfigGroup v2c           notConfigUser
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
access  notConfigGroup ""      any       noauth    exact  all none none
view all    included  .1                               80
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat
# Allow Systems Management Data Engine SNMP to connect to snmpd using SMUX
smuxpeer .1.3.6.1.4.1.674.10892.1
service snmpd start
chkconfig --add snmpd
chkconfig snmpd on
最后运行netstat -ln查看161端口是否打开了.或者lsof –i:80
三、安装配置cacti
tar zxvf cacti-0.8.7g.tar.gz
mv  cacti-0.8.7g cacti #修改名字
mv cacti /data/www/    #移到相应的网站根目录下
修改权限: chown –R cacti:cacti /data/www/cacti  #安装过程有时候要注意权限的问题,在 apache 上设置好 cacti 所在 web 目录。
然后编辑 cacti 的数据库配置文件。
vi /data/www/cacti/include/config.php

$database_type= “ mysql ” ; #数据库类型
$database_default ="cacti";   #数据库名称
$database_hostname = "localhost";      #默认是 localhost
$database_username = "cactiuser";     #数据库用户名
$database_password = "cactiuser";  #密码
 
更改用户、密码等项与上面给出的对应保存退出
useadd cacti
# crontab – e (加入自动执为cacti用户添加cron任务
su – cacti

*/5 * * * *  /data/php/bin/php  /data/www/cacti/poller.php > /dev/null 2>&1
(其中 /data/php/bin/php 这个为 php 的安装目录)
之后 wq保存退出
四、配置数据库环境:
对应做一些数据库的操作:
进入数据库: mysql #我还没有设置密码
mysql> GRANT ALL ON cacti.* TO cactiuser@localhostIDENTIFIED BY 'cactiuser';
mysql> flush privileges; ( # 刷新权限)
mysql> CREATE DATABASE cacti;
mysql>exit (退出数据库 )
cd /data/www/cacti/
mysql -u cactiuser -p cacti < cacti.sql
或者( mysql -u root -p cacti < cacti.sql )
(在 Mysql中创建一个新的库,并导入cacti 目录中cacti.sql 并设置好该表的用户权限)
五、rrdtool安装,(我弄了个脚本一键安装。)脚本如下:
rrdtool_install.sh
#!/bin/sh
export BUILD_DIR=/tmp/rrd
export INSTALL_DIR=/usr/local/rrdtool
mkdir -p $BUILD_DIR
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz
  gunzip -c rrdtool-1.4.5.tar.gz | tar xf -
  cd rrdtool-1.4.5
  ./configure --prefix=$INSTALL_DIR && make && make install
export LDFLAGS="-Wl,--rpath -Wl,${INSTALL_DIR}/lib"
export MAKE=make
export PKG_CONFIG_PATH=${INSTALL_DIR}/lib/pkgconfig
export PATH=$INSTALL_DIR/bin:$PATH
export PKG_CONFIG=$INSTALL_DIR/bin/pkg-config
##########################################################################
cd $BUILD_DIR
wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
gunzip -c pkg-config-0.23.tar.gz | tar xf -
   cd pkg-config-0.23
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
export PKG_CONFIG=$INSTALL_DIR/bin/pkg-config
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/zlib-1.2.3.tar.gz
gunzip -c zlib-1.2.3.tar.gz | tar xf -
   cd zlib-1.2.3
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC" --shared
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/libpng-1.2.18.tar.gz
gunzip -c libpng-1.2.18.tar.gz | tar xf -
   cd libpng-1.2.18
   env CFLAGS="-O3 -fPIC" ./configure --prefix=$INSTALL_DIR
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/freetype-2.3.5.tar.gz
gunzip -c freetype-2.3.5.tar.gz | tar xf -
   cd freetype-2.3.5
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/libxml2-2.6.32.tar.gz
gunzip -c libxml2-2.6.32.tar.gz | tar xf -
   cd libxml2-2.6.32
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/fontconfig-2.4.2.tar.gz
gunzip -c fontconfig-2.4.2.tar.gz   | tar xf -
   cd fontconfig-2.4.2
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC" --with-freetype-config=$INSTALL_DIR/bin/freetype-config
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/pixman-0.10.0.tar.gz
gunzip -c pixman-0.10.0.tar.gz  | tar xf -
   cd pixman-0.10.0
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/cairo-1.6.4.tar.gz
   gunzip -c cairo-1.6.4.tar.gz  | tar xf -
   cd cairo-1.6.4
   ./configure --prefix=$INSTALL_DIR --enable-xlib=no --enable-xlib-render=no -enable-win32=no CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/glib-2.15.4.tar.gz
gunzip -c glib-2.15.4.tar.gz  | tar xf -
   cd glib-2.15.4
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
   $MAKE
   $MAKE install
cd $BUILD_DIR
wget http://oss.oetiker.ch/rrdtool/pub/libs/pango-1.21.1.tar.bz2
   bunzip2 -c pango-1.21.1.tar.bz2 | tar xf -
   cd pango-1.21.1
   ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC" --without-x
   $MAKE
   $MAKE install
####Building rrdtool (second try)
cd $BUILD_DIR/rrdtool-1.4.5
  ./configure --prefix=$INSTALL_DIR --disable-tcl --disable-python
  $MAKE clean
  $MAKE
  $MAKE install
###########################至此安装 rrdtool安装完毕,安装时候可采用我的########
六、安装cacti-spine
tar -xzvf cacti-spine-0.8.7g.tar.gz
cd cacti-spine-0.8.7g
./configure --prefix=/usr/local/spine --with-mysql=/data/mysql
make && make install
修改: spine.conf
vim /usr/local/spine/etc/spine.conf
DB_Host         localhost       #允许本机
DB_Database     cacti           #所连接的库
DB_User         cactiuser       #数据库用户
DB_Pass         cactiuser       #数据库密码
DB_Port         3306            #连接数据库端口
七、登陆配置
进入 cacti 的初始设置页面
第一次默认登陆账号:admin 密码 admin
登陆后它就会让你立即修改新密码
在左边栏点击 settings 如图:
在右边有一排菜单栏,选择 Paths 如下图:
添入如下信息:
snmpwalk Binary Path :       /usr/bin/snmpwalk
snmpget Binary Path:         /usr/bin/snmpget
snmpbulkwalk Binary Path:    /usr/bin/snmpbulkwalk
snmpgetnext Binary Path:     /usr/bin/snmpgetnext
RRDTool Binary Path:         /usr/local/rrdtool/bin/rrdtool
RRDTool Default Font Path :    不用写
PHP Binary Path:  /usr/bin/php
Cacti Log File Path:  /data/www/cacti/log/cacti.log
Spine Poller File Path   /usr/local/spine/bin/spine
手动运行一次
/data/php/bin/php /data/www/cacti/poller.php (/data/php 为PHP安装路径)
勾选最后一项
切换到 poller项做以下调整:
 
在切换到Gerneral项:
配置结束!
八、以下为插件扩展安装
默认的 cacti不方便安装插件,如果要安装插件,需要打一个补丁。对于0.8.7g版本的cacti,应该从cactiusers.org网站上下载并打上这个补丁:
cacti-plugin-0.8.7g-PA-v2.8.diff
tar -zxvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz
cd cacti-plugin-arch/
cp cacti-plugin-0.8.7g-PA-v2.8.diff /data/www/cacti/
cp pa.sql /data/www/cacti/
cd /data/www/cacti
patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff (这个必须是在 cacti目录下执行)
mysql –uroot –p cacti < pa.sql
打好补丁后,再用 cactiuser用户登录mysql,使用cacti数据库,导入补丁包中自带的pa.sql文件。
vi include/global.php
/* Default database settings*/
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
经过以上操作, cacti-0.8.7g就具有安装插件的功能了。
九、插件安装
在安装其它插件之前,应该首先安装settings插件,这个插件给cacti增加了发email等功能。
如果不首先安装这个插件在安装完thold!会出现:You are missing a dependency for thold, please install the 'Settings将“settings"插件install-Enable后就可以了。' plugin.
安装具体的插件很简单:
mkdir  -p /data/www/cacti/plugins
#赋予权限 chown -R  cacti:cacti /data/www/cacti/plugins
解压各个插件,转移到 cacti的plugins文件夹中,然后登陆cacti网站:
1、 tar -xzvf settings-v0.7-1.tgz
mv settings /data/www/cacti/plugins/settings
2、 tar -xzvf thold-latest.tgz
mv thold-0.41 /data/www/cacti/plugins/thold
cd /data/www/cacti/plugins/thold
mysql -uroot -p cacti < thold.sql
3、 tar -xzvf monitor-v1.2-1.tgz
mv monitor /data/www/monitor
cd /data/www/cacti/plugins/monitor
mysql -uroot -p cacti < monitor.sql
4、 tar -xzvf syslog-v1.05-1.tgz
mv syslog /data/www/cacti/plugins
 
mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9403 to server version: 5.1.50-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database syslog;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on syslog.* to cactiuser@localhost identified by 'cactiuser';
Query OK, 0 rows affected (0.00 sec)
mysql -uroot syslog < /data/www/cacti/plugins/syslog/syslog.sql
5、 tar -xzvf discovery-v1.1-1.tgz
mv discovery /data/www/cacti/plugins
6、 rpm -ivh syslog-ng-3.0.4-1.rhel5.i386.rpm
warning: syslog-ng-3.0.4-1.rhel5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 2aa28252
Preparing...                 ########################################### [100%]
Shutting down kernel logger: [ OK ]
Shutting down system logger: [ OK ]
   1:syslog-ng              ########################################### [100%]
Starting syslog-ng: OK
 
User Managerment->admin,勾选 Plugin Managerment项
 
Configuration->Plugin Managerment, Install and Avtive所有插件
这样,所有插件都安装并激活了 ,插件被安装好后就可以在Configuration->Settings进行配置了,可以填上邮件服务器的地址等信息,设置throld报警参数等。
到 plugin management下开启相关插件服务
 
 
参考网址:
http://blog.myspace.cn/e/407673318.htm
http://tqhlyz.blog.51cto.com/1093844/428216

本文出自 “技术成就梦想” 博客,请务必保留此出处http://52199999.blog.51cto.com/740826/486647