# PromdataPanel 多源 Prometheus 服务器监控展示大屏。支持对接多个 Prometheus 实例,实时聚合展示所有服务器的 CPU、内存、磁盘、带宽等关键指标,并提供可视化节点分布图。 ## 功能特性 - 🔌 **多数据源管理** - 支持对接多个 Prometheus 实例(Node_Exporter / BlackboxExporter) - 📊 **指标自动聚合** - 自动汇总所有数据源的 NodeExporter 指标,实时计算全网负载 - 🌐 **网络流量统计** - 24 小时流量趋势图,实时带宽(Rx/Tx)求和显示 - 🗺️ **节点分布可视化** - 自动识别服务器地理位置,并在全球地图上展示实时连接状态与延迟 - ⚡ **毫秒级实时性** - 深度优化查询逻辑,支持 5s 采集频率的实时动态展示 - 📱 **响应式与美学设计** - 现代 UI/UX 体验,支持暗色模式,极致性能优化 ## 快速安装 ### 方式一:一键脚本安装 (推荐) 在 Linux 服务器上,您可以使用以下脚本一键完成下载、环境检测、依赖安装并将其注册为 Systemd 系统服务: ```bash # 下载安装最新版本 (默认 v0.1.0) VERSION=v0.1.0 curl -sSL https://git.littlediary.cn/CN-JS-HuiBai/PromdataPanel/raw/branch/master/install.sh | bash ``` ### 方式二:手动安装 #### 1. 环境要求 - **Node.js** >= 18 - **MySQL** >= 8.0 - **Valkey** >= 7.0 (或 Redis >= 6.0) #### 2. 配置与启动 1. 克隆代码库:`git clone https://git.littlediary.cn/CN-JS-HuiBai/PromdataPanel.git` 2. 复制配置文件:`cp .env.example .env` 3. 安装依赖:`npm install --production` 4. 启动服务:`npm start` #### 3. 系统初始化 首次运行后,访问 `http://your-ip:3000/init.html`,按照引导完成 MySQL 数据库和 Valkey 缓存的连接。 ## 使用指引 ### 1. 添加 Prometheus 数据源 点击页面右上角的 ⚙️ 按钮进入设置,添加并测试您的 Prometheus HTTP 地址。 ### 2. Prometheus 采集配置 建议在 `prometheus.yml` 中设置采集周期为 `5s` 以实现平滑的实时动态效果: ```yaml global: scrape_interval: 5s scrape_configs: - job_name: 'nodes' static_configs: - targets: ['your-server-ip:9100'] ``` ## 技术栈 - **Runtime**: Node.js - **Framework**: Express.js - **Database**: MySQL 8.0+ - **Caching**: Valkey / Redis - **Visualization**: ECharts / Canvas - **Frontend**: Vanilla JS / CSS3 ## LICENSE MIT License