运维 2025-06-24

zabbix中搭建模板

阅读次数 108 评论数 0

在这篇文章中,我将分享如何基于 Zabbix 自行编写模板,完成对华为核心交换机、深信服防火墙以及群晖 NAS(Synology)的监控与自动发现配置。所有内容均基于我在实际企业网络环境中的部署实践。

一、项目背景

在每个厂家的MIB库的对应zabbix模板库中大多数版本不一致的情况下,MIB库中OID不完善的华为交换机,不完全适配的深信服防火墙,以及属性更复杂的群晖 NAS,默认模板已经无法满足大量日常监控需求。

因此,我选择通过 SNMP + Low-level Discovery 自行编写监控项和自动发现规则,整合成自己的一套 Zabbix Template,用于企业网络、服务器、打印机、监控等硬件管理和日常告警。

二、环境前提

系统:Zabbix Server 7.0 LTS

华为核心交换机:CE6850系列、S5731S-H24T4XC-A等

深信服防火墙:AF/EF 系列(SNMPv2c 配好示例用户、IP服务器地址)

群晖NAS:Synology DS 系列(SNMPv2c 已启用)

三、华为核心交换机监控

监控项:

接口 up/down 状态 (OID: .1.3.6.1.2.1.2.2.1.8)

设备运行时长(OID:1.3.6.1.2.1.1.3.0)

接口名称:(OID:1.3.6.1.2.1.2.2.1.2.x)

上下行网卡流量速度:(OID:1.3.6.1.2.1.2.2.1.16.x(下行),1.3.6.1.2.1.2.2.1.10.x(上行))

CPU使用率:(OID:1.3.6.1.4.1.2011.6.3.4.1.3.0.0.0)

接口温度:(OID:1.3.6.1.4.1.2011.5.25.31.1.1.1.1.11.x)

内存使用率:采用内存总量(1.3.6.1.4.1.2011.5.25.31.1.1.1.1.9.67108873)/内存已使用(1.3.6.1.4.1.2011.5.25.31.1.1.1.1.10.67108873)* 100%

电源:(OID:1.3.6.1.4.1.2011.5.25.31.1.1.18.1.2)

风扇:(OID:1.3.6.1.4.1.2011.5.25.31.1.1.10.1.1)

自动发现规则 LLD:

配置使用 SNMP discovery 根据 ifDescr 或 ifName 进行接口自动发现,以及电源槽位和风扇槽位、传感器自动发现

监控项原型

在监控项原型中定义自动发现所需要的监控模板

实现技巧:

通过预处理的javascript脚本

var status = value;

if (status == "1") {

return "UP";

} else if (status == "2") {

return "DOWN";

} else {

return "testing";

}

来判断1为Up,2为down,输出为文本格式,同步使用 ifAlias 定名接口

四、深信服防火墙监控

监控项:

当前已建连接数 (OID: .1.3.6.1.2.1.1.10.0)

网口状态,每秒包数/流量

日志判断实现 (Zabbix trapper + syslog)

LLD 规则:

根据网口名称动态发现

分别生成 rx/tx 监控项

实现技巧:

使用自定义 user macro 调整 trap OID 名称

互相匹配深信服应用级别

五、群晖 NAS (Synology) 监控

监控项:

硬盘读写流量 (storageIO)

卷入充度 (storageIOLA*)

系统工作时间 uptime (via Timeticks)

自动发现:

根据 storageIODevice LLD 编写规则

给每个硬盘生成相关的读写监控项

实现技巧:

使用预处理中的每秒更改 (speed per second) 转换成系统读/写速度

使用相同规则生成统一图表 (Graph Prototype)

六、结论

通过SNMP + LLD 自定义编写模板,我们可以灵活地对不同类型的网络设备进行统一监控。目前,已培养成公司内部新项目的默认模板规范,同时为日常系统维护提供了有效保障。

zabbix告警的内置函数字段模板为:如下所示

0%