Skip to main content

VMAgent

VMAgent is an agent that allows you to set up the collection and processing of metrics.

Before you begin, set up VMAgent.

Set up VMAgent

You can set up the agent to collect metrics into your infrastructure.

  1. Add a service user.
  2. Set up the agent to collect metrics.

1. Add a service user

Add a service user with the Projects scope permission and one of the following roles:

  • metrics.admin;
  • member;
  • or reader.

Users can be added by the Account Owner or users with the iam.admin.

2. Set up the agent to collect metrics

  1. Open the CLI.

  2. Create the vmagent.yaml configuration file:

    nano /etc/vmagent/vmagent.yaml
  3. In the vmagent.yaml configuration file, populate the scrape_configs:

    scrape_configs:
    - job_name: test_scrape
    scrape_interval: 1m
    metrics_path: /projects/<project_id>/namespaces/<namespace>/prometheus/metrics
    static_configs:
    - targets:
    - <base_url>
    basic_auth:
    username: <user_id>
    password: <password>

    Specify:

    • <project_id> — Project ID. Can be copied in the control panel: in the top menu, click Products and select any product → open the projects menu → in the line of the required project, click ;
    • <namespace> — the name of the selected namespace, for example, compute. You can find it in the Metrics Reference;
    • <base_url> — the URL for accessing the Metrics service API. If you are configuring an agent to collect metrics from a dedicated server, use the cloud server pool URL that corresponds to the pool where your dedicated server is located. The list of URLs is available in the Metrics subsection of the List of URLs;
    • <user_id> — the ID of the user you added in step 1;
    • <password> — the password of the user you added in step 1.
  4. Optional: you can configure metrics collection from multiple pools or projects. To add a new pool or project, repeat step 3.

  5. Optional: add metrics export to external storage or processing systems, for example, VictoriaMetrics. To do this, add and populate the remote_write section in the vmagent.yaml configuration file.

  6. Exit the nano text editor and save your changes: press Ctrl+Х, and then Y+Enter.

  7. Launch VMAgent:

    docker run \
    --name vmagent \
    --rm \
    -v ${PWD}/vmagent.yaml:/etc/vmagent/vmagent.yaml:ro \
    -p 8429:8429 \
    victoriametrics/vmagent:latest \
    --promscrape.config=/etc/vmagent/vmagent.yaml \
    --remoteWrite.url=http:/<storage_path>/api/v1/write

    Specify <storage_path> — the address of your custom metrics storage.

  8. Optional: make sure that metrics are being collected. To do this, check the agent's connection to the Metrics service:

    curl localhost:8429/targets

    The command output should display the up status. Example output:

    job=test_scrape (1/1 up)