Files
Distributed-Prometheus/README.md
root c4825c2d27 feat: 引入 vmauth 鉴权与严格多租户
- 对外端口统一为 18428(vmauth 入口),VM 不再直接暴露宿主机端口
- 边缘 vmagent 与中央 Prometheus remote_write 增加 basic auth
- 支持 tenants.csv 驱动的 per-tenant 写入/查询隔离,并提供管理员跨租户只读查询
- 更新 Grafana provisioning 与部署/文档

Made-with: Cursor
2026-04-22 11:41:13 +00:00

3.5 KiB
Raw Blame History

Distributed-Prometheus

分布式 Prometheus 监控系统:中央收集、边缘上报、多用户多设备。


架构概览

边缘 targets.csv → update-configs.sh → target-onvif / target-ping / target-topology
边缘 vmagent 抓取 → remote_write → 中央 VictoriaMetrics
中央 Prometheus 抓取本地 + 查 VictoriaMetrics → 告警 + Grafana

边缘将指标推送到中央 vmauth18428带鉴权再转发到 VictoriaMetrics如果启用严格多租户central-server/config/vmauth/tenants.csv),每个边缘节点用独立账号并写入各自 tenant实现数据与查询隔离。

管理员要看所有租户:在 central-server/.env 配置 VMAUTH_ADMIN_USER/VMAUTH_ADMIN_PASSWORD。该账号可跨租户读取(通过 /select/<tenant_id>/prometheus/...Grafana 建议用“数据源变量”在多租户数据源之间切换查看。


项目结构

Distributed-Prometheus/
├── central-server/          # 中央节点
│   ├── config/              # 配置prometheus、alertmanager、grafana
│   ├── apps/                # 自建应用tile-cache、topology-editor
│   └── data/                # 运行时数据gitignore
│
├── edge-agent/              # 边缘节点(可多台)
│   ├── config/              # 配置vmagent、blackbox、targets.csv
│   └── apps/                # 自建应用onvif-exporter
│
└── doc/                     # 文档

快速开始

顺序:中央 → 边缘(边缘上报中央,中央须先就绪)

# 1. 中央
cd central-server && cp env.example .env && bash deploy.sh

# 2. 边缘(本机同机)
cd edge-agent && bash deploy.sh --local

# 2. 边缘(跨机)
cd edge-agent && cp env.example .env
# 编辑 .env 中 CENTRAL_SERVER_HOST=中央IP
bash deploy.sh

访问地址(默认)

服务 端口 URL
Grafana 3000 http://localhost:3000
Prometheus 9091 http://localhost:9091
vmauthVictoriaMetrics 入口) 18428 http://localhost:18428
Alertmanager 9093 http://localhost:9093
GPS 标注助手 4080 http://localhost:4080
边缘 vmagent 9092 http://localhost:9092

Grafana 默认 admin/admin123查边缘数据选数据源 VictoriaMetrics


监控目标targets.csv

边缘监控目标在 edge-agent/config/targets.csv,部署时自动生成 target-onvif.jsontarget-ping.json

修改 targets.csv 后:手动执行 cd edge-agent/config && ./update-configs.sh(或重新 deploy.shvmagent 每 5 分钟自动重载,无需重启。

详见 doc/TARGETS_AND_MONITORING.md


文档

类别 文档
部署与配置 doc/README.md 部署步骤、DEPLOYMENT_GUIDE
架构 ARCHITECTURE 容器关系、数据流
中央 CENTRAL_SERVER_CONFIGcentral-server/CONFIGURATION.md
边缘 EDGE_AGENT_CONFIGTARGETS_AND_MONITORING
告警 ALERTING 规则与 Alertmanager
扩展 ONVIF_ALTERNATIVESTIANDITU_CONFIGUSER_MANAGEMENT
运维 TROUBLESHOOTINGBEST_PRACTICES