一、什么是 Zabbix 模板?
🔍 最简定义
模板是预定义的监控配置集合。
它把一组监控项、触发器、图表、宏等组合成一个可复用的“标准监控模型”。
一个模板可以包括:
✅ Items(监控项)
✅ Triggers(触发器/告警规则)
✅ Graphs(图表)
✅ Screens(大屏/视图)
✅ Discovery(自动发现规则)
✅ Macros(通用参数)
👇 用模板的好处(企业级意义)
二、为什么要用自定义模板?
尽管社区有很多现成模板,但“照抄”并不能解决实际业务问题。
📌 常见痛点
❌ 默认模板太基础
❌ 没有业务指标
❌ 阈值不合理
❌ 图太多看不懂
❌ 告警泛滥或不足
🤔 为什么要自定义?
每个环境不同
应用架构不一样
业务 KPI 不一样
行业级别有特定需求
金融:需要 SLA 告警逻辑
电商:需要交易 RT/成功率监控
避免告警疲劳
自定义告警逻辑,减少无效告警
三、好用的 Zabbix 模板去哪找?
1)Zabbix 自带模板库
📍 Zabbix 官网(Documentation → Templates)
https://www.zabbix.com/documentation/current/en/manual/config/templates
特点:
官方维护
与版本兼容更强
质量稳健
常见:
Template OS Linux
Template OS Windows
Template App MySQL
Template App Apache
👉 适合基础监控,但不够业务化
2)Zabbix Share 社区模板(最经典)
https://www.zabbix.com/integrations
这是全球最大的 Zabbix 模板共享站:
📌 网络设备
📌 系统服务
📌 数据库
📌 中间件
📌 云监控
📌 DevOps 指标
典型分类:
网络(Cisco/Juniper/HP/…
存储(NetApp/EMC)
中间件(Kafka/Redis)
数据库(Oracle/MySQL/PostgreSQL)

3)GitHub 开源模板仓库
zabbix的模板仓库。
https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates

选择对应的zabbix的版本的分支选择模板进行下载


官方认可的社区魔板仓库
https://github.com/zabbix/community-templates?utm_source=chatgpt.com

4)专业厂商/博客收集专题
一些技术公众号/个人博客长期整理:
📌 掘金/知乎/ZBLogger
📌 Zabbix China 社区
📌 IT 运维博客(小蒋运维 / 老吴监控笔记)
这些资源往往配带:
➡ 导入说明
➡ 阈值配置示例
➡ 告警逻辑解释
https://monitoringartist.github.io/zabbix-searcher/

四、怎么导入/使用模板(实战步骤)
步骤一:下载模板文件
一般是 .xml 格式或者yaml格式

步骤二:前往 Zabbix 前端:数据收集 → 模板 → 导入模板


步骤三:关联到 Host(主机)
进入 Host → Templates → Add
选择刚导入的 Template
步骤四:检查宏值/全局变量
很多模板依赖宏:
例如:
{$MYSQL.PASSWORD}
{$SNMP_COMMUNITY}
没有宏就无法采集/触发告警。
五、服务器 & 网络设备经典模板清单
服务器类模板
实战建议
Linux + Agent2
Windows + Agent2
Nginx/MySQL/Redis 模板结合业务
网络设备类模板(SNMP)
实战建议
SNMP 版本选 v3 更安全
社区模板要注意:OID 是否被支持设备覆盖
六、自定义模板怎么做?
1. 先定义业务指标
不要跳过这一句:
监什么?为什么要监?什么时候告警?
示例:
业务交易 RESPONSE_TIME > 500ms 持续 3 min 报警
TPS < 100/s 连续 5 min 报警
2. 基础监控 + 业务监控 分类
3. 自定义触发器
Name: High CPU Load 5m
Expression: {Template OS Linux:system.cpu.load[percpu,avg1].avg(5m)}>2
Severity: High4. 图表 & 图形视图
把关键指标放到 Dashboard 或自定义 Screen:
📍 CPU/Load/MEM/DISK
📍 业务 qps / response_time
📍 错误码比率
5. 告警策略设计
七、企业级监控模板实践建议
建议 1:所有模板要有版本管理
使用 Git 管理你的自定义模板:
templates/
linux-os.xml
nginx-app.xml
mysql-db.xml
建议 2:使用宏统一参数管理
比如:
{$SNMP_COMMUNITY}
{$MYSQL_ROOT_PASSWORD}
{$APP_ENV}
建议 3:每个模板都配文档说明
说明内容包括:
📌 监控项说明
📌 告警逻辑解释
📌 阈值设定理由
📌 关联宏说明
建议 4:定期审查告警逻辑
监控不是一次性工程,而是持续体系。
八、常见踩坑与解决
⚠️ 踩坑 1:模板导入后没有触发器触发
👉 检查:是否关联到 Host?是否有数据?是否定义了宏?
⚠️ 踩坑 2:SNMP 设备无法采集
👉 检查:SNMP 版本、社区字符串、访问控制、OID 表支持
⚠️ 踩坑 3:告警太频繁
👉 检查:触发器逻辑 / 抖动抑制 / 平滑平均
九、监控模板工具推荐(提升效率)
📌 Zabbix Template Editor
可视化编辑模板
📌 Zabbix API + 自动化模板同步脚本
批量更新模板、批量应用 Host
📌 Grafana + Zabbix Plugin
可视化 Dashboard 丰富拓展