方便适用的企业监控之CactiEZ 06Word文档格式.docx
《方便适用的企业监控之CactiEZ 06Word文档格式.docx》由会员分享,可在线阅读,更多相关《方便适用的企业监控之CactiEZ 06Word文档格式.docx(32页珍藏版)》请在冰豆网上搜索。
重启网卡服务
servicenetworkrestart
5.设定时区cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime
修改/etc/sysconfig/clock文件的内容为:
ZONE="
Asia/Shanghai"
UTC=false
ARC=false
6.重启服务器reboot
7.重置绘图器(修改时区后必要,否则图形不会显示)/var/www/html/目录下
php-qpoller.php--force
8.登录CactiEZhttp:
//ip
默认管理员admin:
admin
第一次登录强制改密码
9.CactiEZ安装完毕
虽然此时Cacti已配置好,发现在VMWARE里面的系统主机时间同步有问题,(会影响Cacti监控)困扰着我很长一段时间,有一次无意中在Deidara的博客中看到了他的解决方案这里我想解释最后修改那个文件是在哪里,看图你应该知道了哈.
登录CactiEZhttp:
//ip我尝试监控VMWARE里测试用的redhat主机,发现SNMP错误,
登录主机发现原来是未安装net-snmp服务,Redhat软件安装的时候有很多依存关系,有时让你搞不清楚头脑,为此我以前的同事对Redhat这点很来火,我这里装net-snmp服务的时候错误也来了,没办法只好XX一下究竟需要安装哪个东东先.
一查才知道原来是先要装lm_sensors,不管这个东东是什么反正装完了下面才能顺利完成(不上火,保持克制)
启动:
snmpdstart,键入命令ntsysv设置开机自启动snmpd服务,
基本按默认不要动什么设置就能自动找得到主机了哈.
顺便也介绍一下windowsXP主机添加SNMP的方法
测试了一下监控应用,发现有出图一切正常,有空下次再整个Cacti高级应用进阶篇吧.怎么样?
这个偷懒的方法挺方便快速吧.
Cacti进阶应用篇:
这里继上次写的搭建环境而来4.7版本
先到CentOS里面装samba服务,用命令联网在线安装:
yum–yinstallsamba
装完以后配置samba服务相关设定,(这里不再说明,请自行配置好)让winxp系统可以访问得到CentOS共享目录,为什么要这样做?
我在虚拟环境,CentOS跑的是命令行环境,那么当增加Cacti相关插件的时候,需要复制相关文件到CentOS相关Cacti安装目录下,这时我就通过winxp把相关文件复制到CentOS共享目录下面喽,所以就要搭建Samba服务.
大家可以访问Cacti论坛,可以学到更多东东,不过我觉得CACTI建图的基本原理是先创建数据模板,然后创建图形模板,而图形模板是调用数据模板而来,意思就是将数据转换到图形上来输出,这样便于我们直观查看到,然后我们可以把相应的图形模板加到主机模板里面去,这样我们就可以在创建设备监控的时候就可以选择相应的主机模板来创建图形喽,说了这么多不知道你明白了没有?
这是CATCI精髓之所在,你一定要搞明白,其时我们导入的这些模板可以在数据模板里面找得到,你可以深入研究它究竟是怎样写公式来得到相关数据滴.
Cacti脚本及模板论坛:
一个完整的cacti脚本及模板列表:
进阶应用之一:
增加advanceping模板
我觉得监控端口是不是down掉了还是有必要的,但是ping会产生arp包,arp包会消耗设备cpu哦
插入AdvancePing脚本及模板
下载地址:
1)功能:
此模板用来监控一个TCP/UDP端口、ICMP的延时情况和丢包情况。
2)下载ss_fping.php脚本并放到/var/www/html/scripts/目录下,下载cacti_graph_template_ping_advanced_ping_v1_3.xml模板,用cacti的模板导入页将此模板导入,(通过XP系统把文件拷贝到CentOS里面来哈)这里我把ss_fping.php按照说明复制的时候发现此目录下已存在此文件,所以我没有覆盖.
接下来导入模板,我们通过XP系统进入到CentOS里的CactiWEB控制台来做操作,方便快捷,如下图操作导入此模板先.
在左边点device---adddevice的时候就可以看到advancedping图形模板了
这里我们假设一次发20个探测包ping主机的80端口,确认对外提供的internet服务是否正常
完成以后的效果图如下:
应用之二:
多核CPU绘制到一张图
到这里下载相应的模板,这里分别有2,4,8,16核的CPU模板,DEVICE添加此图形模板,如下图所示,我这里用双核的CPU来测试(在虚拟机XP下面启用双CPU有点跳侦的感觉,但可以使用,但win7下面启双CPU根本启动不起来)
添加完图形模板以后,现在来为主机添加此图形模板的监控图,点右上角的creategraphforthishost,然后按如下图操作
接着弹出以下图面,这里什么都不要填写,直接点创建即可
关键点到了,点graphmanagement找到你要最监控主机的此选项点击进去
在数据源里选择对应CPU数据模板就OK
完成以后可以看到双核CPU的每一个CPU的使用率了.
这里我说明了两个例子,论坛上有很多模板自己可以去找,如junipernetscreen/ciscorouterandswitch/sqlserver等相关监控模板
我找到一个好模板附上来共享给大家Cacti_SNMP_INFORMANT_STD_W32_Metrics_V9.zip的包,里面包含的文件就是脚本文件,其中snmp_informant_.xml开头的文件是需要放到cacti服务端的snmp_queries目录下,我这里目录地址是/var/www/html/resource/snmp_queries/。
cacti_data_query_snmp开头的文件全都通过cacti页面导入,然后关联对应的主机模板如下图:
OK,下面放几张监控美图出来(这些模板里面有些出不来图,不知什么原因需要研究)
这里需要说明的是,除了windows自带安装的snmp之外,还需要安装SNMPInformant-STD1.6,要不然出不来图,安装完成以后不需要做什么设置.
软件下载地址:
//www.wtcs.org/informant/download.htm
差点忘记了我在导入模板的时候出错啦~!
把经验分享给大家
用XX一搜原来是将新版本到处的cacti模板导入到旧版本的时候,就会报Error:
XML:
Hashversiondoesnotexist.,解决的办法是修改xml里面的相关hash值就可以了。
以下是cactixmlhash的一些说明:
Takethefollowingexample:
<
hash_040018258d1c9487a6c58dd804f4a012007664>
Thefirst2digitsarethetypeofthetemplate.
Thenext4digitsaretheCactiversionitwascreatedon.
Thenext32digitsarearandomnumber.
ListofVersions
1."
0.8.4"
=&
gt;
"
0000"
2."
0.8.5"
0001"
3."
0.8.5a"
0002"
4."
0.8.6"
0003"
5."
0.8.6a"
0004"
6."
0.8.6b"
0005"
7."
0.8.6c"
0006"
8."
0.8.6d"
0007"
9."
0.8.6e"
0008"
10."
0.8.6f"
0009"
11."
0.8.6g"
0010"
12."
0.8.6h"
0011"
13."
0.8.6i"
0012"
14."
0.8.6j"
0013"
15."
0.8.7"
0014"
16."
0.8.7a"
0015"
17."
0.8.7b"
0016"
18."
0.8.7c"
0017"
19."
0.8.7d"
0018"
20."
0.8.7e"
0019"
Fortheexampleabove,thistemplatewasexportedwithCacti0.8.7d.
所以需要导入新版cacti模板的时候,只需要修改hash里面的version相关字段即可。
参考:
知道原因,当然要解决问题,先确认Cacti当前所用的版本,我用的是0.8.7C,那么对应是0017
下载openxmlEditor1.6软件下载地址:
//philo.de/xmledit/
安装完成以后,打开XML文件以后发现当前版本应该是0.8.7.e,按当前自己所有的版本的hash值全部查找替换然后保存即可.这样模板就可以成功的导入了.
接下来我再教大家怎么手动建立自己的模板,先要介绍一个软件GetIf
GetIf
=====
GetIf是一个运行于WINDOWS平台的SNMP工具。
功能非常强大,可以查询WINDOWS很多设备的MIB码和其他网络设备,如思科等的MIB码。
有了这些MIB码就可以方便的对设备进行监测了。
GetIf可以在:
//www.wtcs.org/snmp4tpc/getif.htm下载。
安装GetIf的方法如下:
1、下载GETIF2.3
//www.wtcs.org/snmp4tpc/FILES/Tools/SNMP/getif/getif-2.3.1.zip
2、下载MIB库
//www.wtcs.org/snmp4tpc/FILES/Tools/SNMP/getif/GETIF-MIBS.ZIP
3、解压GETIF2.3后进行安装,按照默认设置安装即可。
4、删除GETIF2.3安装目录中MIBs子目录里的.index文件。
5、解压GETIF-MIBS.ZIP到上步中.index文件所在的目录。
6、运行GetIf2.3
输入主机的IP地址点开始就可以看得到主机相关的信息了
现在正式开始建立数据模板"
datatemplates----Add”如下图方法填写相关数据,|host_description|在这里相当于会自填写你要监控的主机名称.
通过Getif查看到我们想要监控项目的OID值,这里我们找网络接口收到总的字节数,可以在下面找到对应的OID值复制到如下图所示位置处.
我们到Cacti主机通过SNMPWALK命令查看返回数据也没有问题,看到了这里返回的数据类型为Counter32,下面有用
如果返回值是Counter这里就要选数据源类型为counter
添加图形模板,Graphtemplates----Add
接着会弹出以下画面点Add
记住这里的Datasource要选刚才我们创建的数据模板,按如下图设定即可
接着再多Add一项,如下图设定
完成后如下图所示
在DEVICE里在相应的主机下面添加图形模板如下图所示
添加完成以后点"
Createthishostforgraph”----选中此项点CREATE即可
出来的效果图
最后谈谈Cacti数据采集方式,总结如下表
方式
非SNMP
数据
重点
难易度
snmpget
不支持
单个
OID和类型
易
dataqueries
不支持
多个
编写XML
难
脚本
支持
多个
编写脚本
Cacti有三种数据采集方式,snmpget/dataqueries/script,从以上表格我们可以看出snmpget方式最简单也是最容易,但灵活性有限,比如说我们主机有多个CPU,而用snmpget方式只能监控单个CPU数据,想要输出多个CPU的数据到一张图,我们只能用dataqueries或脚本方式来实现,当某些设备不支持SNMP我就可能通过脚本的方式,把数据收集计算以后返回给Cacti然后以图形的方式显示出来,这也显示出了Cacti强大的扩展性和灵活性.