91cbb9063d
* app/vmagent: allow vm proto for kafka consumer and producer it should reduce network usage up to 50%. According to benchmarks without any encoding at kafka topic, it reduces traffic up to 50%. With enabled zstd at kafka topic, it shows no diffence in traffic. So it doesn't make much sense to use it. https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1225 * mention eb61a7dd68b834b08d01727a918f207700348ada at changelog * app/vmagent: bumps kafka lib version it allows compiling vmagent for arm64 machines fixes https://github.com/VictoriaMetrics/VictoriaMetrics/issues/2271 * mention d19b1a888248c96cfd7ccee00ba6f596d89be1d7 at change log * app/vmagent: adds natural concurrency for kafka consumer it should improve performance for data consumption https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1957 * mention change 0c143bb22ca2e7e0b7eec9bc84a94ee2b41626ca * Update app/vmagent/kafka/consumer.go Co-authored-by: Roman Khavronenko <roman@victoriametrics.com> * Update app/vmagent/kafka/consumer_cgo.go Co-authored-by: Roman Khavronenko <roman@victoriametrics.com> --------- Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com> Co-authored-by: Roman Khavronenko <roman@victoriametrics.com> |
||
---|---|---|
.. | ||
base | ||
builder | ||
provisioning | ||
alertmanager.yml | ||
alerts-cluster.yml | ||
alerts-health.yml | ||
alerts-vmagent.yml | ||
alerts-vmalert.yml | ||
alerts.yml | ||
docker-compose-cluster.yml | ||
docker-compose.yml | ||
Makefile | ||
prometheus-cluster.yml | ||
prometheus.yml | ||
README.md |
Docker compose environment for VictoriaMetrics
Docker compose environment for VictoriaMetrics includes VictoriaMetrics components, Alertmanager and Grafana.
For starting the docker-compose environment ensure you have docker installed and running and access to the Internet. All commands should be executed from the root directory of the repo.
To spin-up environment for single server VictoriaMetrics run the following command:
make docker-single-up
To shut down the docker-compose environment for single server run the following command:
make docker-single-down
For cluster version the command will be the following:
make docker-cluster-up
To shut down the docker compose environment for cluster version run the following command:
make docker-cluster-down
VictoriaMetrics single server
VictoriaMetrics will be accessible on the following ports:
--graphiteListenAddr=:2003
--opentsdbListenAddr=:4242
--httpListenAddr=:8428
The communication scheme between components is the following:
- vmagent sends scraped metrics to
single server VictoriaMetrics
; - grafana is configured with datasource pointing to
single server VictoriaMetrics
; - vmalert is configured to query
single server VictoriaMetrics
and send alerts state and recording rules back to it; - alertmanager is configured to receive notifications from
vmalert
.
To access vmalert
use link http://localhost:8428/vmalert.
To access vmui use link http://localhost:8428/vmui.
VictoriaMetrics cluster
VictoriaMetrics cluster environment consists of vminsert
, vmstorage
and vmselect
components.
vmselect
has exposed port :8481
, vminsert
has exposed port :8480
and the rest of components
are available only inside the environment.
The communication scheme between components is the following:
- vmagent sends scraped metrics to
vminsert
; vminsert
forwards data tovmstorage
;vmselect
is connected tovmstorage
for querying data;- grafana is configured with datasource pointing to
vmselect
; - vmalert is configured to query
vmselect
and send alerts state and recording rules tovminsert
; - alertmanager is configured to receive notifications from
vmalert
.
To access vmalert
use link http://localhost:8481/select/0/prometheus/vmalert.
To access vmui use link http://localhost:8481/select/0/prometheus/vmui.
vmagent
vmagent is used for scraping and pushing time series to VictoriaMetrics instance. It accepts Prometheus-compatible configuration prometheus.yml with listed targets for scraping.
vmalert
vmalert evaluates alerting rules alerts.yml to track VictoriaMetrics health state. It is connected with AlertManager for firing alerts, and with VictoriaMetrics for executing queries and storing alert's state.
alertmanager
AlertManager accepts notifications from vmalert
and fires alerts.
All notifications are blackholed according to alertmanager.yml config.
Grafana
To access service open following link.
Default credential:
- login -
admin
- password -
admin
Grafana is provisioned by default with following entities:
VictoriaMetrics
datasourceVictoriaMetrics - cluster
datasourceVictoriaMetrics overview
dashboardVictoriaMetrics - cluster
dashboardVictoriaMetrics - vmagent
dashboardVictoriaMetrics - vmalert
dashboard
Remember to pick VictoriaMetrics - cluster
datasource when viewing VictoriaMetrics - cluster
dashboard.