惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Project Zero
Project Zero
月光博客
月光博客
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
O
OpenAI News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Know Your Adversary
Know Your Adversary
Last Week in AI
Last Week in AI
S
Securelist
Engineering at Meta
Engineering at Meta
博客园 - 司徒正美
P
Privacy & Cybersecurity Law Blog
T
Tailwind CSS Blog
F
Fortinet All Blogs
博客园 - 三生石上(FineUI控件)
Scott Helme
Scott Helme
MyScale Blog
MyScale Blog
P
Proofpoint News Feed
云风的 BLOG
云风的 BLOG
C
Cisco Blogs
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
小众软件
小众软件
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
Hacker News: Ask HN
Hacker News: Ask HN
Hugging Face - Blog
Hugging Face - Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
SecWiki News
SecWiki News
宝玉的分享
宝玉的分享
P
Proofpoint News Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
Lohrmann on Cybersecurity
IT之家
IT之家
Security Archives - TechRepublic
Security Archives - TechRepublic
I
InfoQ
S
Security @ Cisco Blogs
Webroot Blog
Webroot Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
F
Full Disclosure
D
Darknet – Hacking Tools, Hacker News & Cyber Security
The GitHub Blog
The GitHub Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Jina AI
Jina AI
Cyberwarzone
Cyberwarzone
人人都是产品经理
人人都是产品经理
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
B
Blog RSS Feed
Apple Machine Learning Research
Apple Machine Learning Research

博客园 - 尹正杰

aiops运维平台从0到1部署实战 aiops平台环境部署 TKE集群LoadBalancer映射案例 k8s集群为每个节点分配不通的ippool实战 ansible剧本实现一键升级K8S集群的NVIDIA GPU驱动 VictoriaMetrics集群部署实战 Squid正向代理实战 kubespray生产故障案例之kubelet启动参数案例 filebeat指定名称空间采集pod数据 Calico自定义Ipool实战 ansible剧本实现kibana的部署和卸载 ansible剧本应用案例集合2 ansible剧本实现磁盘格式化 Ansible急速入门实战篇 ansible快速入门篇 k8s集群管理 kubesray实战 kubespray实战案例 kubespray管理k8s的worker集群扩缩容 kubespray快速部署k8s集群实战 Kubeasz使用吐槽博客专题 Kubeasz基于ezctl实现etcd集群的管理实战 Kubeasz基于ezctl实现k8s集群一键升级 Calico启用纯BGP模式+RR实战案例 Calico 底层原理及IPIP(依赖BGP协议))和vxlan(不依赖BGP)工作模式切换 kubeasz基于ezctl实现k8s集群的扩容和缩容 kubeasz快速部署K8S集群实战 Ubuntu 24.04.04 LTS版本系统优化 Ubuntu Server 24.04.04 LTS部署指南 windows极速部署Openclaw实战篇 K8S的StatefulSet控制器应用案例之MySQL主从同步实战 k8s底层基于不同运行时集成harbor企业级私有仓库实战 二进制K8S集群附加组件部署及CNI网络插件切换实战 二进制部署K8S 1.35.0+最新版实战案例 etcd高可用集群部署及K8S周期性备份数据实战 基于Docker实现《若依》服务业务容器化实战篇 k8s集群基于Flannel网络插件部署凡人修仙传 k8s集群基于Calico网络插件部署凡人修仙传 ElasticSEearch 9.X环境部署 K8S Vertical Pod Autoscaler(VPA)实战案例 Prometheus监控自定义程序指标
vmagent采集etcd数据并写入victoriametrics集群
尹正杰 · 2026-07-03 · via 博客园 - 尹正杰

                                              作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.前置环境准备

1.部署etcd集群

可以直接参考我部署K8S的文档有关于etcd集群的部署笔记。

推荐阅读:
	https://www.cnblogs.com/yinzhengjie/p/20851315

2.检查etcd集群

[root@master231 ~]# ss -ntl | grep 2379
LISTEN 0      65535     10.0.0.231:2379       0.0.0.0:*          
LISTEN 0      65535      127.0.0.1:2379       0.0.0.0:*          
[root@master231 ~]# 
[root@master231 ~]# curl  -sk --cacert /yinzhengjie/certs/etcd/etcd-ca.pem --cert /yinzhengjie/certs/etcd/etcd-server.pem --key /yinzhengjie/certs/etcd/etcd-server-key.pem https://10.0.0.231:2379/metrics | wc -l
1739
[root@master231 ~]# 

3.VictoriaMetrics集群部署

推荐阅读:
	https://www.cnblogs.com/yinzhengjie/p/20942368

二.部署vmagent组件

1. vmagent概述

vmagent是VictoriaMetrics生态的采集代理,支持多种部署方式:
	- 1.二进制裸机部署
	- 2.Docker 容器部署
	- 3.K8s VM Operator CRD 托管部署

vmagent替代Prometheus Server做指标抓取、去重、转发,支持多远端写入(VM、Prometheus RemoteWrite)。


使用`-promscrape.config`指定 Prometheus 配置文件的路径(通常位于 `/etc/prometheus/prometheus.yml`)。

vmagent 不支持 Prometheus 配置文件的某些部分,因此您可能需要删除这些部分或使用 `-promscrape.config.strictParse=false` 命令行标志运行 vmagent。


推荐阅读:
	https://docs.victoriametrics.com/victoriametrics/scrape_config_examples/
	https://docs.victoriametrics.com/victoriametrics/sd_configs/

2.vmagent监控etcd集群实战

2.1. 下载和VictoriaMetrics同版本的vmagent

image-20260703160301968

参考链接:
	https://docs.victoriametrics.com/victoriametrics/vmagent/#quick-start

如上图所示,根据官方提示,我们可以下载对应的软件包,这个软件包建议和你的VictoriaMetrics集群版本要一致。



具体部署方式如下:

	1.下载和VM同版本vmagent
[root@master231 ~]# wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.146.0/vmutils-linux-amd64-v1.146.0.tar.gz


	2.解压软件包
[root@master231 ~]# tar tf vmutils-linux-amd64-v1.146.0.tar.gz 
vmagent-prod
vmalert-prod
vmalert-tool-prod
vmauth-prod
vmbackup-prod
vmrestore-prod
vmctl-prod
[root@master231 ~]# 
[root@master231 ~]# 
[root@master231 ~]# tar xf vmutils-linux-amd64-v1.146.0.tar.gz  -C /usr/local/bin/
[root@master231 ~]# 



	3.检查版本
[root@master231 ~]# vmagent-prod --version
vmagent-20260619-123257-tags-v1.146.0-0-g4d9901fbf4
[root@master231 ~]# 

2.2 配置vmagent采集etcd数据

	1.创建配置文件目录
[root@master231 ~]# mkdir /yinzhengjie/softwares/vmagent
[root@master231 ~]#

	2.编辑配置文件
[root@master231 ~]# cat  /yinzhengjie/softwares/vmagent/vmagent.yml
global:
  scrape_interval: 30s
  scrape_timeout: 10s

scrape_configs:
- job_name: "k8s-idc-etcd-cluster"
  scheme: https
  tls_config:
    ca_file: /yinzhengjie/certs/etcd/etcd-ca.pem
    cert_file: /yinzhengjie/certs/etcd/etcd-server.pem
    key_file: /yinzhengjie/certs/etcd/etcd-server-key.pem 
    insecure_skip_verify: false
  static_configs:
    - targets:
        - 10.0.0.231:2379
        - 10.0.0.232:2379
        - 10.0.0.233:2379
[root@master231 ~]# 

2.3 配置vmagent的启动脚本并启动

	1.编写启动脚本
[root@master231 ~]# cat   /usr/lib/systemd/system/vmagent.service
[Unit]
Description=https://www.cnblogs.com/yinzhengjie
After=network.target

[Service]
User=root
ExecStart= /usr/local/bin/vmagent-prod \
  -promscrape.config=/yinzhengjie/softwares/vmagent/vmagent.yml \
  -httpListenAddr=0.0.0.0:8429 \
  -promscrape.configCheckInterval=30s \
  -remoteWrite.url=http://10.0.0.231:8480/insert/0/prometheus/api/v1/write \
  -remoteWrite.url=http://10.0.0.232:8480/insert/0/prometheus/api/v1/write \
  -remoteWrite.url=http://10.0.0.233:8480/insert/0/prometheus/api/v1/write \
  -remoteWrite.tmpDataPath=/var/lib/vmagent-cache \
  -remoteWrite.maxDiskUsagePerURL=15GB \
  -remoteWrite.queues=4 \
  -loggerLevel=INFO

Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
[root@master231 ~]# 



	2.启动服务
[root@master231 ~]# systemctl daemon-reload 
[root@master231 ~]# 
[root@master231 ~]# systemctl enable --now vmagent.service 
Created symlink /etc/systemd/system/multi-user.target.wants/vmagent.service → /usr/lib/systemd/system/vmagent.service.
[root@master231 ~]# 


	3.检查监听端口
[root@master231 ~]# ss -ntl | grep 8429
LISTEN 0      65535        0.0.0.0:8429       0.0.0.0:*          
[root@master231 ~]# 
[root@master231 ~]# systemctl status vmagent.service 
Warning: The unit file, source configuration file or drop-ins of vmagent.service changed on disk. Run 'sys>
● vmagent.service - vmagent v1.146.0
     Loaded: loaded (/usr/lib/systemd/system/vmagent.service; enabled; preset: enabled)
     Active: active (running) since Fri 2026-07-03 16:39:29 CST; 2min 37s ago
   Main PID: 946971 (vmagent-prod)
      Tasks: 8 (limit: 314572)
     Memory: 20.2M (peak: 20.7M)
        CPU: 954ms
     CGroup: /system.slice/vmagent.service
             └─946971 /usr/local/bin/vmagent-prod -promscrape.config=/yinzhengjie/softwares/vmagent/vmagen>

Jul 03 16:41:21 master231 vmagent-prod[946971]: 2026-07-03T08:41:21.831Z        error        VictoriaMetri>
Jul 03 16:41:21 master231 vmagent-prod[946971]: . (Similar 0 log messages were dropped due to throttling)
Jul 03 16:41:41 master231 vmagent-prod[946971]: 2026-07-03T08:41:41.407Z        error        VictoriaMetri>
Jul 03 16:41:41 master231 vmagent-prod[946971]: . (Similar 9 log messages were dropped due to throttling)
Jul 03 16:41:41 master231 vmagent-prod[946971]: 2026-07-03T08:41:41.482Z        error        VictoriaMetri>
Jul 03 16:41:41 master231 vmagent-prod[946971]: . (Similar 0 log messages were dropped due to throttling)
Jul 03 16:41:51 master231 vmagent-prod[946971]: 2026-07-03T08:41:51.637Z        error        VictoriaMetri>
Jul 03 16:41:51 master231 vmagent-prod[946971]: . (Similar 4 log messages were dropped due to throttling)
Jul 03 16:41:51 master231 vmagent-prod[946971]: 2026-07-03T08:41:51.658Z        error        VictoriaMetri>
Jul 03 16:41:51 master231 vmagent-prod[946971]: . (Similar 0 log messages were dropped due to throttling)
[root@master231 ~]# 

2.4 验证vmagent是否采集到目标

[root@master231 ~]# curl http://127.0.0.1:8429/targets
job=k8s-idc-etcd-cluster (3/3 up)
	state=up, endpoint= https://10.0.0.231:2379/metrics , labels={instance="10.0.0.231:2379",job="k8s-idc-etcd-cluster"}, scrapes_total=1, scrapes_failed=0, last_scrape=11.061s ago, scrape_duration=27ms, scrape_response_size=169KiB, samples_scraped=1485, error=
	state=up, endpoint= https://10.0.0.232:2379/metrics , labels={instance="10.0.0.232:2379",job="k8s-idc-etcd-cluster"}, scrapes_total=1, scrapes_failed=0, last_scrape=10.411s ago, scrape_duration=38ms, scrape_response_size=169KiB, samples_scraped=1485, error=
	state=up, endpoint= https://10.0.0.233:2379/metrics , labels={instance="10.0.0.233:2379",job="k8s-idc-etcd-cluster"}, scrapes_total=1, scrapes_failed=0, last_scrape=21.373s ago, scrape_duration=27ms, scrape_response_size=169KiB, samples_scraped=1485, error=
[root@master231 ~]# 

2.5 检查服务端是否有数据

image-20260703185424180

	1.去 vmselect 查询指标(验证写入集群成功)
http://10.0.0.231:8481/select/0/vmui
http://10.0.0.232:8481/select/0/vmui
http://10.0.0.233:8481/select/0/vmui


	2.查看图形
如上图所示。我们可以输出测试的语句: etcd_server_has_leader

2.6 导入监控模板

推荐:
	- 21473  

备用:
	- 3070
	- 10323