VictoriaMetrics 运维手册¶
部署参数¶
| 参数 | 值 | 说明 |
|---|---|---|
| 镜像 | victoriametrics/victoria-metrics:v1.108.1 |
单节点版 |
| 数据保留 | -retentionPeriod=90d |
90 天 |
| 监听端口 | 8428 |
HTTP API |
| 存储卷 | tfrs_vmdata → /victoria-metrics-data |
Docker volume |
| 内存限制 | 1G(生产环境) | deploy.resources.limits.memory |
存储估算¶
- 100 租户 x 5 指标/分钟 x 90 天 ≈ 2GB
- VictoriaMetrics 压缩率通常 10:1,实际磁盘占用更小
常用排查命令¶
# 健康检查
curl http://localhost:8428/-/healthy
# TSDB 状态(活跃时间序列数、存储大小等)
curl http://localhost:8428/api/v1/status/tsdb
# 手动查询(即时查询)
curl 'http://localhost:8428/api/v1/query?query=llm_tokens'
# 范围查询(最近 10 分钟)
curl 'http://localhost:8428/api/v1/query_range?query=llm_tokens&start='$(date -v-10M +%s)'&end='$(date +%s)'&step=60'
# 手动写入测试数据(Prometheus exposition format)
curl -d 'llm_tokens{cluster_id="1",namespace="test",trace_id="abc",model_name="gpt-4",provider="openai"} 100' \
http://localhost:8428/api/v1/import/prometheus
# 查看所有标签名
curl http://localhost:8428/api/v1/labels
# 查看指定标签的所有值
curl 'http://localhost:8428/api/v1/label/cluster_id/values'
# 容器日志
docker logs tfrs_victoriametrics --tail 50
# 强制刷盘
curl -X POST http://localhost:8428/-/forceMerge
备份与恢复¶
方法 1:Docker volume 快照¶
# 停止容器
docker stop tfrs_victoriametrics
# 备份 volume
docker run --rm -v tfrs_vmdata:/data -v $(pwd):/backup alpine \
tar czf /backup/vmdata-backup-$(date +%Y%m%d).tar.gz -C /data .
# 恢复
docker run --rm -v tfrs_vmdata:/data -v $(pwd):/backup alpine \
sh -c "rm -rf /data/* && tar xzf /backup/vmdata-backup-YYYYMMDD.tar.gz -C /data"
# 重启
docker start tfrs_victoriametrics
方法 2:vmbackup/vmrestore(推荐生产使用)¶
参考 VictoriaMetrics 官方文档:https://docs.victoriametrics.com/vmbackup/
监控告警¶
建议监控以下指标(通过 VictoriaMetrics 自身 /metrics 端点):
vm_rows_inserted_total:写入行数(突然归零说明 remote_write 中断)vm_active_time_series:活跃时间序列数vm_free_disk_bytes:可用磁盘空间process_resident_memory_bytes:内存使用