VictoriaMetrics Cluster Playground
A multi-node VictoriaMetrics cluster with vminsert, vmselect, and vmstorage components.
๐ก For use cases that don't require clustering, check out the single-node playground.
๐ง System Components
| Machine | Component | Port | Purpose |
|---|---|---|---|
| gateway | vminsert | 8480 | Accepts incoming metrics and distributes them across storage nodes |
| gateway | vmselect | 8481 | Queries data from storage nodes and merges results |
| gateway | vmagent | 8429 | Scrapes metrics from cluster components and writes to vminsert |
| storage-01, storage-02 | vmstorage | 8482 | Stores time-series data on disk |
VictoriaMetrics cluster components
๐ ๏ธ Tools
curl: Used to interact with the VictoriaMetrics HTTP API directly
๐ฏ Getting Started
Writing Metrics
From the dev-machine terminal:
Write a metric through vminsert:
curl -d 'my_custom_metric{env="playground"} 42' \
http://gateway:8480/insert/0/prometheus/api/v1/import/prometheus
Querying Metrics
Query through vmselect:
curl -s 'http://gateway:8481/select/0/prometheus/api/v1/query?query=up' | jq
Query the custom metric written above:
curl -s 'http://gateway:8481/select/0/prometheus/api/v1/query?query=my_custom_metric' | jq
Querying with vmui
Open the vmui tab to access VictoriaMetrics' built-in query interface. It supports MetricsQL with autocompletion, query tracing, and a variety of visualization options.
Checking Cluster Health
Check vmstorage status on storage nodes (from dev-machine):
curl -s http://storage-01:8482/metrics | grep vm_rows
curl -s http://storage-02:8482/metrics | grep vm_rows
Check vmagent scrape targets:
curl -s http://gateway:8429/targets
๐ก You can check the scrape config in the playground at /etc/vmagent/scrape.yaml.
๐ Learn More
๐งฉ Related Content
๐งช Playgrounds
Happy learning! ๐
A real VM, not a container
Get root on a VM with its own kernel, so Docker, Kubernetes, and systemd just work.
Read the docs โ
SSH from browser or CLI
Use the built-in web terminal, or connect with labctl ssh, plain ssh, scp, or rsync.
Read the docs โ
Drive it with AI
Let Claude, Codex, or any MCP client start this playground and run commands in it.
Read the docs โ
Expose HTTP(S) ports
Give any web app running inside the VM a public URL - for yourself or to share with others.
Read the docs โ
Share terminals
Invite others into your terminal session, or open it yourself from another device.
Read the docs โ
Customize with init scripts
Add shell scripts that run at boot to install packages, clone repos, or seed test data.
Read the docs โ
Private networking
VMs reach the internet via NAT with no public IP; several VMs share bridge networks.
Read the docs โ
Ephemeral or persistent
By default, VMs are destroyed when the session ends; enable persistence to keep the disks for next time.
Read the docs โ
Built-in container registry
A private registry.iximiuz.com for every playground to share images across services and VMs.
Read the docs โ