日常环境我们经常需要使用push 模式进行metrics 的处理,vmagent 是一个很不错的选择,尽管官方提供了一个promtun 但是很不好使用
参考玩法
如下图,直接使用vmagent 解决push的问题,基于victoriametrics 强大的能力,可以扩展多租户的支持
环境准备
- docker-compose 文件
version: "3"
services:
vmstorage:
image: victoriametrics/vmstorage:v1.81.2-cluster
ports:
- 8482:8482
- 8400:8400
- 8401:8401
volumes:
- ./strgdata:/storage
command:
- '--storageDataPath=/storage'
vmagent:
image: victoriametrics/vmagent:v1.81.2
volumes:
- ./prometheus-vmagent.yml:/etc/prometheus/prometheus.yml
ports:
- 8429:8429
command:
- -promscrape.config=/etc/prometheus/prometheus.yml
- -remoteWrite.url=http://vminsert:8480/insert/1/prometheus
vminsert:
image: victoriametrics/vminsert:v1.81.2-cluster
command:
- '--storageNode=vmstorage:8400'
ports:
- 8480:8480
vmselect:
image: victoriametrics/vmselect:v1.81.2-cluster
command:
- '--storageNode=vmstorage:8401'
ports:
- 8481:8481
coroot-server:
image: ghcr.io/coroot/coroot:latest
ports:
- "8080:8080"
- prometheus-vmagent.yml 配置文件
scrape_configs:
- job_name: coroot-node
metrics_path: /metrics
scrape_interval: 10s
scrape_timeout: 10s
static_configs:
- targets: ['ip:9999']
效果
- 启动
docker-compose up -d
- 效果
配置界面
数据效果
日志请求情况
说明
注意victoriametrics 版本,推荐使用最新版本的,我在测试老版本的时候发现会有rpc 函数不兼容的问题,比如unsupported rpcName: "search_v7"