文章总结: 文档阐述了基于Categraf与Grafana的千台级主流交换机统一监控方案。通过适配华为、华三、思科设备的SNMP配置并利用RecordingRules归一化指标,成功解决了异构设备监控难题。方案涵盖接口流量、光模块状态及系统性能等核心指标,提供了完整配置文件与可视化模板,建议运维人员下载并根据实际情况修改IP与团体名以实现快速部署。 综合评分: 88 文章分类: 解决方案,安全运营,安全建设,网络安全,安全工具
网络监控:一套适配超1000台主流品牌交换机的Grafana监控仪表板
原创
小斐Lab
网络小斐
2025年12月25日 14:58 浙江
大家好,我是小斐呀。
最近把华为、华三、思科交换机等设施统一做好的监控采集适配,实现统一采集器、统一平台、统一指标、统一仪表板从而实现架构上的完美集成,我都想定制一个基于夜莺开源版本开箱即用的网络监控平台,现在还是需要复制、粘贴、修改等点点点操作,还不够开箱傻瓜式运行,屏蔽底层配置。应该有很多小伙伴希望开箱即用这样子还是快捷省事。
在上面 四统 的场景中,所有的采集都是夜莺开源的 Categraf 下的 SNMP 插件,当然各类网络设备采集配置规范化还是需要自己适配写好,当然我在星球中都写好适配了,直接无脑套用采集配置和记录规则即可。
指标统一
华三、华为、思科交换机采集侧需要不同的采集配置文件,由于交换机也有一些小异同:
- 华为和华三交换机园区和数据中心区别,园区和数据中心指标单位有异同,那么得到的数据也有异同,故需要区分开来
- 华为和华三交换机盒式设备和框式设备关于系统模块的指标做筛选的正则有所异同,写配置的时候需要注意
- 思科系列类型甚多,交换机类型不同对应指标的
oid也是不同,需要适配多套 - 因单位的不同,故园区和数据中心的采集原始指标不一样,最终指标统一使用记录规则来实现
基础的逻辑就是如何,让指标统一,并且指标携带的标签都一致后,那么仪表板和告警也就可以统一。
指标名称
交换机采集后最终的指标名称如下所示:
ICMP 探测类指标
| 指标名 | 含义 | 单位 / 取值 | 典型用途 | | — | — | — | — | | snmp_icmp_up | ICMP 探测是否成功 | 1=可达,0=不可达 | 设备存活性判断 | | snmp_icmp_rtt | ICMP 往返时延 | ms | 网络延迟、链路质量 | | snmp_icmp_packet_loss | ICMP 探测丢包率 | % | 链路稳定性分析 |
接口状态与能力指标
| 指标名 | 含义 | 单位 / 取值 | 说明 | | — | — | — | — | | snmp_interface_admin_state | 接口管理状态 | 1=up,2=down | 是否被人为关闭 | | snmp_interface_oper_state | 接口运行状态 | 1=up,2=down | 实际物理状态 | | snmp_interface_high_speed | 接口标称速率 | Mbps | 带宽能力基线 | | snmp_interface_mtu | 接口 MTU | Bytes | 大包/隧道排障 | | snmp_interface_type | 接口类型 | ifType 枚举值 | 过滤虚拟接口 |
接口流量(字节)
| 指标名 | 含义 | 单位 | 说明 | | — | — | — | — | | snmp_interface_in_octets | 接口入方向累计字节数 | Bytes | 需配合 rate() | | snmp_interface_out_octets | 接口出方向累计字节数 | Bytes | 带宽计算基础 |
接口异常与质量指标
| 指标名 | 含义 | 单位 | 工程意义 | | — | — | — | — | | snmp_interface_in_errors | 入方向错误包数 | Counter | 光模块/物理层问题 | | snmp_interface_out_errors | 出方向错误包数 | Counter | 对端或链路异常 | | snmp_interface_in_discards | 入方向丢弃包数 | Counter | 队列满 / QoS | | snmp_interface_out_discards | 出方向丢弃包数 | Counter | 设备性能瓶颈 |
光模块基础环境指标
| 指标名 | 含义 | 单位 | 工程说明 | | — | — | — | — | | snmp_optical_temperature_celsius | 光模块当前温度 | ℃ | 持续偏高 → 模块老化或散热异常 | | snmp_optical_voltage_volts | 光模块工作电压 | V | 电压漂移可能导致模块不稳定 | | snmp_optical_bias_current_milliamperes | 激光器偏置电流 | mA | 电流升高通常意味着激光器衰减 |
实时光功率指标
| 指标名 | 含义 | 单位 | 工程说明 | | — | — | — | — | | snmp_optical_rx_power_dbm | 接收光功率(实时值) | dBm | 判断链路光衰、光纤质量 | | snmp_optical_tx_power_dbm | 发送光功率(实时值) | dBm | 判断发光能力、模块健康 |
接收光功率(RX Power)阈值
| 指标名 | 含义 | 单位 | 用途 | | — | — | — | — | | snmp_optical_rx_power_high_warn_dbm | RX 光功率高告警阈值 | dBm | 防止光功率过载 | | snmp_optical_rx_power_low_warn_dbm | RX 光功率低告警阈值 | dBm | 判断光衰是否过大 |
发送光功率(TX Power)阈值
| 指标名 | 含义 | 单位 | 用途 | | — | — | — | — | | snmp_optical_tx_power_high_warn_dbm | TX 光功率高告警阈值 | dBm | 激光器异常检测 | | snmp_optical_tx_power_low_warn_dbm | TX 光功率低告警阈值 | dBm | 发光能力下降判断 |
设备可用性 / SNMP 状态
| 指标名 | 含义 | 单位 / 取值 | 工程说明 |
| — | — | — | — |
| snmp_up | SNMP 采集是否成功 | 1=成功,0=失败 | 仅表示 SNMP 通,不代表设备在线 |
| snmp_uptime | 设备运行时长(Ticks) | TimeTicks | 常用于重启判断 |
| snmp_uptime_seconds | 设备运行时长 | 秒 | snmp_uptime 的秒级版本 |
设备状态性能
| 指标名 | 含义 | 单位 | 说明 | | — | — | — | — | | snmp_system_entity_uptime_seconds | 设备实体(主控/板卡)运行时长 | 秒 | 判断单板是否重启 | | snmp_system_cpu_usage_percent | 系统 CPU 使用率 | % | 持续高值 = 转发/控制压力 | | snmp_system_mem_usage_percent | 系统内存使用率 | % | 防止内存泄漏 | | snmp_system_entity_temp_celsius | 设备实体温度 | ℃ | 主控 / 板卡 / 电源温度 | | snmp_system_fan_status | 风扇运行状态 | 1=正常,其它=异常 | 影响整机散热 | | snmp_system_power_status | 电源模块状态 | 1=正常,其它=异常 | 双电源容灾关键 |
监控架构
在 Categraf 中写好配置文件后,我们就可以利用下面的架构,把采集到的指标数据转储到 Nightingale 下,然后转储到时序数据库中,做持久化存储,建议使用 VictoriaMetrics 做后端时序数据库,由于后续的 Grafana 仪表板的数据源都是基于 VictoriaMetrics 时序数据库而构建的,为了避免自行修改数据源以及某些函数只在 VictoriaMetrics 才有,所以推荐优先使用 VictoriaMetrics 。
写好配置文件把配置放入到 Categraf 对应的目录中,如下所示:
华三交换机的全套适配配置文件如下:
- snmp_h3c_system.toml
- snmp_h3c_optical.toml
- snmp_h3c_interface.toml
- recording_rule.json
- grafana_vm.json
华为交换机的全套适配配置文件如下:
- snmp_huawei_system.toml
- snmp_huawei_optical.toml
- snmp_huawei_interface.toml
- recording_rule.json
- grafana_vm.json
思科交换机的全套适配配置文件如下:
- snmp_huawei_system.toml
- snmp_huawei_optical.toml
- snmp_huawei_interface.toml
- recording_rule.json
- grafana_vm.json
其中 grafana_vm.json 文件内容是一样的,可以在这三者任意目录下找到这个文件导入到 Grafana 中即可。
每个品牌都有一个 recording_rule.json 文件,这个是夜莺控制台下的记录规则,我们需要导入,目的就是把指标名称和单位做统一换算,为统一可视化模版和告警做前置工作。
toml 采集配置文件就需要微调,把自己的 IP 和 团体名 进行修改好后,就可以直接采集了。
这些文件都放在网盘之中,大家可以直接去套用,我这两天也录制一个简单视频放 B 站上。
数据面板
在夜莺控制台中我们可以基于指标新建交换机的快捷视图列表:
采集的指标汇总我们可以在夜莺控制台中查看到:
同时导入我提供的记录规则,把 recording_rule.json 文件导入夜莺的记录规则之中:
打开 Grafana 导入 grafana_vm.json 即可看到指标数据:
这些是基于以上采集的指标做的基础的面板,还可以根据自己的需求进行自定义修改。
end
如果您的环境下也有多个品牌的网络设备需要统一化采集和监控,也想构建一套比较合适的网络基础设施统一监控告警系统,可以试试这套开源架构,有深入需求可以加我沟通。
我建立了一些对关于网络和基础设施等相关的监控告警群,针对这块的有需求或者想沟通交流,可以加入到群里交流即可,可公众号后台私信加我,我拉你进群。
📣欢迎朋友们关注公众号📢📢:【网络小斐】!
🙋♂️有想法的朋友也可以加我沟通,朋友🔘做个点赞之交!😂😂
欢迎点赞 👍、收藏 💗、关注 💡 三连支持一下,我们下期见~✨
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:网络小斐 小斐Lab《网络监控:一套适配超1000台主流品牌交换机的Grafana监控仪表板》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论