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

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和内存监控

相关推荐
乌恩大侠6 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
Mr.朱鹏7 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
mengge.cloud7 小时前
存储技术基础小白教程
linux·运维·服务器·wpf·存储
tang777898 小时前
反爬虫场景下代理IP池的动态扩容与失效IP自动清理方案实现
linux·服务器·网络·爬虫代理·住宅代理ip
新时代牛马9 小时前
Linux 系统调用与IPC 完整篇:从syscall 入口、VDSO 到pipe/shm/futex 选型
linux·运维·服务器
小HANN11 小时前
Linux建站实战:CentOS7+LNMP 从零部署 ECShop 开源电商系统
linux·运维·服务器·经验分享
三84411 小时前
SSRF 从入门到实战:原理、危害与基础利用
服务器·网络安全·ssrf·#web安全
平原201812 小时前
GPT Image 2 / Nano Banana API成本拆解:$0.0081、84.7%与单张有效成本
linux·服务器·gpt
T1mzhou13 小时前
ARM64 Linux 6.10内核启动流程2-rootfs 怎么挂上
linux·服务器·前端
2301_8150910113 小时前
TCP 并发服务器模型:4 种 IO 模型完整梳理
服务器·网络·tcp/ip