【免费下载链接】community-templates
Zabbix Community Templates repository
导读:本文围绕 Zabbix 社区模板仓库(community-templates)中的Template_A10_AX_Series模板,系统讲解如何通过 SNMP agent 对 A10 Networks AX 系列应用交付控制器(ADC / 负载均衡设备)进行硬件健康与系统资源监控。你将掌握该模板的自动发现(LLD)机制、全部监控项与触发器设计、OID 与单位换算细节,以及从导入、绑定到告警调优的完整实战方法。
模板背景:A10 AX 系列与 A10-AX-MIB
A10 AX 系列是 A10 Networks 推出的应用交付控制器(ADC)产品线,广泛用于数据中心的应用负载均衡、SSL 卸载与应用加速场景。此类设备通常承担关键业务入口流量,其 CPU、内存、磁盘、风扇、电源等硬件健康状态直接影响业务可用性,因此需要 7×24 小时监控。
Template_A10_AX_Series正是为此设计的一款 Zabbix 原生模板:它完全基于SNMP agent(type: SNMP_AGENT)轮询设备上的A10-AX-MIB(企业私有 MIB,企业号22610,所有监控 OID 均以.1.3.6.1.4.1.22610为前缀),无需在被监控设备上安装任何额外代理。模板定义在 Zabbix 官方模板分组Templates SNMP Devices下(见 5.4 模板 YAML),包含 15 个基础监控项、3 条自动发现规则、若干触发器原型与 4 张预置图形。
该模板在仓库中提供 3 个 Zabbix 大版本适配文件:
| Zabbix 版本 | 文件格式 | 仓库相对路径 |
|---|---|---|
| 5.0 | XML(含 applications 应用集) | template_a10_ax_series.xml |
| 5.4 | YAML(使用 tags 标签体系) | template_a10_ax_series.yaml |
| 6.0 | YAML(使用 tags 标签体系) | template_a10_ax_series.yaml |
其中 5.0 版本对应 5.0 README,5.4 / 6.0 版本对应 5.4 README 与 6.0 README。5.4 与 6.0 的模板内容完全一致,仅在导出格式版本号上不同。
快速部署:导入模板并关联主机
第一步:导入模板。在 Zabbix Web 界面进入「数据采集 → 模板 → 导入」,选择与你 Zabbix 版本匹配的template_a10_ax_series.yaml(5.4/6.0)或.xml(5.0)文件上传。导入成功后,可在「模板」列表中看到名为A10_AX_Series(模板技术名)的模板。
第二步:绑定主机。为 A10 AX 设备创建主机,在「主机 → 模板」中链接A10_AX_Series,并确保主机已启用 SNMP 接口(IP 与端口 161)。
第三步:配置 SNMP 凭据。该模板没有定义任何用户宏(README 明确标注 "There are no macros links in this template",见 5.4 README),也不存在模板链接(template links)。这意味着模板的 SNMP 轮询凭据完全依赖 Zabbix 主机层面的标准宏:默认使用全局宏{$SNMP_COMMUNITY}作为只读 community string,SNMP 版本通常为 v2c。如需为不同设备设置不同 community,请在主机级覆盖该宏。
第四步:等待 LLD 生效。三条发现规则按 300 秒间隔运行(见下文),首次发现后会自动创建对应的原型监控项。之后即可在「监测 → 最新数据」中看到采集结果,并自动获得 4 张预置图形。
自动发现规则(Discovery Rules):风扇、电源与电压
模板的核心亮点是使用 Zabbix 的低级别发现(LLD)机制,通过 SNMP 遍历 A10-AX-MIB 中的表对象,动态识别设备上实际存在的风扇、电源模块和电压传感器——这些硬件数量因机型/配置而异,无法用固定监控项覆盖。三条发现规则均在 5.4 模板 YAML 中定义:
| 发现规则 | 采集键(key) | SNMP OID(发现用) | 更新间隔 |
|---|---|---|---|
| FAN Discovery | axFanName | discovery[{#SNMPVALUE},.1.3.6.1.4.1.22610.2.4.1.5.9.1.2] | 300s |
| Power Supply Discovery | axPowerSupplyName | discovery[{#SNMPVALUE},.1.3.6.1.4.1.22610.2.4.1.5.12.1.2] | 300s |
| Power Supply Voltage Discovery | axPowerSupplyVoltageDescription | discovery[{#SNMPVALUE},.1.3.6.1.4.1.22610.2.4.1.5.11.1.3] | 300s |
三者均使用 SNMP agent 类型的discovery[{#SNMPVALUE},<OID>]语法:Zabbix 会对目标 OID 对应的 MIB 表进行遍历,将每个表条目的值(通常是名称/描述字符串)写入宏{#SNMPVALUE},同时把表索引写入宏{#SNMPINDEX},随后由各原型(item prototypes)基于这两个宏展开成具体监控项。
FAN Discovery:风扇转速与状态
FAN Discovery 依据 A10-AX-MIB 的axFanName(风扇名称表)发现风扇,并自动创建两类原型监控项:
| 原型监控项 | 键 | 原型 OID | 更新间隔 | 单位 |
|---|---|---|---|---|
| Speed of FAN "$1" | axFanSpeed["{#SNMPVALUE}"] | .1.3.6.1.4.1.22610.2.4.1.5.9.1.4.{#SNMPINDEX} | 300s | RPM |
| Status of "$1" FAN | axFanStatus["{#SNMPVALUE}"] | .1.3.6.1.4.1.22610.2.4.1.5.9.1.3.{#SNMPINDEX} | 60s | —(FLOAT) |
风扇状态axFanStatus的取值语义在模板描述中完整给出(见 5.4 模板 YAML):
| 状态值 | 含义 |
|---|---|
| 0 | Failed(故障) |
| 4 | OK-fixed/high(正常-固定/高速) |
| 5 | OK-low/med(正常-低速/中速) |
| 6 | OK-med/med(正常-中速/中速) |
| 7 | OK-med/high(正常-中速/高速) |
| -2 | not ready(未就绪) |
| -1 | unknown(未知) |
Power Supply Discovery:电源模块状态
Power Supply Discovery 依据axPowerSupplyName表发现电源模块,自动创建原型:
| 原型监控项 | 键 | 原型 OID | 更新间隔 | 备注 |
|---|---|---|---|---|
| Status of Power Supply "$1" | axPowerSupplyStatus["{#SNMPVALUE}"] | .1.3.6.1.4.1.22610.2.4.1.5.12.1.3.{#SNMPINDEX} | 30s | 默认DISABLED(需手动启用) |
值得注意:该原型在模板中默认处于禁用状态(status: DISABLED,见 5.4 模板 YAML),且更新间隔仅 30 秒,是所有监控项中最频繁的。启用后,它对发现出的每个电源模块进行状态轮询,触发"电源缺失"与"电源关闭"两级告警。
Power Supply Voltage Discovery:电源电压状态
Power Supply Voltage Discovery 依据axPowerSupplyVoltageDescription表发现电压传感器,自动创建原型:
| 原型监控项 | 键 | 原型 OID | 更新间隔 |
|---|---|---|---|
| Status of Power Supply Voltage "$1" | axPowerSupplyVoltageStatus["{#SNMPVALUE}"] | .1.3.6.1.4.1.22610.2.4.1.5.11.1.2.{#SNMPINDEX} | 60s |
模板描述特别注明:该电压状态监控仅在硬件平台提供传感器数据时受支持("This is only supported for the platform where the sensor data is available",见 5.4 模板 YAML)。对于没有电压传感器输出的机型,这条原型对应的发现结果为空,属于正常现象。
基础监控项(Items):系统资源与硬件健康
除 LLD 原型外,模板还直接定义了 15 个固定监控项,覆盖系统资源(CPU/内存/磁盘)、硬件健康(温度/风扇/电源)与设备身份(固件/序列号)。下表汇总了全部监控项及其 OID(OID 均来自 5.4 模板 YAML):
CPU(更新间隔 60s,单位 %)
| 监控项 | 键 | OID |
|---|---|---|
| Control CPU Usage (5 sec) | axSysAverageControlCpuUsage | .1.3.6.1.4.1.22610.2.4.1.3.4.0 |
| CPU Usage (5 sec) | axSysAverageCpuUsage | .1.3.6.1.4.1.22610.2.4.1.3.3.0 |
| Data CPU Usage (5 sec) | axSysAverageDataCpuUsage | .1.3.6.1.4.1.22610.2.4.1.3.5.0 |
三个 CPU 项分别对应"总 CPU"、"控制平面 CPU"(Control)与"数据平面 CPU"(Data),反映 A10 ADC 控制/转发分离架构的负载特征,均表示最近 5 秒的平均使用率。
内存(单位 B)
| 监控项 | 键 | OID | 更新间隔 | 预处理 |
|---|---|---|---|---|
| Total memory | axSysMemoryTotal | .1.3.6.1.4.1.22610.2.4.1.2.1.0 | 3600s | MULTIPLIER × 1024 |
| Used memory | axSysMemoryUsage | .1.3.6.1.4.1.22610.2.4.1.2.2.0 | 300s | MULTIPLIER × 1024 |
磁盘(单位 B)
| 监控项 | 键 | OID | 更新间隔 | 预处理 |
|---|---|---|---|---|
| Total Disk Space | axSysDiskTotalSpace | .1.3.6.1.4.1.22610.2.4.1.4.1.0 | 3600s | MULTIPLIER × 1048576 |
| Free Disk Space | axSysDiskFreeSpace | .1.3.6.1.4.1.22610.2.4.1.4.2.0 | 300s | MULTIPLIER × 1048576 |
硬件健康(风扇 / 温度 / 电源)
| 监控项 | 键 | OID | 更新间隔 | 单位 |
|---|---|---|---|---|
| Speed of FAN #1 | axSysHwFan1Speed | .1.3.6.1.4.1.22610.2.4.1.5.2.0 | 300s | RPM |
| Speed of FAN #2 | axSysHwFan2Speed | .1.3.6.1.4.1.22610.2.4.1.5.3.0 | 300s | RPM |
| Speed of FAN #3 | axSysHwFan3Speed | .1.3.6.1.4.1.22610.2.4.1.5.4.0 | 300s | RPM |
| System Temperature | axSysHwPhySystemTemp | .1.3.6.1.4.1.22610.2.4.1.5.1.0 | 60s | °C |
| Status of Left or Lower Power Supply | axSysLowerOrLeftPowerSupplyStatus | .1.3.6.1.4.1.22610.2.4.1.5.7.0 | 60s | — |
| Status of Right or Upper Power Supply | axSysUpperOrRightPowerSupplyStatus | .1.3.6.1.4.1.22610.2.4.1.5.8.0 | 60s | — |
固定风扇项(FAN #1/#2/#3)用于覆盖常见三风扇机型的固定槽位,而 LLD 风扇项用于覆盖任意数量/命名风扇的机型,二者互为补充。左右/上下电源状态项则按设备安装朝向命名,适配不同机架的电源布局。
设备身份(更新间隔 86400s,即每天一次)
| 监控项 | 键 | OID | 值类型 |
|---|---|---|---|
| Firmware Version | axSysFirmwareVersion | .1.3.6.1.4.1.22610.2.4.1.6.3.0 | CHAR(不存储趋势) |
| Serial Number | axSysSerialNumber | .1.3.6.1.4.1.22610.2.4.1.6.2.0 | CHAR(不存储趋势) |
固件与序列号用于资产管理,模板为它们设置了trends: '0',即不保存趋势数据、只保留最新值(见 5.4 模板 YAML),可显著降低数据库存储开销。
单位换算:MULTIPLIER 预处理详解
A10-AX-MIB 原始返回值的单位与展示单位不一致,模板通过 Zabbix 预处理步骤MULTIPLIER(乘法)统一换算(见 5.4 模板 YAML):
- 磁盘:MIB 返回单位为MB,乘数
1048576(即 1024²),换算为字节后使用B作为显示单位; - 内存:MIB 返回单位为KB,乘数
1024,换算为字节后使用B作为显示单位。
换算后的监控项单位为字节,便于与触发器中的阈值(如"剩余磁盘小于 20%"、"内存使用 ≥ 90%")进行一致的数学比较,同时 Zabbix 前端会自动按 B/KB/MB/GB 人性化显示。需要说明的是,README 中描述的是 MIB 层的原始单位(MB/KB),而模板最终存储与展示的是预处理后的字节值,理解这一差异对解读数据至关重要。
触发器体系(Triggers):分层告警策略
模板的触发器分为三类:基础监控项直接挂载的触发器、发现规则下的触发器原型、以及模板级全局触发器。
基础监控项触发器(资源类,优先级 average)
| 触发器名称 | 表达式 | 说明 |
|---|---|---|
| High Control CPU Usage [{ITEM.LASTVALUE1}] | min(/A10_AX_Series/axSysAverageControlCpuUsage,5m)>90 | 控制平面 CPU 5 分钟均值超 90% |
| High CPU Usage [{ITEM.LASTVALUE1}] | min(/A10_AX_Series/axSysAverageCpuUsage,5m)>90 | 总 CPU 5 分钟均值超 90% |
| High Data CPU Usage [{ITEM.LASTVALUE1}] | min(/A10_AX_Series/axSysAverageDataCpuUsage,5m)>90 | 数据平面 CPU 5 分钟均值超 90% |
| Lower/Left Power Supply is off | last(/A10_AX_Series/axSysLowerOrLeftPowerSupplyStatus)=0 | 左/下电源关闭(类型 MULTIPLE) |
| Upper/Right Power Supply is off | last(/A10_AX_Series/axSysUpperOrRightPowerSupplyStatus)=0 | 右/上电源关闭(类型 MULTIPLE) |
CPU 触发器采用min(...,5m)>90的形式,即连续 5 分钟窗口内的最小值都超过 90% 才告警,可有效过滤瞬时尖峰误报(见 5.4 模板 YAML)。两个固定电源状态触发器类型为MULTIPLE(多状态触发,见 5.4 模板 YAML)。
模板级全局触发器(跨项比较,优先级 average)
定义于模板根级triggers段(见 5.4 模板 YAML):
| 触发器名称 | 表达式 | 逻辑 |
|---|---|---|
| Free disk space is less than 20% | max(/A10_AX_Series/axSysDiskFreeSpace,1d)<last(/A10_AX_Series/axSysDiskTotalSpace)*0.2 | 过去 1 天剩余磁盘最大值仍小于总磁盘的 20%,即持续低水位 |
| High memory usage | last(/A10_AX_Series/axSysMemoryUsage)>=last(/A10_AX_Series/axSysMemoryTotal)*0.9 | 已用内存 ≥ 总内存的 90% |
触发器原型(LLD 生成,硬件类)
| 触发器原型 | 表达式 | 优先级 | 所属发现 |
|---|---|---|---|
| FAN "{#SNMPVALUE}" is failed | last(/A10_AX_Series/axFanStatus["{#SNMPVALUE}"])=0 | high | FAN Discovery |
| Power Supply "{#SNMPVALUE}" is absent | last(/A10_AX_Series/axPowerSupplyStatus["{#SNMPVALUE}"])=2 | warning | Power Supply Discovery |
| Power Supply "{#SNMPVALUE}" is off | last(/A10_AX_Series/axPowerSupplyStatus["{#SNMPVALUE}"])=0 | warning | Power Supply Discovery |
| Power Supply Voltage "{#SNMPVALUE}" is invalid | last(/A10_AX_Series/axPowerSupplyVoltageStatus["{#SNMPVALUE}"])=0 | average | Power Supply Voltage Discovery |
告警优先级设计体现出清晰的分级策略:风扇故障为最高级(high)——风扇失效会迅速导致设备过热宕机;电源缺失/关闭为 warning——ADC 通常为双电源冗余设计,单个电源失效仍可运行,但冗余能力下降;电压异常为 average——电压异常可能预示电源老化或输入不稳。这些触发器的完整列表同时记录在 5.4 README 的 Triggers 章节。注意 README 中出现的带 "(LLD)" 后缀的重复条目,是 Zabbix 文档导出工具对原型触发器的冗余呈现,并非模板中实际存在两份告警。
预置图形(Graphs):开箱即用的可视化
模板内置 4 张图形(见 5.4 模板 YAML):
| 图形名称 | 包含监控项 | 特点 |
|---|---|---|
| CPU Usage | Control CPU / CPU / Data CPU | Y 轴固定(0–100%),三线对比 |
| Disk Space Usage | Free Disk Space / Total Disk Space | GRADIENT_LINE 渐变线 |
| Memory Usage | Used memory / Total memory | GRADIENT_LINE 渐变线 |
| Speed of FANs | FAN #1 / #2 / #3 转速 | 三线对比 |
其中 CPU Usage 图形将 Y 轴最小值/最大值设为固定(FIXED),确保三条 CPU 曲线始终以 0–100% 的统一比例尺展示,避免因自动缩放造成视觉误导。挂载模板后这些图形会自动出现在主机的「图形」菜单中,无需额外配置。
5.0 与 5.4/6.0 的差异说明
对比 5.0 XML 与 5.4/6.0 版本,可以观察到两个主要演进:
- 应用集 → 标签:5.0 使用 8 个 applications(
CPU、Disk、FAN、General、Memory、Power Supplies、Temperature、Voltage,见 5.0 XML);5.4/6.0 改为等价的Application: CPU/Disk/...标签体系,便于新版 Zabbix 的标签过滤与权限控制。 - 触发器表达式语法:5.0 使用旧式简写(如
{min(5m)}>90、{last()}=0,见 5.0 XML);5.4/6.0 使用新式完整路径语法(如min(/A10_AX_Series/axSysAverageCpuUsage,5m)>90)。监控项 OID、键名、发现规则与图形定义则完全一致。
运维建议与注意事项
- 电源状态原型默认禁用:
axPowerSupplyStatus原型及其"absent/off"告警在导入后处于禁用状态,需在「模板 → 发现规则 → Power Supply Discovery → 项目原型」中手动启用(YAML 中的status: DISABLED字段,见 5.4 模板 YAML),否则电源告警不会生效。 - 电压监控依赖硬件能力:若机型无电压传感器,Power Supply Voltage Discovery 的发现结果可能为空或长期无数据,这不是模板故障,可忽略或停用该发现规则。
- SNMP 版本与凭据:模板未内置宏,请确认主机级
{$SNMP_COMMUNITY}宏与设备的只读 community 一致,且设备管理口允许 Zabbix server/proxy 的 SNMP 访问(建议同时验证 UDP 161 可达性)。 - 更新间隔设计参考:高频项(CPU/温度/电源状态 60s)用于实时告警;低频项(磁盘总量/内存总量 3600s、固件/序列号 86400s)用于容量与资产管理,整体 SNMP 负载适中,适合大规模部署。
- 从源码核对配置:所有 OID、预处理、触发器与图形定义均可在 5.4 模板 YAML 中逐条核对,若需在导入前定制阈值(如将 CPU 告警阈值从 90% 调整),建议直接编辑 YAML 后导入,或导入后在 Zabbix 界面修改并导出保存。
【免费下载链接】community-templates
Zabbix Community Templates repository
相关推荐
Crater热重载配置:开发效率提升的环境优化
Crater热重载配置:开发效率提升的环境优化 热重载(Hot Reload)是现代前端开发中的关键技术,它允许开发者在不刷新浏览器的情况下实时查看代码更改效果
Haraka 的 data.signatures 插件:基于邮件正文签名字符串的 SMTP 入站过滤实战
Haraka 的 data.signatures 插件:基于邮件正文签名字符串的 SMTP 入站过滤实战 Haraka 是一个基于 Node.js 的事件驱动
Zabbix 8.0 监控 MikroTik RB260GSP 交换机:官方 SNMP 模板全解析与实战部署指南
Zabbix 8.0 监控 MikroTik RB260GSP 交换机:官方 SNMP 模板全解析与实战部署指南 本文以 Zabbix 官方模板库中 Mikro
指标监控可观测性告警运维
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考