zabbix 大流量断图
一. 环境介绍
系统版本:Centos7.4 zabbix-agent 版本:zabbix-agent 3.4.7二. 问题现象
在使用zabbix的snmp方式的监控端口流量时,某一个图总是断断续续的(被监控设备有较大的端口流量),经常会出现几分钟内没有图像的问题。原因分析
这是因为item中是使用MIB中的ifInOctets(OID:1.3.6.1.2.1.2.2.1.10)和 ifOutOctets(OID:1.3.6.1.2.1.2.2.1.16)作为获取端口流量的依据的。其表示某接口流入或流出的数据总量。 这里解释一下,因为取到的值是数据的总量,所以我们在设置item时会使用前后两次取到的差值除以时间得到一个接口速率。当zabbix得到一个小于等于0的差值时就会认为取值错误。 但是这两个OID的数据类型为32位,所能表示的最大值就是2^32Byte=4GB,这是很容易就可以超出的累加值。当设备的该值累加到4GB时就会清0,然后重新进行累加。然后由于清0以后计算的差值有误(差值是小于零的数),就会出现断图的情况。三.解决方法
为了解决这个问题,需要将取值使用的OID改成ifHCInOctets(1.3.6.1.2.1.31.1.1.1.6)和ifHCOutOctets( 1.3.6.1.2.1.31.1.1.1.10),这两个OID的数据类型为64位,所能表示的最大值就是2^64Byte=16777216TB,就基本不可能再发生断图的情况了。 修改 Interface {#IFDESCR}: Bits received- 键值 net.if.in[ifHCInOctets.{#SNMPINDEX}]
- SNMP OID ifHCInOctets.{#SNMPINDEX}
- SNMP community {$SNMP_COMMUNITY}
- 键值 net.if.out[ifHCOutOctets.{#SNMPINDEX}]
- SNMP OID ifHCOutOctets.{#SNMPINDEX}
- SNMP community {$SNMP_COMMUNITY}