监控交换机一般使用 snmp 协议, 协议参考:snmp协议详解
导入 zabbix 官网分享的 SNMP Interfaces discovery 模板,即可配置好交换机网络接口的监控
要监控 cpu 和内存,重点是怎么获取 snmp oid
,而不同厂商不同型号的交换机监控项 oid
不一定相同,所以需要手动查询 snmp oid
应用集是对监控项的分类,这个分类有利于对整个集的监控项做操作,同时也可以用作过滤等等
创建两个应用集,分别命名为CPU
和Memory
, 之后创建的cpu以及内存的监控项分别放置在相应的应用集中
对于 cpu 和 内存,不同厂商,不同型号的 snmp oid
都不一样,需要查询官方文档找到 oid 的前一部分,并且使用 snmpwalk
来获取 oid 后部分,下面列出几个交换机 cpu 和内存的监控配置
通过 华为信息查询助手 页面可以在线查看华为交换机 MIB
然后我们使用 1.3.6.1.4.1.2011.6.3.4.1.2
去查询完整的 snmp oid
查询到后缀为 1.1.0
,那么完整的 snmp oid
就是 1.3.6.1.4.1.2011.6.3.4.1.2.1.1.0
, 有时候 snmpwalk
会输出多行,取最后面值非0的那一行。同时,对比下交换机上真实的 cpu 使用率,看数值是否一致
华为S系列无法直接获取到使用率,只能获取到内存总量和空闲内存量,然后通过计算来获取到内存使用率
可以看到,内存总量为1.3.6.1.4.1.2011.6.3.5.1.1.2
, 内存空闲量为1.3.6.1.4.1.2011.6.3.5.1.1.3
发现有 5 个值,这是因为该交换机是框式交换机,有几个板卡,一般只监控主控单板的数据
框式交换机参考:https://blog.csdn.net/Pipcie/article/details/78961416
我们只需要监控 master
的内存使用,在图中显示master
的卡槽是 4,那么对应 snmpwalk
中的截图也就是 0.4.0
,一般而言是这样,但是如果有多个chassis
, 情况有所不同,没有这种对应关系,需要手动通过查询当前内存使用,来找到具体的 oid 后缀
计算的空闲使用率为 173192544
, 与上面 snmpwalk
输出图中 0.4.0
的数据最为接近,基本可以确定master 板卡的 oid 后缀为 0.4.0
, 那么我们需要的完整 oid 为1.3.6.1.4.1.2011.6.3.5.1.1.3.0.4.0
如果master 板卡空闲内存的的 oid 后缀为 0.4.0
, 那么其内存总量后缀也是 0.4.0
那么内存总量完整 oid 为 1.3.6.1.4.1.2011.6.3.5.1.1.2.0.4.0
至此,华为S7703系列内存使用率监控项完成
实际上并不是所有的 S7703 系列master 板卡内存 oid 后缀都为 0.4.0
, 需要手动通过 snmpwalk
查询
h3c 的交换机有直接获取到内存使用率的 oid,比华为交换机方便
cpu 使用率OID: 1.3.6.1.4.1.25506.2.6.1.1.1.1.6.slot
内存使用率OID: 1.3.6.1.4.1.25506.2.6.1.1.1.1.8.slot
cpu 使用率OID:1.3.6.1.4.1.2011.10.2.6.1.1.1.1.6.slot
内存使用率OID: 1.3.6.1.4.1.2011.10.2.6.1.1.1.1.8.slot