http://hi.baidu.com/naruto6006/item/46306f34701d39c52f8ec2d5 
Workspace13 Cacti监控的安装与配置 
 
  Cacti是一个非常好的网络监控工具,利用php语言实现其功能,Cacti通过 snmpget来获取数据,使用  RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好,下面来简要的介绍下cacti的安装和配置,cacti的安装需要lamp环境,php需要有一大堆的扩展,关于lamp这部分的内容,请参考:http://hi.baidu.com/naruto6006/blog/item/2309403f5378a33670cf6cf8.html 
  一:编译安装rrdtool 
[root@server5 ~]# cd /usr/local/src/tarbag/ 
[root@server5  tarbag]# wget http://www.cacti.net/downloads/cacti-0.8.7g.tar.gz 
[root@server5  tarbag]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.4.tar.gz 
[root@server5  tarbag]# tar -zxvf rrdtool-1.4.4.tar.gz -C ../software/ 
[root@server5  tarbag]# tar -zxvf cacti-0.8.7g.tar.gz -C ../software/ 
[root@server5 tarbag]#  cd ../software/rrdtool-1.4.4/ 
[root@server5 rrdtool-1.4.4]# ./configure  --prefix=/usr/local/rrdtool 
[root@server5 rrdtool-1.4.4]# make &&  make install 
[root@server5 rrdtool-1.4.4]# ls /usr/local/rrdtool/ 
bin  include lib share 
  二:配置Apache和cacti数据库连接;添加cacti用户,配置任务计划;(这里为了省事,直接使用了mysql的root账号,生产环境中需要制定一个低权限的账号) 
[root@server5  rrdtool-1.4.4]# cp -rvp ../cacti-0.8.7g/ /www/cacti 
[root@server5 ~]# grep -i  '$database_' /www/cacti/include/config.php  
$database_type =  "mysql"; 
$database_default = "cacti"; 
$database_hostname =  "192.168.50.3"; 
$database_username = "root"; 
$database_password =  "123456"; 
$database_port = "3306"; 
  [root@server5 ~]# grep -i '$url_path' /www/cacti/include/config.php   
$url_path = "/cacti/"; 
  在有些时候,cacti会出现不出图像的情况,这个一般是权限上的问题,因而这里设置成777,在生产环境中权限的设定要慎重 
[root@server5  ~]# useradd -d /www/cacti cacti    
[root@server5 ~]# cp -rvp /etc/skel/.*  /www/cacti 
[root@server5 ~]# echo "*/2 * * * * /usr/local/php5.2.13/bin/php  /www/cacti/poller.php > /dev/null 2>&1" >  /var/spool/cron/root 
[root@server5 ~]# chmod -R 777 /www/cacti/ 
  [root@server5 ~]# grep -v '^#'  /usr/local/apache2.2.15/conf/extra/httpd-vhosts.conf |grep -v  '^$' 
NameVirtualHost *:80 
 
    DocumentRoot  "/www" 
    ServerName   192.168.122.50  
     
      Order allow,deny 
     Allow from all 
      
 
  [root@server5 ~]# /sbin/apachectl -t 
Syntax OK 
[root@server5 ~]#  /sbin/apachectl -k start 
  三:配置并启动服务器端snmp,测试  (在生产环境中,snmp协议一般只开在内网网卡,同时不能使用默认的共同体名称public) 
[root@server5 ~]# grep -i  'public' /etc/snmp/snmpd.conf |grep -v '^#' |grep -i 'notconfiguser' 
com2sec  notConfigUser 192.168.122.50   public 
com2sec notConfigUser 127.0.0.1         public 
  [root@server5 ~]# grep 'view all' /etc/snmp/snmpd.conf  
view all     included .1                               80 
  [root@server5 ~]# service snmpd start 
启动 snmpd: 
[root@server5 ~]#  chkconfig snmpd on 
[root@server5 ~]# snmpwalk -v 2c 127.0.0.1 -c public 
   
四:在数据库服务器上导入cacti数据库文件 
[root@server5 ~]# cd  /www/cacti 
[root@server5 www]# scp cacti.sql 
  [root@yunwei ~]# mysql 
Welcome to the MySQL monitor. Commands end with ;  or \g. 
Your MySQL connection id is 1 
Server version: 5.1.36-log Source  distribution 
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 
  mysql> create database cacti; 
Query OK, 1 row affected (0.00 sec) 
  mysql> use cacti 
Database changed 
mysql> source  /tmp/cacti.sql; 
  mysql> select * from cacti.version; 
+-------------+ 
| cacti        | 
+-------------+ 
| new_install |  
+-------------+ 
1 row in set  (0.00 sec) 
  五:开始安装,在浏览器中输入http://ip/cacti  跟着提示进行安装;默认管理员用户名和密码都是admin,首次登录强制要求修改管理员用户密码 
 
 
 
六:PA的安装,PA是cacti的插件管理工具,其他插件需要PA的支持才可以安装 
[root@server5 ~]#  cd /usr/local/src/tarbag/ 
[root@server5 tarbag]#wget http://mirror.cactiusers.org/downloads/plugins/cacti-plugin-0.8.7g-PA-v2.8.tar.gz 
[root@server5  tarbag]# tar -zxvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz 
[root@server5 tarbag]#  cp cacti-plugin-arch/cacti-plugin-0.8.7g-PA-v2.8.diff  /www/cacti/ 
[root@server5 tarbag]# cd /www/cacti/ 
[root@server5 cacti]#  patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff     //打补丁前最好先备份下 
[root@server5 cacti]# echo $? 
0   
  [root@server5 cacti]# cd /usr/local/src/tarbag/ 
[root@server5 tarbag]# scp  cacti-plugin-arch/pa.sql 
  [root@yunwei ~]# mysql 
Welcome to the MySQL monitor. Commands end with ;  or \g. 
Your MySQL connection id is 411 
Server version: 5.1.36-log Source  distribution 
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 
  mysql> use cacti; 
Database changed 
mysql> source  /tmp/pa.sql; 
Query OK, 0 rows affected, 1 warning (0.00 sec) 
  Query OK, 0 rows affected, 1 warning (0.00 sec) 
  Query OK, 0 rows affected, 1 warning (0.00 sec) 
  Query OK, 0 rows affected, 1 warning (0.01 sec) 
  Query OK, 1 row affected (0.00 sec) 
  Query OK, 1 row affected (0.00 sec) 
  Query OK, 1 row affected (0.00 sec) 
 
  七:安装monitor、settings、thold插件 
monitor:  通过简单明了的图标提供服务器的运行状态      
settings:给不同的插件提供一些共用的信息,如邮件信息,dns信息。 
thold:    提供设备异常预警 
  [root@server5 ~]# cd /usr/local/src/tarbag/ 
[root@server5 tarbag]# wget http://cactiusers.org/downloads/settings.tar.gz 
[root@server5  tarbag]# wget http://cactiusers.org/downloads/monitor.tar.gz 
[root@server5  tarbag]# wget http://cactiusers.org/downloads/thold.tar.gz 
[root@server5  tarbag]# tar -zxvf settings-0.5.tar.gz -C /www/cacti/plugins 
[root@server5  tarbag]# tar -zxvf monitor-0.8.2.tar.gz -C /www/cacti/plugins 
[root@server5  tarbag]# tar -zxvf thold-0.4.2.tar.gz -C /www/cacti/plugins 
  [root@server5 ~]# grep '$plugins' /www/cacti/include/config.php 
$plugins[]  = 'thold'; 
$plugins[] = 'monitor'; 
$plugins[] = 'settings'; 
$plugins =  array(); 
 
 
 
 
  感谢网友陆军的分享,更多的cacti信息和使用请参考cacti官方网站:http://www.cacti.net/ 
 
 
 
 
 |