打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
cacti实现监控
Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP,MySQL,SNMPRRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。
Cacti是一个c/s架构的,他主要监网络接口流量,监控CPU的负载,内存使用,磁盘空间等,还监控服务器中的WEBmailftp、数据库等,当然还能监控网络设备性能,配置文件,路由数,以及机房温度,电压,湿度,风扇,电源,等运行状态。
原理:这个主要是基于SNMP协议进行工作的,SNMP是一个udp协议,使用的端口号是161,现在有v1v2v3几个版本,其中v2版本用的还是较多的。RHEL5上使用的net-snmp
接下来给出一个官方文档给出的cacti架构的,来阐述整个工作流程
这里使用SNMP来定时采集数据信息,然后通过RRD工具来绘制成人们容易识别的图形,方便统计,而RRD还能实现一个环形存储,然后用户通过一个cacti提供的一个图形化界面来统计信息,从而实现监控的目的。
接下来介绍一下RRDtool Round Robin Database,环形数据库),能让你创建数据库、存储数据、提取数据、创建用于在Web浏览器中显示的PNG格式的图像。这些PNG图像以来于你收集的数据,它可以是网络平均使用率、峰值。
接下来我就通过实验来实现整个安装配置,以及实现监控效果的整个过程:
1.       环境介绍,主监控机是RHL5IP=192.168.1.108
2.       主监控机上安装apche+php+gdweb环境,本实验我采用的是rpm包的安装方式
3.       安装正式开始:
一、安装相关的依赖的软件包
安装必要的开发库:
# yum groupinstall "Development Libraries" "Development Tools"
 
安装一些应用软件包
#yum install php php-mysql php-snmp mysql mysql-server net-snmp net-snmp-libs net-snmp-utils php-pdo perl-DBD-MySQL
 
安装rrdtool,我这里下载了软件包,分别是rrdtool-1.2.27-3.el5.i386.rpmrrdtool-devel-1.2.27-3.el5.i386.rpmrrdtool-php-1.2.27-3.el5.i386.rpm
# yum localinstall --nogpgcheck rrdtool-*
 
安装并配置SNMP的配置文件/etc/snmp/snmp.conf
# yum install net-snmp
#vi /etc/snmp/snmp.conf
#将下边这行中的default
com2secnotConfigUser default public
#改为127.0.0.1
com2secnotConfigUser 127.0.0.1 public
#将下边这行中的systemview
access notConfigGroup "" any noauth exact systemview none none
#改为all
access notConfigGroup "" any noauth exact all none none
#将下边这行的注释“#”号去掉
#view all included .1 80
 
启动snmp
# service snmpd start
 
二、安装cacti
我这里使用的是cacti-0.8.7g.tar.gz,源码安装
# tar xf cacti-0.8.7g.tar.gz  //解压出来
# mv cacti-0.8.7g /var/www/html/cacti  //移动到http的目录下的cacti目录下
#yum install mysql-server //安装Mysql
#chkconfig –add mysqld
#chkconfig mysqld on //设置开机自动启动
#service mysqld start  //启动mysql数据库
#mysql
mysql> CREATE DATABASE cacti ;  //创建数据库
mysql> GRANT ALL PRIVILEGES ON cacti.* TO cacti@localhost IDENTIFIED BY 'cacti';//授权
mysql> GRANT ALL PRIVILEGES ON cacti.* TO cacti@127.0.0.1 IDENTIFIED BY 'cacti';
mysql> FLUSH PRIVILEGES;
mysql> USE cacti;
mysql> SOURCE /var/www/html/cacti/cacti.sql;  //导入数据
 
配置cacti来连接数据库
# vim /var/www/html/cacti/include/config.php
$database_username = "cacti";
$database_password = "cacti";
修改上面两项,注意这里的用户名是对应授权的用户和密码;
 
启动httpd服务
# service httpd start
#setenforce 0
 
在浏览器中输入http//192.168.1.108/cacti就能进行安装了
这是安装的其实界面
点击Next进入选择New Install,然后Next,下面一直默认就行了
知道出现用户登录的界面:
默认的情况下,用户名和密码都是admin,但是进入以后,必须要修改密码
进入后,出现如下的界面,然后就可以做一定的设置了
 
第一次登录,可能会出现图片无法显示的情况,这个时候,我们只需要手动进行生成图片就行了
#php /var/www/html/cacti/poller.php > /dev/null 2>&1
Ok
显示当前主机的信息如下:
然后就可以自定义需要监控的信息了
关于如何使用这个界面,可以自己下去尝试一下做作,多摸索一下,就能熟练掌握这个工具了。
一、定义一个定期计划
# crontab –e
#加入如下内容。注意poller.php的路径
*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
#确保 /var/www/html/cacti/rra/目录存在
#如果暂时未看到图表,可以手工执行,生成图表
#php /var/www/html/cacti/poller.php > /dev/null 2>&1
 
四、使用 Cacti 监控 Linux 主机
#在被监控的linux主机(192.168.1.110)上安装net-snmp
#yum install net-snmp
#vi /etc/snmp/snmpd.conf
#更改以下部分
#将下边这行中的default
com2secnotConfigUser default public
#改为192.168.1.108cacti)服务器的地址)
com2secnotConfigUser 192.168.1.108 public
#将下边这行中的systemview
access notConfigGroup "" any noauth exact systemview none none
#改为all
access notConfigGroup "" any noauth exact all none none
#将下边这行的注释“#”号去掉
#view all included .1 80
service snmpd restart
如果出现问题请注意一下snmp协议的版本,都用version 1是一种解决方法
如果都用version 1,需要把所有监控机和被监控机的snmpd.conf改一下
#vi /etc/snmp/snmpd.conf
#将下边这行
view systemview included .1.3.6.1.2.1.1
#改为
view systemview included .1.3.6.1.2.1
被监控机配置完成之后,需要把他加入到监控的队列中
在图形化界面上点击consoleàdeviceàAdd(右上角)
 
点击create,然后点击编辑图像列表,出现一下图像
接着点击create 创建成功
然后点击
下的User Management在最下面选择,这样就能够实现管理其他的机器了。这里我就不多演示了
显示一下监控到的流量
 
接下来我讲做的是如何在现有的基础上添加具有拓扑功能的管理页面的插件
我现在想添加monitor的功能
# tar xf cacti-plugin-0.8.7g-PA-v2.8.tar.gz  //安装安装cacti的一个patch--Plugin Architecture支持插件
# cp -R cacti-plugin-arch/* /var/www/html/cacti/  //复制到cacti目录下
# cd  !$  //cacti目录下
# mysql -ucacti -pcacti cacti <pa.sql   //pa.sql添加到cacti数据库中
# patch -p1 -N <cacti-plugin-0.8.7g-PA-v2.8.diff  //打补丁
# vi include/config.php
修改为$url_path = /cacti/;
安装monitor插件
# tar xf monitor-0.8.2.tar.gz
# mv monitor /var/www/html/cacti/plugins/monitor  //复制到cacti目录下
然后登录到web页面就可以进行安装了
点击plugin Management就会出先这个界面了,然后点击那个箭头然后刷新页面,点击User Management 点击Admin用户,选中如图给出的所有的选项
Save之后,就会出现monitor的插件了
点击monitor后就会出现如下图所示的一个简单的拓扑信息了,我这里有一个宕机的,呵呵,很直观吧!
 
安装插件就是这样了,你可以试一下奥,呵呵
 
五、这样一个cacti基础性的监控就完成了,下面我将演示如何监控Mysql数据库的操作
使用软件包是mysql-cacti-templates-1.1.2.tar.gz
# tar xf mysql-cacti-templates-1.1.2.tar.gz
# cd mysql-cacti-templates-1.1.2
# cp ss_get_mysql_stats.php /var/www/html/cacti/scripts/
# cd /var/www/html/cacti/scripts/
# chown  1000.users ss_get_mysql_stats.php  //修改属主和属组
# vim !$
$mysql_user = 'cacti';
$mysql_pass = 'cacti';
$cache_dir  = "var/www/html/cacti/cache/";
设置准备监控的数据库的账户相关信息
创建上面文件的目录,然后赋予权限为777
# mkdir /var/www/html/cacti/cache
chmod 777 -R !$
创建Mysql需要的账户和权限
mysql> GRANT ALL  ON cacti.* TO cacti@'%' IDENTIFIED BY 'cacti';   
mysql> FLUSH PRIVILEGES;
然后在图形化界面中导入cacti_host_template_x_db_server_ht_0.8.6i.xmlmysql-cacti-templates-1.1.2.tar.gz里面有,解压出来,然后在导入)
点击console—>Import Templates然后将cacti_host_template_x_db_server_ht_0.8.6i.xml导入就行了,然后出现如下的信息,则表示导入成功了
当然里面还有nginxapache的模块,如果需要,也可以做!!!
 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Cacti中文版安装配置
使用?cacti?批量监控服务器以及其?PHP?运作环境配置
Cacti安装配置文档
Centos下稳步实现Cacti监控的详细配置
cacti安装与配置
在Windows下安装Cacti流量与系统资讯监控
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服