PVE 支持添加 Graphite 或者 InfluxDB 作为指标数据的存储;在添加配置后,PVE 会主动将配置信息发送到对应的存储中,用于记录和监控 PVE 的状态
基于 Docker 容器,使用 InfluxDB 和 Grafana 对 PVE 进行监控,效果如图:

配置 InfluxDB
使用的是 InfluxDB 2 版本,使用 Flux 语法进行查询;因此需要启动 InfluxDB 2 的容器,使用 DockerCompose 方便配置
- docker-compose.yaml
version: "3"
services:
influxdb:
container_name: influxdb
image: influxdb:2.6
ports:
- "8086:8086"
volumes:
- ./data/influx/data:/var/lib/influxdb2
- ./data/influx/config:/etc/influxdb2
environment:
DOCKER_INFLUXDB_INIT_MODE: setup
DOCKER_INFLUXDB_INIT_USERNAME: admin
DOCKER_INFLUXDB_INIT_PASSWORD: qwertyuiop
DOCKER_INFLUXDB_INIT_ORG: influx
DOCKER_INFLUXDB_INIT_BUCKET: influx
DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: 123456
DOCKER_INFLUXDB_INIT_MODE它用于指定容器启动时运行的初始化模式。该变量有两个有效值:
setup: 表示在容器首次启动时,将执行InfluxDB初始化脚本并创建管理员用户。skip:表示跳过初始化脚本的执行,直接启动InfluxDB服务。
DOCKER_INFLUXDB_INIT_PASSWORD 不能设置的太简单,否则 InfluxDB 启动时会报错
DOCKER_INFLUXDB_INIT_ORG 用于指定 InfluxDB 的组织
DOCKER_INFLUXDB_INIT_BUCKET 用于指定初始化使用的 Bucket
DOCKER_INFLUXDB_INIT_ADMIN_TOKEN 用于访问时进行鉴权
配置 PVE
在 PVE 的服务器视图下,选择数据中心 - 指标服务器,选择添加 InfluxDB,输入相关的配置;协议选择 HTTP,组织添加 DOCKER_INFLUXDB_INIT_ORG 配置的值,插槽添加 DOCKER_INFLUXDB_INIT_BUCKET 配置的 Bucket, 令牌填写 DOCKER_INFLUXDB_INIT_ADMIN_TOKEN 配置的 token
添加后 PVE 就会将监控指标推送到 InfluxDB 的 Bucket 中了

配置 Grafana
启动 Grafana
- docker-compose.yaml
version: "3"
services:
# influxdb ...
grafana:
image: grafana/grafana
container_name: grafana-server
restart: always
depends_on:
- influxdb
environment:
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=admin
links:
- influxdb
ports:
- "3000:3000"
volumes:
- ./data/grafana:/var/lib/grafana
添加 InfluxDB 作为数据源
登陆 Grafana 并添加数据源,使用 InfluDB 作为数据源

在 InfluxDB 2 版本以后,添加到 Grafana 数据源变得不太方便;配置如下:
Query Language选择FluxURL填写 InfluxDB 的地址,如http://192.168.2.8:8086Access选择Server(default)(高版本的 Grfana 已不包含该选项)Auth下的配置全部关闭,不需要配置Custom HTTP Headers添加一个新的配置,Header 名称为Authorization, Value 为Token+DOCKER_INFLUXDB_INIT_ADMIN_TOKEN配置的 Token,如Token 123456(需注意中间有空格)Organization为DOCKER_INFLUXDB_INIT_ORG配置的值,如influxToken不用配置Default Bucket为DOCKER_INFLUXDB_INIT_BUCKET配置的值,如influx
配置完成后,点击 Save and Test,如果提示成功则表示配置正确
添加 Grafana 图表
在 Grafana Dashboard 中搜索 proxmox,选择支持 Flux 查询语法的图表进行添加,如添加 Proxmox [Flux],根据 ID 导入 Grafana 即可看到 PVE 的监控指标
