VictoriaMetrics can be used as long-term storage for Prometheus or for vmagent.
See [these docs](#prometheus-setup) for details.
Supports global query view. Multiple Prometheus instances may write data into VictoriaMetrics. Later this data may be used in a single query.
High performance and good scalability for both inserts and selects.
High data compression, so up to 70x more data points may be crammed into limited storage comparing to TimescaleDB.
Optimized for storage with high-latency IO and low IOPS (HDD and network storage in AWS, Google Cloud, Microsoft Azure, etc).
A single-node VictoriaMetrics may substitute moderately sized clusters built with competing solutions such as Thanos, M3DB, Cortex, InfluxDB or TimescaleDB.
Easy operation:
- VictoriaMetrics consists of a single without external dependencies.
- All the configuration is done via explicit command-line flags with reasonable defaults.
- All the data is stored in a single directory pointed by
-storageDataPath
flag.
- Easy and fast backups from
to S3 or GCS with [vmbackup] / [vmrestore].
Storage is protected from corruption on unclean shutdown (i.e. OOM, hardware reset or kill -9
) thanks to the storage architecture.
Supports metrics' scraping, ingestion and backfilling via the following protocols:
- [Metrics from Prometheus exporters]
such as node_exporter.
- Prometheus remote write API(
- InfluxDB line protocol over HTTP, TCP and UDP.
- Graphite plaintext protocol
if -graphiteListenAddr
is set.
- OpenTSDB put message, if
-opentsdbListenAddr
is set.
- HTTP OpenTSDB /api/put requests, if
-opentsdbHTTPListenAddr
is set.
- JSON line format.
- Native binary format.
- Prometheus exposition format.
- Arbitrary CSV data.
Supports metrics' relabeling. See [these docs](#relabeling) for details.
Ideally works with big amounts of time series data from Kubernetes, IoT sensors, connected cars, industrial telemetry, financial data and various Enterprise workloads.
Has open source cluster version (https://github.com/VictoriaMetrics/VictoriaMetrics/tree/cluster).
Configuration management
Prometheus scrape config can be edited with your favorite editor, its located at
vi /var/snap/victoriametrics/current/etc/victoriametrics-scrape-config.yaml
after changes, you can trigger config reread with curl localhost:8248/-/reload
.
Configuration tuning is possible with editing extra_flags:
`echo 'FLAGS="-selfScrapeInterval=10s -search.logSlowQueryDuration=20s"' > /var/snap/victoriametrics/current/extra_flags
snap restart victoriametrics`
Data folder located at /var/snap/victoriametrics/current/var/lib/victoriametrics/
.