使用Cacti监测系统与网络性能_2

三、Cacti介绍

RRDTool的绘图功能非常强大,不过由于RRDTool的命令非常复杂繁多,并且不包含数据采集的功能,所以非常难以入门。有很多喜爱RRDTool的程序员为其写应用的平台或脚本,而Cacti就是其中的佼佼者。

Cacti是一套完全面向RRDToolB/S系统,它在MySQL数据库中存储了所有RRDTool创建图像需要用到的信息以及管理信息。

Cacti的主要功能有:

  • 数据定时采集

  • 图像绘画与显示

  • 树状的主机和图像管理

  • RRDTool信息管理

  • 用户和权限管理

  • 模板导入导出

Cacti使用snmpget命令采集数据,使用RRDTool绘图。它的界面简洁直观,让你根本无需明白RRDTool的众多参数即可轻易的绘出漂亮的图形。此外,它还提供了强大的数据管理和用户管理功能。在图像管理上,Cacti采用了树状结构的查看界面,在用户的管理上,能对用户的权限进行细致的划分,甚至支持使用LDAP进行用户验证。不得不提的是Cacti还提供模板的功能,自己可以为某项监测内容建立模板,也可以导入别人做好的模板。

Cacti的架构:

整个Cacti系统由4个部分组成(如图3):

Cacti页面(PHP)——用户控制的平台,用户在此进行所有的设置;

SNMP采集工具——Unix下使用 Net-SNMP软件包自带的“snmpget”和“snmpwalk”等程序,windows下使用phpsnmp功能;

RRDTool绘图引擎——性能数据的存储和绘画图像;

MySQL数据库——储存RRDTool绘图所需的信息,如模板、rra、主机对应的信息等,要注意的是MySQL数据库并不保存性能数据,性能数据保存在RRDTool自己的数据库格式rrd文件中。

架构

3Cacti的架构

Cacti的工作流程(如图4

  1. 定时采集数据:

Cacti会定时运行数据采集脚本,使用“snmpget”命令或其它自己定义的方式进行数据的采集;

  1. 存储数据:

使用RRDTool的“update”指令将采集到的数据储存到rrd文件中;

  1. 用户要查看某台设备的流量:

CactiPHP页面上点击该设备->

Cacti在数据库中寻找该设备对应的rrd文件的名称->

Cacti运行命令让RRDTool进行绘图;

工作流程

4Cacti的工作流程

1 2 3 4 5


4 Responses to “使用Cacti监测系统与网络性能_2”

  1. VampireLOrd Says:

    1.HOST TEMPLATE 这里是不是怎么选都无所谓得 还是? 如果是cisco6509 是不是也算 Cisco Router
    2.Downed Device Detection 这里ICMP ping能通 UDP ping 居然不能通 为什么?
    3.snmp 协议版本是不是可以随便选?
    4.snmp 密码哪里输入啊?
    5.加了设备,在Device栏里居然还是说 No Hosts, 郁闷阿!
    期盼解答 qq 28964533

  2. joecen Says:

    1、不是,选适合你的Host Template。cisco的设备理论上选CISCO Router;

    2、这个功能我没用;

    3、不是,你用什么版本的snmp就选什么版本;

    4、snmpv3才有密码的概念,选择snmp v3即可看到输入框;

    5、估计是升级没成功导致;

    qq基本作废了。

  3. zhangyong Says:

    我想确认一下,cacti是不是只能监控某个设备?对于这个设备上的应用程序能否一并监控!?或者可不可以将我们应用程序的数据转换为某种可识别的数据模板,达到生成图表的目的!
    另外请教下高手,有没有什么工具可监控Windows应用程序的?推荐下!谢谢

  4. joecen Says:

    监控什么都可以,只要你添加了自己的模板。

    windows下面如果使用snmp的话,需要安装第三方snmp软件,因为windows的snmp似乎能监控的东西不多。你也可以自己编写脚本进行数据监测。

Leave a Reply