VictoriaMetrics Agent
- It's a collection agent
- Drop-in replacement for the
Prometheus scraperand/orPrometheus remote_writeforwarder. - It's
stateless(aside from its disk buffer) - Scales horizontally by sharding scrape targets across a set of vmagents (-promscrape.cluster.* flags).
Features
- Service Discovery
-
It discovers targets (Kubernetes SD, EC2 SD, static configs, etc.) using a config that is essentially
Prometheus scrape_configs -
Scrapping
-
scrapes
/metrics, applies relabeling, and forwards samples. -
Ingestion gateway
-
Can also
receive data pushedto it (Prometheus remote_write, Influx, Graphite, OpenTSDB, DataDog, OTLP…) and re-forward it. So it's both a scraper and a proxy/ingest gateway. -
Buffering
-
Has an on-disk persistent queue (-remoteWrite.tmpDataPath). If the downstream (vminsert) is unreachable, it buffers to disk and retries — this is critical for the cross-account case where the link can blip.
-
Fan-out
-
You can give it multiple
-remoteWrite.urlflags and it writes to all of them (useful for writing to two regions/clusters), replicating the data. -
Relabeling & filtering: drop/keep series, rewrite labels, add external labels (e.g. cluster, account, customer), aggregate with stream aggregation (-streamAggr) to reduce cardinality before it ever hits storage.