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}
 
修改 Interface {#IFDESCR}: Bits sent
  • 键值 net.if.out[ifHCOutOctets.{#SNMPINDEX}]
  • SNMP OID ifHCOutOctets.{#SNMPINDEX}
  • SNMP community {$SNMP_COMMUNITY}
 
修改后的参数
 
 

注意

修改完成过后,在半小时内流量的峰值会很大,过了这个时间段就好了。多观察测试。
posted @ 2020-04-30 11:29  SRE运维博客  阅读(2338)  评论(0编辑  收藏  举报