zabbix以SNMP(V2C)监控网络设备,以华为设备为例

发布于:2025-07-16 ⋅ 阅读:(14) ⋅ 点赞:(0)

zabbix服务器安装snmp(centos8以上版本)

dnf -y install net-snmp net-snmp-utils

命令用法解析

snmpwalk -v 版本 -c 团体 IP MIB

例如我要对获取snmp版本为V2C,团体为test@123,IP地址为192.168.0.1的接口信息

snmpwalk -v 2c -c test@123 192.168.0.1 ifDescr

下面讲一下华为交换机以及华为防火墙开启SNMP的方法

1.华为交换机-web

1.1开启SNMP

1.2配置SNMP团体

2.华为交换机-命令行

snmp-agent

snmp-agent community read cipher test@123

snmp-agent sys-info version v2c

snmp-agent protocol source-status all-interface

3.华为防火墙-web

4.华为防火墙-命令行

snmp-agent

snmp-agent community read cipher test@123

snmp-agent sys-info version all

snmp-agent trap enable

效果实例:

来假设一下我们的业务需求

对于交换机,我需要监控CPU,内存的使用率,以及端口的状态(UP,down)以及端口的协商速率(网线没压好导致百兆)

对于防火墙,我需要监控CPU,内存的使用率,以及wan口以及和分公司GRE vpn的隧道的流量

清晰了需求之后,我们直接根据zabbix自带的华为SNMP监控模板进行克隆,来做成自己想要的模板

模板名称以及可见名称我们可以自定义

因为对于交换机来说我需要的数据是接口数据和系统信息数据,所以多余的自动发现规则可以删除掉,只保留接口自动发现规则和MPU自动发现规则(模板的自动发现规则有5条,其他3条直接删除即可),然后修改一下发现间隔为5s

发现间隔的修改方法为点击Network interfaces discovery,然后修改更新间隔为5s(s是秒,m是分钟,h是小时)

来配置一下接口自动发现规则的监控项,只保留我们所需要的;Speed 接口速率 (10M,100M,1G,10G,20G等等)

Operational status 接口状态(up down),其实的监控项原型可以删除(模板监控项原型有9个,删除了其他7个);然后修改一下监控项更新间隔为5s,保存3天。

点击Interface {#IFNAME}({#IFALIAS}): Speed,修改更新间隔和历史记录(d为天)

也可以为了后期更直观的理解监控项的意义,直接修改名称为中文

例如Interface {#IFNAME}({#IFALIAS}): Speed修改为 接口 {#IFNAME}({#IFALIAS}): 速率

这些数据我只需要查看,不需要进行告警所以我删除了模板中的触发器类型(MPU Discovery同理)

来配置MPU Discovery自动发现清单来获取我们想要的CPU以及内存状态的数据,做了这些调整:

1.删除其他不需要的监控项原型

2.修改了监控项原型的更新间隔,历史记录,趋势保留时间

3.修改了监控项原型Memory utilization为内存

4.删除了触发器

然后修改模板本身自带的监控项

1.做完自动发现清单的调整,还会剩下的12个监控项,对于我来说其他的没有意义,我只保留了System description(型号版本信息);其他监控项进行了删除

2.修改监控项System description名称为系统信息

3.修改更新间隔为5s,历史记录保留1天,因为此项信息不会变化看到就行

5.效果展示

5.1.cpu和内存使用情况监控

5.2.接口速率和接口状态监控

5.3.系统信息监控

6.防火墙监控

防火墙对比交换机我们还需要查看接口流量,所以我们直接复制交换机模板,然后直接在交换机模板的自动发现规则处添加流量的规则,在此之前我们需要了解到华为USG防火墙上行流量和下行流量的的MIB,这里我直接贴出来方便大家直接使用

类型

解释

SNMP OID(MIB)

进接口

(下行流量)

该接口入方向通过的总字节数,包括分桢的数据

ifInOctets

1.3.6.1.2.1.2.2.1.10

出接口

(上行流量)

该接口出方向通过的总字节数,包括分桢的数据。

ifOutOctets

1.3.6.1.2.1.2.2.1.16

直接复制接口速率的监控项原型,然后修改

1.名称根据实际情况修改(比如这个监控项原型是上行流量,我就改名称为上行流量),去掉({#IFALIAS})是因为显示内容太多了,不方便查看

2.键值以及SNMP OID均需要进行修改,上行流量监控的键值就为net.if.Octets[ifOutOctets.{#SNMPINDEX}];SNMP OID为1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}(下行流量监控的键值就为net.if.Octets[ifInOctets.{#SNMPINDEX}];SNMP OID为1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}

3.因为需要每秒的流量数据所以更新间隔为1s,历史记录可以久一点保留7天。

再修改预处理的内容,1是每秒更改,2是自定义倍数8。

防火墙的CPU和内存监控和交换机不同(MIB不一样),所以不能直接用交换机模板的,需要自己根据MIB创建监控项,以下是查询到的MIB

类型

解释

SNMP OID(MIB)

CPU使用率

实体CPU使用率

取值范围:0~100

缺省值:0

1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.67108873

内存使用率

USG6000:整机内存使用率

取值范围:0~100

1.3.6.1.4.1.2011.5.25.31.1.1.1.1.7.67108873

根据查询到的MIB配置监控项

1.设置监控项名称

2.键值可以随便填写(为什么这里的键值可以随便填写,因为之前的是自动发现监控项原型,监控项原型会创建出多个监控项的,所以值有对应的格式,但是单个监控项随我们填)

3.填写实际的SNMP OID(MIB)值,这里监控CPU就是1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.67108873

来看以下华为USG监控的最终效果

接口状态,速率以及流量速率

CPU和内存监控


网站公告

今日签到

点亮在社区的每一天
去签到