本文共 1552 字,大约阅读时间需要 5 分钟。
Cacti千兆网卡监控不准确
首先要确认客户端SNMP协议版本是支持64位的,检测方法是:
[root@monitoring ~]# snmpwalk -c artronmon -v2c localhost ifHCInOctets
IF-MIB::ifHCInOctets.1 = Counter64: 40446140069
IF-MIB::ifHCInOctets.2 = Counter64: 2276403193
如果有数据说明支持,否则升级你的SNMP到5.3以上版本
Consoleàmanagementàdevices,点击”add”,在SNMP Version中选择”Version 2”
Consoleàmanagementàdevices,选择已经添加的主机,点击打开,在SNMP Version中选择”Version 2”
Consoleàmanagementàdevices,点击”add”,设置好相关数据,点击”save”,在主机配置界面点击”Great graph for this host”出现如下界面,在”Select a graph type”中选择In/Out Bits (64-bit Counters),再选择对于的网卡,点击”Create”。
Consoleàmanagementàdevices,选择已经添加的主机,点击打开,点击”data soures list”,找到网卡选项,点击打开,如下,在”OutPut Type ID”中选择”In/Out Bits(64-bits counters)” ,然后点击”save”保存会提示你修改Maximum Value值,修改为1000。
默认cacti获取的是bits(比特率)数据,而我们在服务器上看到
的是Bytes(字节),所以数据时不匹配,虽然我们通常都说**M或者**G,但是实际上差距是8倍。换算公式为Bytes*8=Bits
这里主要是监控时间的设置,例如:
我有台服务器,在某2分钟流量是70Mb/s,但是我cacti是设置没5分钟抓取一次,
这样我在cacti中看到的数据应该是224MB/s
这个数据比较奇特,我们看下怎么来的
首先系统显示的是bytes(字节/秒,通常我们称之为小b),换算成Cacti的数据应该是
70*8=560MB/s(比特率/秒,通常我们称之为大B),那么我们在cacti中看到的应该是
560MB/S才对,怎么会出现224MB/s呢?
这就是cacti获取时间的影响了,cacti获取的是5分钟的数据,然后除以300(s),
显示为这5分钟平均流量,而这台服务器5分钟内,除了这两分钟其他时间都是0,
服务器流量应该是70*2*60+0*3*60=8400Mb(字节)
换算比特率8400*8=67200MB(比特率)
除以300(s)=67200/300=224MB/s(比特率/秒)
所以我们这里看到的是224MB/s的数据,如果我们希望数据精确度高,那么可以将
Cacti监控时间设置为1分钟,服务器的承受压力也会增加5倍左右
这里面有个问题,cacti监控网络的时候可能出现一个非常高的值,解决的方法就是
限定最大值