Grafana + Zabbix Plugin + Image Renderer 离线部署与前端操作手册
适用环境 :Kylin V10 SP3
部署方式 :离线 RPM + 离线插件安装
文档版本:v1.0
一、环境信息
| 项目 | 版本/说明 |
|---|---|
| 操作系统 | Kylin V10 SP3 |
| Grafana | 10.4.19(Enterprise) |
| Zabbix Plugin | alexanderzobnin-zabbix-app 5.2.x |
| Image Renderer | grafana-image-renderer 3.11.6 |
| 监控目标 | 45 台主机 CPU 使用率 |
| 数据类型 | History(历史数据),不使用 Trend |
二、前置准备
将以下离线安装包上传至服务器 /tmp 目录:
/tmp/grafana-enterprise-10.4.19-1.x86_64.rpm
/tmp/alexanderzobnin-zabbix-app-5.2.x.zip
/tmp/plugin-linux-x64-glibc.zip
三、安装 Grafana
bash
rpm -ivh /tmp/grafana-enterprise-10.4.19-1.x86_64.rpm
验证安装:
bash
grafana-server -v
预期输出:
Version 10.4.19
四、安装 Zabbix 数据源插件
安装插件前需先停止 Grafana 服务。
4.1 停止 Grafana
bash
systemctl stop grafana-server
4.2 创建插件目录并解压
bash
mkdir -p /var/lib/grafana/plugins
cd /var/lib/grafana/plugins
unzip /tmp/alexanderzobnin-zabbix-app-5.2.x.zip
4.3 检查并修改权限
bash
ls -lh /var/lib/grafana/plugins/
预期目录:alexanderzobnin-zabbix-app
bash
chown -R grafana:grafana /var/lib/grafana/plugins/alexanderzobnin-zabbix-app
五、安装 Image Renderer 插件
5.1 停止 Grafana
bash
systemctl stop grafana-server
5.2 解压并重命名
bash
cd /var/lib/grafana/plugins
unzip /tmp/plugin-linux-x64-glibc.zip
mv plugin-linux-x64-glibc grafana-image-renderer
最终路径:
/var/lib/grafana/plugins/grafana-image-renderer
5.3 检查目录结构
bash
ls /var/lib/grafana/plugins/grafana-image-renderer/
应包含:
plugin.json
plugin_start_linux_amd64
chrome-headless-shell/
img/
5.4 修改权限
bash
chown -R grafana:grafana /var/lib/grafana/plugins/grafana-image-renderer
chmod +x /var/lib/grafana/plugins/grafana-image-renderer/plugin_start_linux_amd64
注意:
plugin_start_linux_amd64是 Grafana 插件进程文件,不要直接手动执行。
六、解决 Chrome 浏览器依赖
6.1 检查依赖缺失
bash
ldd /var/lib/grafana/plugins/grafana-image-renderer/chrome-headless-shell/linux-132.0.6781.0/chrome-headless-shell-linux64/chrome-headless-shell | grep "not found"
6.2 安装缺失依赖
若出现 libgbm.so.1 not found:
bash
yum provides '*/libgbm.so.1'
yum install mesa-libgbm
ldconfig
验证:
bash
ldconfig -p | grep libgbm
预期输出:libgbm.so.1
七、验证 Chrome 运行
切换至 grafana 用户测试:
bash
su -s /bin/bash grafana
bash
/var/lib/grafana/plugins/grafana-image-renderer/chrome-headless-shell/linux-132.0.6781.0/chrome-headless-shell-linux64/chrome-headless-shell \
--headless \
--no-sandbox \
--disable-gpu \
--version
预期输出:
Google Chrome for Testing 132.0.6781.0
测试完成后退出:
bash
exit
八、启动 Grafana 并检查
8.1 启动服务
bash
systemctl daemon-reload
systemctl enable grafana-server
systemctl start grafana-server
8.2 查看状态
bash
systemctl status grafana-server
正常状态:Active: active (running)
8.3 检查 Image Renderer 注册
bash
journalctl -u grafana-server.service -n 100 --no-pager | grep -i render
正常日志:plugin registered pluginId=grafana-image-renderer
九、配置 Zabbix 数据源
- 浏览器访问:
http://<Grafana服务器IP>:3000 - 默认登录:
- 用户名:
admin - 密码:
admin(首次登录需修改密码)
- 用户名:
9.1 添加数据源
路径:Connections → Data sources → Add data source → 选择 Zabbix
9.2 填写连接信息
| 配置项 | 值 |
|---|---|
| Zabbix API URL | http://<Zabbix服务器IP>/zabbix/api_jsonrpc.php |
| 用户名 | Admin(或具有 API 权限的账号) |
| 密码 | ****** |
9.3 测试连接
点击 Save & Test
预期结果:Data source connected
十、创建 CPU 监控 Dashboard
10.1 新建 Dashboard
路径:Dashboards → New Dashboard → Add visualization
10.2 选择数据源
选择已配置的 Zabbix 数据源。
10.3 Query 配置
| 配置项 | 值 |
|---|---|
| Group | 选择目标主机组 |
| Host | All(全部主机) |
| Item | CPU usage in percents |
十一、图表与数据设置
11.1 关闭 Trend 数据
在 Query 选项中:
- Use trends :
OFF(关闭)
目标:使用 Zabbix History 历史数据,不使用 Trend 趋势数据。
11.2 可视化类型
- Visualization :
Time series
11.3 单位设置
路径:Standard options → Unit → Percent (0-100)
11.4 图例设置
- Legend :
ON - 显示内容 :主机名列表,如
server01,server02...server45
十二、导出 PNG 图片
- 进入 Panel 右上角
⋮菜单 - 选择
Share - 在弹窗中选择
Render image
应显示选项:
- Share link
- Share embed
- Share snapshot
- Render image
- 点击后自动生成并下载 PNG 图片。