设为首页 收藏本站
查看: 2113|回复: 0

[经验分享] [教程]FreeBSD下安装cacti教程(原创)

[复制链接]

尚未签到

发表于 2015-9-7 14:45:15 | 显示全部楼层 |阅读模式
  以下配置环境为: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.

  #cd /usr/ports/net/php52-sockets
#make install clean

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

  extension=sockets.so

  信息添加到/usr/local/etc/php/extensions.ini 文件末尾.
  如果您确认已经安装过pdo_mysql这个扩展的话,这步可以跳过.

  #cd /usr/ports/databases/php5-pdo_mysql
#make install clean

  三、安装rrdtool12

  #cd /usr/ports/databases/rrdtool12
#make install clean


  #cd /usr/ports/databases/php5-rrdtool
#make install clean

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



extension=rrdtool.so
  到 /usr/local/etc/php/extensions.ini 文件末尾.
  四、安装net-snmp

  #cd /usr/ports/net-mgmt/net-snmp/
#make install clean

  配置

  #cd /usr/local/share/snmp
#cp snmpd.conf.example snmpd.conf

  编辑snmpd.conf,在文本最后添加 rocommunity public 一行
或者手动通过命令加入也可以

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

  启动snmpd服务:

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

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

  # netstat -na | grep "LISTEN"
  # sockstat
  //199 161 port

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

  # snmpwalk -v 1 -c public 127.0.0.1 system

  五、编辑开机启动项

  vi /etc/rc.conf
  在内容尾添加以下几行
  snmpd_flags="-a"
snmpd_pidfile="/var/run/snmpd.pid"
snmptrapd_enable="YES"
snmptrapd_flags="-a -p /var/run/snmptrapd.pid"

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

  # cd /data/cacti.mytest.com
# fetch http://www.cacti.net/downloads/cacti-0.8.7c.tar.gz
# tar -zxvf cacti-0.8.7c.tar.gz
# cd cacti-0.8.7c

  配置cacti
  vi ./include/config.php
  $database_hostname = "localhost";
$database_username = "cacti"; */mysql中cacti的用户名/*
$database_password = "cacti"; */mysql中cacti用户的密码/*
$database_port = "3389"; */mysql监控端口/*
  vi ./include/global.php
  $database_hostname = "localhost";
$database_username = "cacti"; */mysql中cacti的用户名/*
$database_password = "cacti"; */mysql中cacti用户的密码/*
$database_port = "3389";
  在mysql中配置cacti数据库及cacti用户信息

  #mysql -u root -p
mysql>create database cacti default character set utf8;
mysql> use cacti;
mysql> source /data/cacti.mytest.com/cacti-0.8.7c/cacti.sql;
mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'cacti';
mysql> flush privileges;

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

  server {
  listen 80;
  server_name cacti.mytest.com;
  root /data/cacti.mytest.com/cacti-0.8.7c;
  location / {
  index index.html index.htm index.php;
}
  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
root /usr/local/www/nginx-dist;
}
  # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
  location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/cacti.mytest.com/cacti-0.8.7c$fastcgi_script_name;
include fastcgi_params;
}
  # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}

  重启nginx

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

  现在cacti已经完成.在浏览器里输入cacti访问地址就可以看到cacti的安装界面了,这里我们用的域名为 http://cacti.mytest.com.
  七、创建cacti计划任务
  为了让系统自动采集一些数据,我们还需要执行下面的一些步骤.

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

  注意,在FreeBSD系统中,cacti采集数据的时候可能会提示
  cat: /proc/meminfo: No such file or directory
  类似的错误的,暂时不知道如何解决的
  由于刚安装完,没有任何数据信息的,可以通过手动在终端里执行下面的命令即可.

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

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

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/"

在设置中字体路径为:


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

  相关文章:FreeBSD下用cacti抓取内存信息的方法
  高级:安装cacti
  注意:0.8.6f以下的版本有SQL注入漏洞
  #cd /usr/ports/net/cacti
#make install FORCE_PKG_REGISTER=yes clean ;
  因为mysql-client已经装过了,所以需要加上FORCE_PKG_REGISTER=yes
  #cd /usr/ports/net/cactid
#make install clean;
#ee /usr/local/etc/cactid.conf
  DB_Host        localhost
DB_Database    cactidb
DB_User        cacti
DB_Pass        123456
DB_Port        3306
  参考文档:
  http://blog.haohtml.com/index.php/archives/1133
  http://blog.haohtml.com/index.php/archives/4798
  http://blog.haohtml.com/index.php/archives/4821
  转载:http://asdfd-asdf.blog.sohu.com/169879228.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-110680-1-1.html 上篇帖子: 使用cacti监控服务器 下篇帖子: 一篇清晰的cacti安装文档,老外写的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表