// the find
prometheus-pve/prometheus-pve-exporter
Exposes information gathered from Proxmox VE cluster for use by the Prometheus monitoring system
A Prometheus exporter that scrapes a Proxmox VE node or cluster via its API and turns status, resource usage, HA, replication, backup-coverage and subscription data into metrics. Built for anyone running Proxmox at home-lab or small-to-mid cluster scale who wants it in Grafana instead of clicking through the PVE web UI.
Metric coverage is genuinely wide for a niche exporter - node/VM/CT status, storage, HA state, qdevice, replication lag, and even which guests aren't covered by any backup job, which is the kind of thing people forget to monitor until it bites them. Collector flags (--no-collector.config, etc.) show real awareness of scrape cost at scale - the README explicitly warns that the config collector is one API call per guest and should be disabled on big clusters. Auth is flexible (password or API token, file or env vars), and it can run either on each PVE node or centrally with target-based scraping, so it fits both single-node homelabs and larger clusters.
The exporter's own HTTP endpoint takes a free-text `target` query param with no auth of its own - if you expose port 9221 beyond localhost, anything that can reach it can make the exporter hit arbitrary hosts with your configured PVE credentials, and the README's security guidance is just a generic 'don't expose this to the internet' caution rather than anything concrete. Self-signed cert handling is weak: the documented options are import into the OS trust store or set verify_ssl: false, no cert pinning or custom CA bundle path. Getting complete node-level metrics for a cluster requires scraping every node individually since there's no aggregation point, which is extra Prometheus config work the docs wave at but don't solve. The codebase is small (a handful of collector files), so there's effectively one or two people's worth of domain knowledge behind each metric mapping - fine until a PVE API version changes something subtle.