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