Cacti如何实现被动数据获取
创始人
2024-07-25 05:11:35
0

  cacti 我们也用了很久了,但是它的表结构一直都没有去关心过,得空抽了半个晚上的时间,把它的库表结构大概看了下,某些字段的含义跟大家分享下:

  cacti 的数据都是存放在rrdtool 中的,数据库存放的其实只是配置数据,cacti 的逻辑对象主要分为三种,data (数据)、graph (图片)、host (设备),这在它的表设计中也能很容易的看出来。所以,就分三个大类来讨论了

  Cacti 如何实现被动数据获取

  了解到它的数据结构以后,我们就可以想办法来实现 cacti 的被动数据获取了,因为并不是所有场合, snmp 都可以取到数据的,也许有时候我们要取的 ip 在另外一个局域网里,也许我们觉得 cacti 的负载太高,不能让它取太多的数据。

  1 、方式

  方式很简单,在 cacti 中定义好 host , data , graph ,然后只要我们能定时的把数据插入到它的 rrd 文件中就可以了。

  2 、方法

  方法可以有两种:

  ***种用脚本, cacti 支持自写脚本取数据。最土的办法,就是定时的将数据推送到 cacti 的机器上,追加到一个文件里,然后 cacti 通过一个脚本读取这个文件来获取数据。

  第二种就是直接插 rrd 文件, cacti 正常的获取数据方式是用 crontab 跑 poller ,或者 spine ,去定时取数据。我们在 poller 或者 spine 的过程中不需要让它去取数据,直接跳过,而定时的从外部把数据推送进来,然后插入 rrd 文件即可。

  3 、步骤

  a 、添加一个 host (如果这个 host 无法访问到,那么可用性检查会失败,但是没关系)

  b 、添加数据源,需要 insert 以下几张表: data_local 、 data_template_data 、 data_template_data_rra 、 data_template_rrd

  c 、创建 rrd 文件,打开 data source 页面,应该已经可以看到我们添加的数据源了,打开那个数据源的 debug 模式,将 rrdtool 的命令拷贝到 shell 中执行一次即可(注意权限)

  d 、创建一个图片,需要 insert 以下几张表: graph_local 、 graph_template_graph 、 graph_template_item

  e 、定时的向 rrd 文件中插入数据(用你喜欢的方式,同时要注意 rrd 文件的权限)

【编辑推荐】

修改Cacti中rrd文件大小

Redhat下怎样安装Cacti

用Linux上的cacti去监控windows服务器(图)

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...