- 中央:config/(prometheus,alertmanager,grafana)、apps/(tile-cache,topology-editor) - 边缘:config/(vmagent,blackbox,targets)、apps/(onvif-exporter) - env: TRAEFIK_PROVIDER、prometheus/env.example 详细说明 - 文档:README/doc 重构,EDGE_CACHE 合并到 EDGE_AGENT_CONFIG - targets.csv 更新流程说明,ARCHITECTURE 图收窄 Made-with: Cursor
4.9 KiB
4.9 KiB
最佳实践指南
部署最佳实践
1. 资源规划
中央服务器
推荐配置:
- CPU: 4 核+
- 内存: 8GB+
- 磁盘: 100GB+(用于数据存储)
- 网络: 100Mbps+
数据存储:
- 所有数据存储在
/storage分区 - 建议使用 SSD 提高性能
- 定期清理旧数据
边缘节点
推荐配置:
- CPU: 2 核+
- 内存: 2GB+
- 磁盘: 10GB+(临时存储)
- 网络: 10Mbps+(用于数据推送)
资源限制:
- 已在
docker-compose.yml中配置资源限制 - 可根据实际硬件调整
2. 网络配置
防火墙规则
中央服务器:
# 开放端口
firewall-cmd --permanent --add-port=3000/tcp # Grafana
firewall-cmd --permanent --add-port=9091/tcp # Prometheus
firewall-cmd --permanent --add-port=8428/tcp # VictoriaMetrics
firewall-cmd --permanent --add-port=9093/tcp # Alertmanager
firewall-cmd --reload
边缘节点:
- 不需要开放端口(只做数据推送)
- 确保可以访问中央服务器 8428 端口
网络优化
- 使用内网通信(如果可能)
- 配置网络 QoS(确保监控数据优先级)
- 使用 VPN 或专线(跨网络部署)
3. 安全配置
密码安全
- ✅ 修改 Grafana 默认密码
- ✅ 使用强密码
- ✅ 定期更换密码
- ✅ 不要在配置文件中硬编码密码
访问控制
- ✅ 配置 Grafana 多用户和权限
- ✅ 限制 Prometheus 访问(仅内网)
- ✅ 使用 HTTPS(生产环境)
- ✅ 配置防火墙规则
数据安全
- ✅ 定期备份配置文件
- ✅ 定期备份数据目录
- ✅ 加密敏感数据(如设备密码)
4. 监控配置
监控目标数量
建议:
- 单边缘节点:不超过 100 个目标
- 中央服务器:可支持数千个目标
- 根据硬件性能调整
抓取间隔
建议:
- 关键指标:15-30 秒
- 一般指标:60-120 秒
- 网络探测:300 秒(5 分钟)
数据保留
中央服务器:
- Prometheus: 30 天
- VictoriaMetrics: 30 天
边缘节点:
- Prometheus: 1 小时(只做临时存储)
5. 告警配置
告警规则设计
原则:
- 避免告警风暴
- 设置合理的持续时间阈值
- 使用告警抑制规则
- 区分严重程度(critical/warning)
通知渠道
推荐配置:
- Critical 告警:立即通知(短信、电话)
- Warning 告警:邮件、企业微信
- 使用告警分组减少通知数量
告警测试
- 定期测试告警规则
- 验证通知渠道
- 检查告警抑制规则
6. 性能优化
Prometheus 优化
- 减少不必要的标签
- 使用 recording rules 预计算指标
- 合理设置抓取间隔
- 使用远程写入减少本地存储压力
VictoriaMetrics 优化
- 根据数据量调整保留时间
- 定期清理旧数据
- 监控存储空间使用
Grafana 优化
- 限制仪表板面板数量
- 使用数据源缓存
- 优化查询表达式
- 使用变量减少查询次数
7. 备份和恢复
配置文件备份
# 备份所有配置文件
tar -czf config-backup-$(date +%Y%m%d).tar.gz \
central-server/config/ \
edge-agent/config/
数据备份
# 备份数据目录
tar -czf data-backup-$(date +%Y%m%d).tar.gz \
/storage/prometheus-data \
/storage/grafana-data \
/storage/victoria-metrics-data
恢复步骤
- 停止所有服务
- 恢复配置文件
- 恢复数据目录
- 重启服务
- 验证数据完整性
8. 监控和维护
监控系统自身
- 监控 Prometheus 自身指标
- 监控 VictoriaMetrics 性能
- 监控 Grafana 性能
- 监控磁盘空间使用
定期维护
- 每周检查日志
- 每月检查磁盘空间
- 每季度更新镜像版本
- 定期测试告警规则
9. 扩展性考虑
水平扩展
- 可以部署多个边缘节点
- 每个边缘节点有唯一标识
- 中央服务器可以接收多个边缘节点数据
垂直扩展
- 增加中央服务器资源
- 增加数据保留时间
- 增加监控目标数量
10. 故障恢复
服务恢复
# 重启所有服务
docker compose restart
# 重启特定服务
docker compose restart prometheus-central
# 完全重建
docker compose down
docker compose up -d
数据恢复
- 从备份恢复数据
- 检查数据完整性
- 验证监控目标状态
生产环境检查清单
部署前
- 硬件资源充足
- 网络配置正确
- 防火墙规则配置
- 备份策略制定
- 监控告警配置
部署后
- 所有服务正常运行
- 数据正常推送
- 告警规则激活
- 通知渠道测试
- 性能监控正常
运行中
- 定期检查日志
- 监控磁盘空间
- 检查告警状态
- 验证数据完整性
- 更新文档
相关文档
- 部署指南:
doc/DEPLOYMENT_GUIDE.md - 故障排查:
doc/TROUBLESHOOTING.md - 系统架构:
doc/ARCHITECTURE.md