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

[经验分享] Cacti的安装与插件开发(三)

[复制链接]
累计签到:2 天
连续签到:2 天
发表于 2015-11-22 14:48:33 | 显示全部楼层 |阅读模式
  Cacti的安装与插件开发(三)
  cacti模板开发与应用实战
  


  我觉得掌握一个软件,最起码要能随心所欲的应用它才算了解了这个应用,今天总结用cacti监控路由的CPU和MEM使用率。
  实战:使用cacti监控H3C Router的CPU和MEM内存使用率
  1.首先H3C Router要支持snmp功能,且该功能已经开启,另外已经配置好community,即前提是可以在监控机上通过snmp协议获取路由器的信息。
  


  2.根据H3C公布的MIB库,得出CPU和MEM的内存mib节点分别是.1.3.6.1.4.1.25506.2.6.1.1.1.1.6.3和.1.3.6.1.4.1.25506.2.6.1.1.1.1.8.3,这样就简单了,我们只需要写一个脚本来获取路由器的CPU和MEM,然后将这两个值作为数据源,通过cacti不间断的按照我们规定的时间策略来取得rrd数据库时间槽上的数据值,通过图像展现出来即可。
  


  3.脚本开发
  # vi getcpu_mem.sh
  

#!/bin/bash
#
# $1 is community
# $2 is Hostname or IP
CPU=`snmpget -v 2c -c $1 $2 .1.3.6.1.4.1.25506.2.6.1.1.1.1.6.3|cut -d ":" -f4 |grep -o "[1-9]\+"`
MEM=`snmpget -v 2c -c $1 $2 .1.3.6.1.4.1.25506.2.6.1.1.1.1.8.3|cut -d ":" -f4 |grep -o "[1-9]\+"`
echo -n "CPU:$CPU MEM:$MEM"

  
  手动执行没问题后将其拷贝到<path_cacti>/scripts下面。
  



注意!!!最后一行要使用-n取消换行操作,CPU和MEM是两个数据源,且数据源名称和取&#20540;之间用冒号隔开,两个数据源之间用空&#26684;隔开。  


  4.添加cacti数据输入方法(Data Input Methods)
  给数据输入方法取个名字,最好做到见名识义,Input Type则选择Scripts/Command,Input Fields则输入bash <path_cacti>/scripts/getcpu_mem.sh <snmp_community> <hostname>,即让脚步正常执行。如下图:
DSC0000.jpg


  


  5.点击create之后会提示输入Input Fields和Output Fields。其实Input Fields即使脚本的输入变量,Output Fields则是输出变量(也可以认为是数据源)。其中
  Field [Input]:就是我们在脚本中定义的两个输入变量,也是上步执行脚本中定义的。
  Friendly Name:这个是取个别名,容易识别即可。
  Regular Expression Match和Allow Empty Input:不用填,因为勾选之后就表示我们可以不使用参数,这样我们的脚本是没办法完成数据探测的。
  Special Type Code:这个就比较好用了,描述了cacti中定义过的&#20540;,比如此处我们的输入参数是snmp_community,我可以在此处输入真正的参数&#20540;,也可以使用cacti定义过的特殊变量,即snmp_community。填写完成后点击create即可,如下图:
DSC0001.jpg


  按照同样的方式添加另外一个输入参数——hostname。
   DSC0002.jpg


  注意:此处的hostname一定不要有“<>”,使用hostname会直接引用该数据输入方法所关联的主机IP,当然也可以在此处直接输入路由器的IP地址。
  现在可以添加Out Fields了,这其实就是我们在脚本中定义的输出字段,注意一定要保证字符以及顺序完全一致,否则是取不到数据或者取错数据的。我们在脚本中是先定义输出CPU,然后输出MEM的。下图是添加MEM的图片,CPU是要先添加好的。
   DSC0003.jpg


  添加完成后,记得保存,应该是这样的。
   DSC0004.jpg


  


  6.添加数据模板(Data Templates)
  这一页就非常重要了,几乎每个选项都是跟我们操作息息相关的。如下图: DSC0005.jpg
  Data Templates [edit: H3C Router CPU and MEM Usage]


  Name:也是见名识义的原则。
  


  Data Source


  数据源名称:|host_description|-H3C CPU&MEM Usage,其中|host_description|是cacti定义的宏,可以去除主机信息
  Data Input Method:选择我们刚才创建的数据输入方法。
  Step:步长,一般就是选择5分钟,即300秒。
  


  Data Source Item [CPU]


  Internal Data Source Name:数据源名称,一个字符都不能差,顺序与脚本输出数据源此项一致。CPU
  Minimum Value ('U' for No Minimum):能接受的最小&#20540;,设为0即可。、
  Maximum Value ('U' for No Maximum):能接受的最大&#20540;,设为100,如果遇到不知道的情况,则设为U。
  Data
Source Type:数据源类型,选择GAUGE,即大小浮动,选择存储原始数据。
  Heartbeat:心跳包,即在这个时间间隔内获取到的数据都认为是有效的,超过之后则认为是UNKNOW,一般是步长的两倍。
  Output
Field:选择我们上一步定义的输出参数CPU-H3C CPU Usage。
  


  添加完成后点击该段右上角的NEW,来添加新的数据源。按照此种方法,添加另外一个数据源MEM,完成之后记得保存。
DSC0006.jpg


  Custom Data [data input: H3C Router CPU and MEM Usage]下的
  “H3C Router IP和SNMP_Community”如果不填,则直接从关联的主机上继承。
  


  7.添加图片模板
   DSC0007.jpg


  Graph Template下的


  Title (--title):是指图像的标题信息


  Vertical Label (--vertical-label):指图像的y轴信息
  一般只需要修改这两点,修改好之后,点击create,就可以添加数据展示曲线了。
  


  点击Graph Template Items [edit: H3C Router CPU&MEM Usage] 右侧的Add,来添加图像曲线信息。如下:
DSC0008.jpg


  注意:Graph Item Inputs下面的Data Source [CPU]和Data
Source [MEM]是自动生成的。

  


  8.在图像管理里面将图像模板和主机关联起来
  选择主机&#43;模板,点击Add添加,
DSC0009.jpg


DSC00010.jpg


DSC00011.jpg


  


  选择刚刚关联好的模板,将其放在默认树上即可。
DSC00012.jpg


DSC00013.jpg


  


  9.现在点开graph就可以看到图像了,第一次出图一般都要10分钟左右,所以要等一会。如果还是没有出图,可以手动使用rrdtool命令来探测一下,如果还是不行,就要一点点找原因了。
DSC00014.jpg


  

运维网声明 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-142212-1-1.html 上篇帖子: Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建) 下篇帖子: Cacti清除日志
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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