--- title: VictoriaMetrics created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, monitoring, time-series, metrics, prometheus, performance, go, production] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Monitoring, https://github.com/VictoriaMetrics/VictoriaMetrics] --- # 📊 VictoriaMetrics > **La base de donnĂ©es time-series ultra-performante** : drop-in replacement de Prometheus, 10-100× plus rapide Ă  l'ingestion, jusqu'Ă  70× moins de RAM. Le choix du production Ă  grande Ă©chelle. ## 📋 Informations GĂ©nĂ©rales | Champ | Valeur | | :--- | :--- | | **Site web** | [victoriametrics.com](https://victoriametrics.com/) | | **GitHub** | [VictoriaMetrics/VictoriaMetrics](https://github.com/VictoriaMetrics/VictoriaMetrics) | | **License** | Apache-2.0 | | **Langage** | Go | | **Étoiles GitHub** | 17.1k ⭐ | | **DerniĂšre MAJ** | 2026-06-07 | | **CatĂ©gorie** | [[cat-monitoring|Monitoring]], Time Series Database | ## 📝 Description **VictoriaMetrics** est une **base de donnĂ©es time-series (TSDB)** conçue comme un **drop-in replacement de Prometheus**, avec des performances nettement supĂ©rieures en termes de : - **Vitesse d'ingestion** : jusqu'Ă  20× plus rapide que Prometheus - **Consommation RAM** : 10-70× moins de RAM - **Compression disque** : 5-10× moins d'espace disque - **ScalabilitĂ©** : conçue pour gĂ©rer des **milliards de sĂ©ries actives** C'est le choix naturel quand Prometheus atteint ses limites (typiquement au-delĂ  de **5-10 millions de sĂ©ries actives** ou quand l'ingestion sature). Composants de l'Ă©cosystĂšme : - ✅ **vmstorage** : le moteur de stockage TSDB - ✅ **vminsert** : rĂ©ception des mĂ©triques (Prometheus remote write, InfluxDB, OpenTSDB, CSV, JSON) - ✅ **vmselect** : exĂ©cution des requĂȘtes (PromQL, MetricsQL) - ✅ **vmagent** : scraper (remplace prometheus dans le scraping) - ✅ **vmauth** : proxy d'authentification - ✅ **vmalert** : alerting (compatible avec alertmanager) - ✅ **vmgateway** : API gateway multi-tenant - ✅ **vmui** : interface web native pour requĂȘter - ✅ **Cluster mode** : sharding et rĂ©plication pour scale horizontale - ✅ **Drop-in Prometheus** : imite les APIs de Prometheus (`/api/v1/query`, etc.) - ✅ **MetricsQL** : extension de PromQL avec des fonctions supplĂ©mentaires **Public cible** : **DevOps, SRE, plateforme**, **Ă©quipes qui font du monitoring Ă  grande Ă©chelle**. Pour un homelab avec quelques serveurs, [[app-prometheus]] standard suffit largement. **Comparaison** : VictoriaMetrics est Ă  [[app-prometheus]] ce que **PostgreSQL avec extensions** est Ă  **SQLite** : la mĂȘme philosophie, mais conçue pour le production Ă  grande Ă©chelle. C'est aussi un concurrent direct de **InfluxDB**, **TimescaleDB**, **M3DB** et **Thanos** (qui est un autre moyen de scaler Prometheus). ## 🚀 Installation ### Option 1 : Docker Compose (single-node, recommandĂ© pour dĂ©marrer) ```yaml # docker-compose.yml version: '3.8' services: victoriametrics: image: victoriametrics/victoria-metrics:latest container_name: victoriametrics restart: unless-stopped ports: - "8428:8428" # API + UI volumes: - vm-data:/storage command: - "--storageDataPath=/storage" - "--httpListenAddr=:8428" - "--retentionPeriod=12" # 12 mois - "--memory.allowedPercent=60" labels: - "traefik.enable=true" - "traefik.http.routers.vm.rule=Host(`vm.example.com`)" - "traefik.http.routers.vm.entrypoints=websecure" - "traefik.http.routers.vm.tls.certresolver=letsencrypt" vmagent: image: victoriametrics/vmagent:latest container_name: vmagent restart: unless-stopped depends_on: - victoriametrics volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml command: - "--promscrape.config=/etc/prometheus/prometheus.yml" - "--remoteWrite.url=http://victoriametrics:8428/api/v1/write" volumes: vm-data: ``` **Exemple de `prometheus.yml` pour vmagent :** ```yaml scrape_configs: - job_name: node static_configs: - targets: ['node-exporter:9100'] - job_name: cadvisor static_configs: - targets: ['cadvisor:8080'] ``` ### Option 2 : Binaire unique (bare-metal) ```bash wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.106.0/victoria-metrics-linux-amd64-v1.106.0.tar.gz tar -xzf victoria-metrics-linux-amd64-v1.106.0.tar.gz ./victoria-metrics-prod -storageDataPath=/vm-data ``` ### Option 3 : Cluster mode (production Ă  grande Ă©chelle) Voir [la doc officielle cluster](https://docs.victoriametrics.com/cluster-victoriametrics/). ## ⚙ Configuration Initiale 1. **AccĂ©der Ă  l'UI** : `http://IP:8428/vmui/` (interface web native) 2. **Tester une requĂȘte** : `http://IP:8428/api/v1/query?query=up` 3. **Brancher vmagent** : configurer le scrape config et le remote write vers vmstorage 4. **Importer les dashboards Grafana** : Grafana supporte nativement VictoriaMetrics comme datasource 5. **Configurer les alertes** : dĂ©ployer `vmalert` et connecter Ă  `alertmanager` 6. **Backup** : `vmbackup` (incrĂ©mental) ou `vmstorage` en mode cluster avec rĂ©plication ## 🔄 Alternatives ### Open Source - [[app-prometheus]] — La rĂ©fĂ©rence, en Go, simple et Ă©prouvĂ© - **Thanos** — Pour scaler Prometheus (extension) - **Cortex** — TSDB multi-tenant (trĂšs complexe) - **M3DB** — TSDB distribuĂ©e par Uber - **InfluxDB** — TSDB gĂ©nĂ©raliste, Ă©crit en Go - **TimescaleDB** — Extension PostgreSQL pour time-series - **QuestDB** — TSDB en Java, ultra-rapide ### Comparaison VictoriaMetrics vs alternatives | CritĂšre | VictoriaMetrics | Prometheus | Thanos | InfluxDB | | :--- | :--- | :--- | :--- | :--- | | RAM (10M sĂ©ries) | ~2 Go | ~20 Go | ~30 Go | ~10 Go | | Ingestion rate | 1M+ samples/s | 100k samples/s | 100k+ | 500k+ | | Stockage | 0.4 bytes/sample | 2-3 bytes/sample | 2-3 bytes/sample | 1 byte/sample | | PromQL | ✅ (MetricsQL) | ✅ | ✅ | ❌ (Flux) | | Drop-in Prometheus | ✅ | N/A | ✅ | ❌ | | Cluster natif | ✅ | ❌ | ✅ | ✅ (Enterprise) | | ComplexitĂ© | Moyenne | Basse | ÉlevĂ©e | Moyenne | **Verdict** : VictoriaMetrics est **le choix pragmatique** quand Prometheus montre ses limites. **Plus simple que Thanos**, **plus rapide qu'InfluxDB**, **plus scalable que Prometheus seul**. ### PropriĂ©taires (ce que VictoriaMetrics remplace) - **Datadog Metrics** (trĂšs cher) - **New Relic Metrics** (payant) - **InfluxDB Cloud** (payant au-delĂ  du free tier) - **AWS Timestream** (payant AWS) - **Azure Data Explorer** (payant Azure) - **Splunk Infrastructure Monitoring** (trĂšs cher) ## 🔐 SĂ©curitĂ© - **Auth basique** : `--httpAuth.username` et `--httpAuth.password` - **TLS** : via reverse proxy ([[app-traefik]]) ou mTLS natif (Enterprise) - **Multi-tenant** : via `vmauth` (headers, JWT, mTLS) - **HTTPS** via [[app-traefik]] obligatoire - **Firewall** : l'API write (8429) ne doit **jamais** ĂȘtre exposĂ©e publiquement - **Backups** : chiffrer les sauvegardes (elles contiennent toutes vos mĂ©triques) ## 📚 Ressources - [GitHub VictoriaMetrics/VictoriaMetrics](https://github.com/VictoriaMetrics/VictoriaMetrics) - [Documentation officielle](https://docs.victoriametrics.com/) - [Blog technique](https://victoriametrics.com/blog/) - [Benchmarks vs Prometheus](https://victoriametrics.com/blog/our-results-are-better-than-prometheus/) - [VictoriaMetrics Cloud (managed)](https://victoriametrics.com/products/victoriametrics-cloud/) ## Pages LiĂ©es - [[cat-monitoring]] — CatĂ©gorie Monitoring - [[app-prometheus]] — Prometheus standard - [[app-grafana]] — Dashboards - [[app-cadvisor]] — MĂ©triques containers - [[app-traefik]] — Reverse proxy HTTPS - [[observabilite]] — Vue d'ensemble observabilitĂ© - [[checklist-monitoring-minimal]] — Checklist