耗时2个月做了一个适配zabbix系统的可视化平台,提供实时监控、历史数据分析和美观的图表展示。
可能大家会觉得可视化用grafana不就可以了,确实,grafana可以满足大部分需求,最佳的开源方案,我也一直在用,只是我想突破下自己,尝试自己做一个平台。
项目后续将会持续更新迭代,欢迎大家提出报告的建议。
🎯 项目概述
ZabbixWatch 是一个基于VUE3+PYTHON+FLASK+MYSQL技术栈开发的Zabbix监控数据可视化平台,旨在为企业提供直观、美观、实时的监控大屏解决方案。通过与现有Zabbix监控系统无缝对接,将复杂的监控数据转化为易于理解的可视化图表和仪表板。
✨ 核心功能
🖥️ 实时监控大屏
-
美观的可视化界面: 现代化设计风格,支持深色主题 -
实时数据更新: 自动刷新 
📊 历史数据展示
-
主机监控: CPU、内存、系统盘、网络等系统指标实时展示 -
告警管理: 实时告警展示 -
趋势分析: 支持多时间维度的数据趋势图表 
🌐 Web站点监控-非zabbix功能
-
HTTP/HTTPS监控: 支持网站可用性和响应时间监控 -
性能分析: 响应时间、状态码、可用率统计 
⚙️ 系统管理
-
公司信息: 自定义公司名称 -
数据管理: 自动数据清理和存储优化 -
登录日志: 记录用户登录日志
Zabbix集成
ZabbixWatch与Zabbix监控系统深度集成,通过标准API接口获取监控数据:
-
版本支持: 支持Zabbix 7.0及以上版本 -
无缝对接: 支持Zabbix标准API,需简单修改现有监控配置 -
实时同步: 自动同步主机、监控项、告警等信息
配置步骤
1. 主机组配置
确保Zabbix中已创建以下主机组,系统将自动识别并统计各组主机数量:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. 监控项描述配置
确保监控项描述与系统要求一致,系统通过描述字段匹配监控数据:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
C:磁盘使用率 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
部署教程
环境要求
-
操作系统: Linux(X86_64) -
内存: 4GB+ 推荐6GB+ -
磁盘空间: 10GB+ 推荐50GB+ -
Docker: 20.10+ -
Docker Compose: 2.0+
资源消耗:
部署教程(docker-compose离线包,适配内网)
-
获取zabbixwatch-images-latest.tar.gz文件
私信: zabbixwatch
-
解压文件
tar -xzf zabbixwatch-images-latest.tar.gz
cd zabbixwatch-images-latest
-
一键安装
./deploy.sh
-
访问页面
http://你的服务器ip:8080
💡 配置提示: 修改现有监控配置,具体配置方法请参考上方zabbix集成中的对照表。
技术架构
前端技术栈
-
Vue.js 3.x: 现代化前端框架 -
Element Plus: 企业级UI组件库 -
Apache ECharts: 专业图表库 -
Vite: 快速构建工具
后端技术栈
-
Flask: 轻量级Python Web框架 -
MySQL: 可靠的关系型数据库 -
异步处理: 高性能数据采集和处理
部署架构
-
容器化: docker部署 -
负载均衡: Nginx反向代理
适用场景
企业监控中心
-
数据中心监控大屏 -
NOC(网络运营中心) -
运维团队日常监控
主机监控
-
主机CPU、内存、磁盘、网络等系统指标监控 -
主机性能趋势分析 -
主机告警管理
管理决策
-
高管仪表板 -
运营数据展示 -
性能报告展示
版本规划
当前版本特性
-
✅ 基础监控大屏 -
✅ 实时数据展示 -
✅ Web站点监控 -
✅ 用户认证系统 -
✅ 容器化部署
未来版本规划
-
🔄 自定义图表类型 -
🔄 添加告警管理 -
🔄 支持更多监控项
技术支持
提供完善的技术支持


