一、核心方案:官方 Zabbix 插件(生产首选)
Grafana 社区标准插件 alexanderzobnin-zabbix-app,通过 Zabbix JSON-RPC API 读取监控数据、触发器告警、主机、监控项、趋势数据,无需改动 Zabbix 原有采集存储逻辑。
1. 安装插件命令
grafana-cli plugins install alexanderzobnin-zabbix-app systemctl restart grafana-server
2. 配置数据源步骤

- Grafana → Configuration → Plugins,搜索 Zabbix 并启用插件
- Data Sources → Add data source → 选择 Zabbix
- 关键配置:
- URL:
http://Zabbix地址/api_jsonrpc.php - Zabbix 账号密码(需有读取主机、监控项权限)
- 开启
Trends(查看多天历史数据大幅提速)
- URL:
- Save & Test 连通校验


3. 插件完整能力
- 读取 CPU、内存、磁盘、网络等所有监控项指标绘图
- 内置
Zabbix Problems面板,展示未恢复告警触发器 - 支持模板变量、正则批量筛选多主机 / 多监控项
- 图形标注(Annotations)展示 Zabbix 历史告警事件
- Grafana 内直接配置基于 Zabbix 指标的告警
- 可与 Prometheus、MySQL 等数据源混在同一个大盘


二、第二种方案:直连 Zabbix 数据库(Direct DB)
插件支持直接连接 Zabbix MySQL/PostgreSQL,跳过 API 直接查询 history/trends 表:
- 优势:查询长周期历史数据速度更快,减少 Zabbix Web 服务压力
- 缺点:需要给 Grafana 分配数据库只读账号,维护权限更繁琐;Zabbix 库结构升级可能兼容出问题
- 适用:超大历史数据查询场景,常规环境推荐 API 方案
三、两种对接方案对比
| 对比项 | API 对接(推荐) | 直连数据库 |
|---|---|---|
| 部署复杂度 | 低,仅需 Zabbix 账号 | 高,需开放数据库权限 |
| 兼容性 | 跟随 Zabbix 版本适配稳定 | Zabbix 库结构变更易失效 |
| 长周期查询性能 | 一般,依赖 Trends 聚合 | 更快,直接读聚合表 |
| 可读取内容 | 指标、告警、主机、事件、SLA | 仅原始时序数值 |
| 运维风险 | 无数据库访问权限泄露 | 存在数据库访问安全隐患 |
四、Zabbix+Grafana 搭配的优缺点
优点
- 弥补 Zabbix 原生界面简陋、图表交互差的短板,支持热图、仪表盘、多维度大屏
- 统一监控视图:Zabbix(物理机 / 传统设备)+ Prometheus(容器)放在同一 Grafana 页面展示
- 社区海量现成 Linux、数据库、网络设备 Grafana 模板,一键导入使用
- 告警分发渠道比 Zabbix 原生更丰富,统一告警出口
缺点
- 额外维护一套 Grafana 服务,增加运维组件
- API 方式查询超长时间范围(数月)数据性能较差,必须开启趋势聚合
- 依赖插件,Zabbix 大版本升级可能出现插件兼容故障
- 无法替代 Zabbix 核心采集、自动发现、资产管理功能,仅做展示层
五、典型使用流程
- Zabbix 负责采集、存储、触发器基础告警
- Grafana 通过插件拉取 Zabbix 指标
- 制作统一可视化大屏,同时混合 Prometheus 容器指标
- Grafana 统一配置大屏告警,推送企业微信 / 钉钉

