cacti相关笔记
#!/bin/shecho "11"?
第二步:snmpd.conf添加完成后,一定要重启一下snmpd,重启完成后,现在自己主机上测试一下
?
写道snmpwalk -v 2c -c public localhost .1.3.6.1.4.1.2021.50?
这时候应该可以看到类似下列的输出
写道UCD-SNMP-MIB::ucdavis.50.1.1 = INTEGER: 1?
其中,UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "11"
就是你要的数据
再进一步细化,执行snmpwalk -c public -v2c localhost .1.3.6.1.4.1.2021.50.101.1
?
会看到类似下列的输出
写道UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "11"?
那么,你要采集的数据“11”,所对应的,能够写到cacti数据模板里去的OID就是.1.3.6.1.4.1.2021.50.101.1
?
第三步:进入cacti的web界面,cacti本身就带了一个数据模板,名字叫“SNMP - Generic OID Template”
?
把它复制一个出来,名字随便改成test之类的,其他一些选项怎么填网上搜一下,一大堆带图片的,记得把你对应的OID填到数据模板的OID里去就可以了
?
第四步:创建一个图形模板,这个也不说了,能采集到数据,都很简单了
?
第五步:注意看图,结合cacti log,没图没数据记得turn on debug调调
?
?
?
三、如何让图像每分钟更新一次数据?
对于设置用spine来进行数据采集的话,数据确实是每分钟采集一次,但是,应该有人注意看了,图像可不是每分钟更新一次,而是5分钟更新一次,而且根据设置,一般都是5分钟的平均值,这个多少有些不方便了
?
怎么更改呢,一个设置就OK了
?
写道第一步:选择要修改的数据模板对于这种做法,cacti官方论坛有人讨论过,连接如下,大家可以看看,貌似老外们还比较推崇这种做法
http://forums.cacti.net/about3971.html
?
四、Monitor插件对应的页面里,没有Threshold Breached图标?
相信装过cacti两次以上的人绝对碰到过这个问题,即某次装完monitor跟thold之后,monitor对应点页面,图标解释那块,有4个小图标,分别是
NormalRecoveringThreshold但是,又在某次重新装下cacti后,发现Threshold Breached又不见了
?
这个是cacti-0.8.7g以上版本都有的一个小bug
?
两个插件都完成了安装的话
?
解决方法如下:
?
写道In monitor.php instead of line这是cacti官方论坛提供的方法
http://forums.cacti.net/viewtopic.php?f=17&t=39972
?
?
对于这个方法,cacti官网也有how to的文档可以看
http://www.cacti.net/downloads/docs/html/making_scripts_work_with_cacti.html
?
老子不得不说cacti社区真是什么答案都有,google cacti相关的全英文关键字搜索的话,基本上都是cacti官网的页面在最前,以后大家碰到什么问题直接搜英文好了,不管你碰到cacti任何问题,只要你关键字搜的准确,cacti官网里绝对有答案
?
这个文档大概的意思是说,如果你用scripts/cmd这种方法来采集数据的话,如果采集的数据是一个,那么你的shell输出就直接是答案即可,例如
写道#!/bin/sh? 这个脚本输出就是一个“7”,那么在重新写采集方法的时候,对应“Output Fields”就可以随便取名字勒
?
但是,如果你要取多个数据的话,就要根据显示出来的参数来决定“Output Fields”的名字勒
?
例如
写道#!/bin/sh?
这个脚本的输出是
写道[root@localhost scripts]# ./test.sh?
此时,你要采集num1对应的数据的话,那么“Output Fields”的名字就必须num1
?
同理,任何你要采集的shell数据,它的输出格式必须是
<Var1>:<number1> <Var2>:<number2>
?
中间以空格区分,其中“Output Fields”的名字一定必须写“Var1”,不需要把冒号“:”加进去,冒号记得用英文的
?
OK,简要描述一下cacti添加shell脚本采集数据的完整过程
?
第一步:添加数据输入方法 写道“Console” ==》 “Data Input Methods” ==》 “Add”?
第三步、添加图像模板这个就不说了,如果这个你还不会的话,整个用shell脚本提取数据你也别弄了,有问题找google
?
第四步、添加设备对应图形在localhost添加对应图形后,如果过了几个轮询间隔之后还不出图的话,在“Graph Management”找到对应图形模板,turn on debug model,看看最下面的报错,如果是报错
?
ERROR: the RRD does not contain an RRA matching the chosen CF
?
这个又是一个cacti的小bug了,我在官网没找到根本解决方法,只有一个替代方法
?
那就是把第三步添加的对应图像模板,将要在图像里显示出来的item的CF Type改成“Average”,而不是“Last”,改完之后图像就可以显示了
?
?
不过这样用shell脚本提取数据有个短板,那就是只能提取运行cacti的服务器数据,如果你要抓取被监控设备的相关数据化,查查snmp系列的命令,例如snmpnetstat就可以通过snmp采集netstat相关数据,或者编写网络通信脚本,将数据直接传送过来,需要一定的脚本能力
?
?
?
?
六、cacti图里出现的单位,比如“u”、“m”分别代表什么数量级??
来自cacti官网
http://forums.cacti.net/viewtopic.php?f=6&t=8168
?
写道10^-18 a - atto?
?
?
?
?
强大的cacti开源社区啊
?
后期持续更新。。