mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-12-26 12:20:10 +01:00
5714a68ac6
* deployment/docker: move cluster compose env to master branch The change supposed to simplify the process of maintaining for single/cluster docker-compose envs, alerts, dashboards. It also supposes to reduce confusion for users when looking for cluster related alerts/configs. Signed-off-by: hagen1778 <roman@victoriametrics.com> * deployment/docker: move cluster compose env to master branch Review updates. Signed-off-by: hagen1778 <roman@victoriametrics.com> Signed-off-by: hagen1778 <roman@victoriametrics.com>
113 lines
4.0 KiB
Markdown
113 lines
4.0 KiB
Markdown
# Docker compose environment for VictoriaMetrics
|
|
|
|
Docker compose environment for VictoriaMetrics includes VictoriaMetrics components,
|
|
[Alertmanager](https://prometheus.io/docs/alerting/latest/alertmanager/)
|
|
and [Grafana](https://grafana.com/).
|
|
|
|
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 this repo.
|
|
|
|
To spin-up environment for single server VictoriaMetrics run the following command :
|
|
```
|
|
make docker-single-up
|
|
```
|
|
|
|
To shutdown 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 shutdown 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](#vmagent) sends scraped metrics to VictoriaMetrics;
|
|
* [grafana](#grafana) is configured with datasource pointing to VictoriaMetrics;
|
|
* [vmalert](#vmalert) is configured to query VictoriaMetrics and send alerts state
|
|
and recording rules back to it;
|
|
* [alertmanager](#alertmanager) is configured to receive notifications from vmalert.
|
|
|
|
To access `vmalert` via `vmselect`
|
|
use link [http://localhost:8428/vmalert](http://localhost:8428/vmalert/).
|
|
|
|
To access [vmui](https://docs.victoriametrics.com/Single-server-VictoriaMetrics.html#vmui)
|
|
use link [http://localhost:8428/vmui](http://localhost:8428/vmui).
|
|
|
|
## VictoriaMetrics cluster
|
|
|
|
VictoriaMetrics cluster environemnt 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 of environment.
|
|
|
|
The communication scheme between components is the following:
|
|
* [vmagent](#vmagent) sends scraped metrics to vminsert;
|
|
* vminsert forwards data to vmstorage;
|
|
* vmselect is connected to vmstorage for querying data;
|
|
* [grafana](#grafana) is configured with datasource pointing to vmselect;
|
|
* [vmalert](#vmalert) is configured to query vmselect and send alerts state
|
|
and recording rules to vminsert;
|
|
* [alertmanager](#alertmanager) is configured to receive notifications from vmalert.
|
|
|
|
To access `vmalert` via `vmselect`
|
|
use link [http://localhost:8481/select/0/prometheus/vmalert](http://localhost:8481/select/0/prometheus/vmalert/).
|
|
|
|
To access [vmui](https://docs.victoriametrics.com/Single-server-VictoriaMetrics.html#vmui)
|
|
use link [http://localhost:8481/select/0/prometheus/vmui](http://localhost:8481/select/0/prometheus/vmui).
|
|
|
|
## vmagent
|
|
|
|
vmagent is used for scraping and pushing timeseries to
|
|
VictoriaMetrics instance. It accepts Prometheus-compatible
|
|
configuration `prometheus.yml` with listed targets for scraping.
|
|
|
|
[Web interface link](http://localhost:8429/).
|
|
|
|
## 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.
|
|
|
|
[Web interface link](http://localhost:8880/).
|
|
|
|
## alertmanager
|
|
|
|
AlertManager accepts notifications from `vmalert` and fires alerts.
|
|
All notifications are blackholed according to `alertmanager.yml` config.
|
|
|
|
[Web interface link](http://localhost:9093/).
|
|
|
|
## Grafana
|
|
|
|
To access service open following [link](http://localhost:3000).
|
|
|
|
Default credential:
|
|
|
|
* login - `admin`
|
|
* password - `admin`
|
|
|
|
Grafana is provisioned by default with following entities:
|
|
|
|
* `VictoriaMetrics` datasource
|
|
* `VictoriaMetrics - cluster` datasource
|
|
* `VictoriaMetrics overview` dashboard
|
|
* `VictoriaMetrics - cluster` dashboard
|
|
* `VictoriaMetrics - vmagent` dashboard
|
|
* `VictoriaMetrics - vmalert` dashboard
|
|
|
|
Remember to pick `VictoriaMetrics - cluster` datasource when viewing `VictoriaMetrics - cluster` dashboard. |