VictoriaMetrics/docs/data-ingestion/vmagent.md
Andrii Chubatiuk 35d77a3bed
docs: updated guides structure, removed deprecated sort option (#6767)
### Describe Your Changes

* `sort` param is unused by the current website engine, and was present only for compatibility
with previous website engine. It is time to remove it as it makes no effect
* re-structure guides content into folders to simplify assets management

### Checklist

The following checks are **mandatory**:

- [ ] My change adheres [VictoriaMetrics contributing
guidelines](https://docs.victoriametrics.com/contributing/).
2024-08-07 16:48:08 +02:00

3.4 KiB

title weight menu aliases
vmagent 2
docs
identifier parent weight
data-ingestion-vmagent data-ingestion 2
/data-ingestion/vmagent.html
/data-ingestion/VMAgent.html

vmagent can receive data via the same protocols as VictoriaMetrics Single or Cluster versions, as well as scrape Prometheus endpoints. In other words, it supports both Push and Pull models.

This section of the documentation only covers forwarding data from vmagent to another destination. For extra information about vmagent as well as quickstart guide please refer to the vmagent documentation.

To configure vmagent to push metrics to VictoriaMetrics via Prometheus remote write protocol, configure the -remoteWrite.url cmd-line flag:

/path/to/vmagent -remoteWrite.url=https://<victoriametrics_url>/api/v1/write

For pushing data to VictoriaMetrics cluster the -remoteWrite.url should point to vminsert and include the tenantID:

/path/to/vmagent -remoteWrite.url=https://<vminsert-addr>/insert/<tenant_id>/prometheus/api/v1/write

Note: read more about multitenancy or multitenancy via labels.

Please note, -remoteWrite.url cmd-line flag can be specified multiple times with different values. In this case, vmagent will replicate data to each specified destination. In addition, it is possible to configure metrics sharding across -remoteWrite.url destinations.

Remote write with basic authentication

This requires setting the -remoteWrite.basicAuth.username and -remoteWrite.basicAuth.password command line flags:

/path/to/vmagent -remoteWrite.url=https://<victoriametrics_url>/api/v1/write \
 -remoteWrite.basicAuth.username=<username> \
 -remoteWrite.basicAuth.password=<password>

Remote write with bearer Authentication

/path/to/vmagent -remoteWrite.url=https://<victoriametrics_url>/api/v1/write \
 -remoteWrite.bearerToken=<token>

The token can be placed in a file and accessed via the -remoteWrite.bearerTokenFile command line argument. The file needs to be readable by the user vmagent is running as. The token file should only contain the token as seen below:

<token>

The command to run vmagent with a token file will be the following:

/path/to/vmagent -remoteWrite.url=https://<victoriametrics_url>/api/v1/write \
 -remoteWrite.bearerTokenFile=/path/to/tokenfile

Ignore TLS/SSL errors

If you are using self-signed certificates you can either ignore certificates issues using the -remoteWrite.tlsInsecureSkipVerify, which is a security risk, or use -remoteWrite.tlsCAFile to point to a file containing the self-signed CA certificate:

/path/to/vmagent -remoteWrite.url=https://<victoriametrics_url>/api/v1/write \
 -remoteWrite.tlsInsecureSkipVerify

References