FreeBSD下安装Cacti教程

系统 Linux
Cacti是一套开源的网络监控工具,基于Rrdtool的良好绘图功能,可以完美的监控主机的状态和负载情况,添加相应的模板后,可以用来监控Apache服务器和Mysql服务器的运行状态。本文讲述的是FreeBSD下安装Cacti教程。

Cacti是一套开源的网络监控工具,基于Rrdtool的良好绘图功能,可以完美的监控主机的状态和负载情况,添加相应的模板后,可以用来监控Apache服务器和Mysql服务器的运行状态。本文讲述的是FreeBSD下安装Cacti教程。

FreeBSD下安装cacti教程

以下配置环境为:FreeBSD8.1 Nginx0.8.54 PHP5.2.15 Mysql5.1.54-log

一.首先配置php网站环境

一般采用的lamp(linux,apache,php,mysql),我们这里用的是FreeBSD的系统,web用的是Nginx,平台搭建教程请参考:http://blog.haohtml.com/index.php/archives/1133

二.安装sockets扩展

注意要选择sockets的扩展版本与您所使用的php版本一致,这里我使用的为php5.2.15版本,所以选择了php52-sockets.

  1. #cd /usr/ports/net/php52-sockets  
  2.  
  3. #make install clean  
  4.  

上面的命令会产生一个sockets.so的扩展,系统会自动将一行

  1. extension=sockets.so  
  2.  

信息添加到/usr/local/etc/php/extensions.ini 文件末尾.

如果您确认已经安装过pdo_mysql这个扩展的话,这步可以跳过.

  1. #cd /usr/ports/databases/php5-pdo_mysql  
  2.  
  3. #make install clean  
  4.  

#p#

三、安装rrdtool12

  1. #cd /usr/ports/databases/rrdtool12  
  2.  
  3. #make install clean  
  4.  
  5. #cd /usr/ports/databases/php5-rrdtool  
  6.  
  7. #make install clean  
  8.  

执行上面php5-rrdtool后,会产生一个rrdtool.so扩展,自动添加一行

  1. extension=rrdtool.so  
  2.  

到 /usr/local/etc/php/extensions.ini 文件末尾.

四、安装net-snmp

  1. #cd /usr/ports/net-mgmt/net-snmp/  
  2.  
  3. #make install clean  
  4.  

配置

  1. #cd /usr/local/share/snmp  
  2.  
  3. #cp snmpd.conf.example snmpd.conf  
  4.  

编辑snmpd.conf,在文本最后添加 rocommunity public 一行

或者手动通过命令加入也可以

  1. # echo 'rocommunity public' >> /usr/local/share/snmp/snmpd.conf  
  2.  

启动snmpd服务:

  1. #echo 'snmpd_enable="YES">> /etc/rc.conf  
  2.  
  3. # /usr/local/etc/rc.d/snmpd start  
  4.  

通过端号查看服务是否已经安装

  1. # netstat -na | grep "LISTEN"  
  2.  
  3. # sockstat  
  4.  
  5. //199 161 port  
  6.  

可以用动输入以下命令用来查看snmpd服务是否正常

  1. # snmpwalk -v 1 -c public 127.0.0.1 system  
  2.  

#p#

五、编辑开机启动项

  1. vi /etc/rc.conf  
  2.  

在内容尾添加以下几行

  1. snmpd_flags="-a" 
  2.  
  3. snmpd_pidfile="/var/run/snmpd.pid" 
  4.  
  5. snmptrapd_enable="YES" 
  6.  
  7. snmptrapd_flags="-a -p /var/run/snmptrapd.pid" 
  8.  

上面snmpd和snmptrapd两点好像一种是标准写法,一种是缩写方法的。

六、安装cacti

  1. # cd /data/cacti.mytest.com  
  2.  
  3. # fetch http://www.cacti.net/downloads/cacti-0.8.7c.tar.gz  
  4.  
  5. # tar -zxvf cacti-0.8.7c.tar.gz  
  6.  
  7. # cd cacti-0.8.7c  
  8.  

配置cacti

 

  1.  vi ./include/config.php  
  2.  
  3. $database_hostname = "localhost";  
  4.  
  5. $database_username = "cacti"; */mysql中cacti的用户名/*  
  6.  
  7. $database_password = "cacti"; */mysql中cacti用户的密码/*  
  8.  
  9. $database_port = "3389"; */mysql监控端口/*  
  10.  
  11. vi ./include/global.php  
  12.  
  13. $database_hostname = "localhost";  
  14.  
  15. $database_username = "cacti"; */mysql中cacti的用户名/*  
  16.  
  17. $database_password = "cacti"; */mysql中cacti用户的密码/*  
  18.  
  19. $database_port = "3389";  
  20.  

在mysql中配置cacti数据库及cacti用户信息

  1. #mysql -u root -p  
  2.  
  3. mysql>create database cacti default character set utf8;  
  4.  
  5. mysql> use cacti;  
  6.  
  7. mysql> source /data/cacti.mytest.com/cacti-0.8.7c/cacti.sql;  
  8.  
  9. mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'cacti';  
  10.  
  11. mysql> flush privileges  

;

现在我们在nginx里创建一个虚拟主机来访问cacti,我们在nginx.conf 配置文件里添加以下配置块:

  1. server {  
  2.  
  3. listen 80;  
  4.  
  5. server_name cacti.mytest.com;  
  6.  
  7. root /data/cacti.mytest.com/cacti-0.8.7c;  
  8.  
  9. location / {  
  10.  
  11. index index.html index.htm index.php;  
  12.  
  13. }  
  14.  
  15. error_page 500 502 503 504 /50x.html;  
  16.  
  17. location = /50x.html {  
  18.  
  19. root /usr/local/www/nginx-dist;  
  20.  
  21. }  
  22.  
  23. # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
  24.  
  25. #  
  26.  
  27. #location ~ \.php$ {  
  28.  
  29. # proxy_pass http://127.0.0.1;  
  30.  
  31. #}  
  32.  
  33. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
  34.  
  35. #  
  36.  
  37. location ~ \.php$ {  
  38.  
  39. fastcgi_pass 127.0.0.1:9000;  
  40.  
  41. fastcgi_index index.php;  
  42.  
  43. fastcgi_param SCRIPT_FILENAME /data/cacti.mytest.com/cacti-0.8.7c$fastcgi_script_name;  
  44.  
  45. include fastcgi_params;  
  46.  
  47. }  
  48.  
  49. # deny access to .htaccess files, if Apache's document root  
  50.  
  51. # concurs with nginx's one  
  52.  
  53. #  
  54.  
  55. #location ~ /\.ht {  
  56.  
  57. # deny all;  
  58.  
  59. #}  
  60.  
  61. }  
  62.  

重启nginx

  1. #/usr/local/etc/rc.d/nginx reload  
  2.  

现在cacti已经完成.在浏览器里输入cacti访问地址就可以看到cacti的安装界面了,这里我们用的域名为 http://cacti.mytest.com.

#p#

七、创建cacti计划任务

为了让系统自动采集一些数据,我们还需要执行下面的一些步骤.

  1. vi /etc/crontab  
  2.  
  3. */5 * * * * cacti /usr/local/bin/php /data/cacti.mytest.com/cacti-0.8.7c/poller.php > /dev/null 2>&1  
  4.  

注意,在FreeBSD系统中,cacti采集数据的时候可能会提示

  1. cat: /proc/meminfo: No such file or directory  
  2.  

类似的错误的,暂时不知道如何解决的

由于刚安装完,没有任何数据信息的,可以通过手动在终端里执行下面的命令即可.

  1. #/usr/local/bin/php /data/cacti.mytest.com/cacti-0.8.7c/poller.php  
  2.  

如果用的webserver为apache,并且启用了open_basedir限制目录功能,open_basedir内容要设置如下:

  1. php_admin_value open_basedir "/data/haohtml.com/cacti/:/var/tmp/:/usr/local/bin/php/:/usr/local/bin/snmpwalk/:/usr/local/bin/snmpbulkwalk/:/usr/local/bin/snmpgetnext/:/usr/local/bin/snmpget/:/usr/local/bin/rrdtool/:/usr/bin/perl/:/usr/local/share/rrdtool/fonts/"  
  2.  

在设置中字体路径为:

  1. /usr/local/share/rrdtool/fonts/DejaVuSansMono-Roman.ttf  
  2.  

相关文章:FreeBSD下用cacti抓取内存信息的方法

高级:安装cacti

注意:0.8.6f以下的版本有SQL注入漏洞

  1. #cd /usr/ports/net/cacti  
  2.  
  3. #make install FORCE_PKG_REGISTER=yes clean ;  
  4.  

因为mysql-client已经装过了,所以需要加上FORCE_PKG_REGISTER=yes

  1. #cd /usr/ports/net/cactid  
  2.  
  3. #make install clean;  
  4.  
  5. #ee /usr/local/etc/cactid.conf  
  6.  
  7. DB_Host localhost  
  8.  
  9. DB_Database cactidb  
  10.  
  11. DB_User cacti  
  12.  
  13. DB_Pass 123456  
  14.  
  15. DB_Port 3306  

【编辑推荐】

修改Cacti中rrd文件大小

Redhat下怎样安装Cacti

用Linux上的cacti去监控windows服务器(图)

责任编辑:zhaolei 来源: cnblogs
相关推荐

2010-05-26 15:23:58

2010-06-17 17:18:23

Cacti 监控Lin

2011-03-29 15:22:31

WindowsCacti

2011-03-29 09:08:47

2011-04-02 16:08:02

2011-04-01 09:18:03

FreeBSD安装MRTG

2011-03-31 10:26:51

安装MRTG

2011-03-25 14:17:48

Ubuntu安装Cacti

2011-03-29 09:08:50

2011-04-06 10:03:08

Centos5.4Cacti安装

2011-11-08 21:42:18

CACTI 流量监控

2011-04-01 12:22:35

2011-04-02 09:20:23

freebsdmrtg安装

2011-02-23 14:05:57

2011-04-02 14:21:51

Cacti安装

2009-11-06 11:32:29

访问控制BSD

2011-03-25 15:01:43

2011-03-31 10:28:40

cactiplugin

2011-03-31 10:21:52

CentosCactishell

2010-07-01 14:59:51

FreeBSD 8
点赞
收藏

51CTO技术栈公众号