一、软件名称
vmutils-linux-amd64-v1.92.1.tar.gz
二、软件目录创建及解压
mkdir -p /usr/local/vmagent/{bin,config,init,data,logs,temp}
tar zxvf vmutils-linux-amd64-v1.92.1.tar.gz -C /usr/local/vmagent/bin
cd /usr/local/vmagent/bin
三、配置启动文件
vim vmagent.service
[Unit]
Description=vmagent
Documentation=https://victoriaMetrics.doc/
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/vm/bin/vmagent -promscrape.cluster.membersCount=2 \
-promscrape.cluster.memberNum=0 \
-promscrape.suppressScrapeErrors \
-promscrape.suppressDuplicateScrapeTargetErrors \
-remoteWrite.tmpDataPath=/usr/local/vm/data/vm1 \
-remoteWrite.maxDiskUsagePerURL=1GB \
-memory.allowedBytes=128MB \
-httpListenAddr=:8429 \
-promscrape.config=/usr/local/vm/config/prometheus.yml \
-promscrape.config=/usr/local/vm/config/1-prometheus.yml \
-remoteWrite.url=http://10.131.122.52:8480/insert/6666/prometheus/api/v1/write
Restart=on-failure
[Install]
WantedBy=multi-user.target
参数说明:
#集群节点数量,有几个vmagent写几个
-promscrape.cluster.membersCount=2
#集群节点的ID号,从0开始
-promscrape.cluster.memberNum=0
#当远程不可写入时咱本地缓存目录
-remoteWrite.tmpDataPath=/usr/local/vm/data/vm1
#最大磁盘使用量,最好是500MB的倍数
-remoteWrite.maxDiskUsagePerURL=1GB
#允许内存使用大小
-memory.allowedBytes=128MB
#vmagent端口,只有一个节点可不写
-httpListenAddr=:8429
#读取的yml文件位置,可读取多个,需要加多个参数
-promscrape.config=/usr/local/vm/config/prometheus.yml
-promscrape.config=/usr/local/vm/config/1-prometheus.yml
#远程insert地址
-remoteWrite.url=http://10.131.122.52:8480/insert/6666/prometheus/api/v1/write
四、扩展
vmagent支持多节点自主分配资源抓取,同时支持同一个target被多个vmagent重复抓取,需要添加参数
-promscrape.cluster.replicationFactor=2
加在第三步骤中即可,理解为:所有targets分三个节点抓取,同时每个target又会被两个vmagent重复抓取,在vmstore和vmselect添加去除重复抓取参数“-dedup.minScrapeInterval”,此参数时间最好与prometheus.yml中配置的采集周期一致。