【Prometheus 联邦集群与 VictoriaMetrics 远程存储实战】
提示本文原创作品良心制作干货为主简洁清晰一看就会文章目录前言一、Prometheus联邦Federation1.1 什么是Prometheus联邦1.2 Prometheus联邦实战联邦节点配置配置prometheus主节点二、Prometheus数据存储2.1 存储原理2.2 本地存储2.3 远程存储实验环境安装VictoriaMetrics配置Prometheus前言为解决多节点监控数据聚合汇总问题Prometheus提供联邦集群架构可实现多Prometheus节点数据统一采集、集中管理适配分布式监控场景。同时Prometheus原生本地存储存在容量受限通过部署VictoriaMetrics高性能时序数据库完成Prometheus远程持久化存储改造解决传统监控系统的数据存储痛点搭建一套聚合能力强、存储时效久、性能稳定的监控架构。一、Prometheus联邦Federation1.1 什么是Prometheus联邦Prometheus联邦采用分层架构下级Prometheus分片采集各类节点监控指标上级总Prometheus统一拉取汇总既能分散采集压力、避免单实例负载过高实现多机房、多集群运维隔离还可适配网络隔离环境、按需分层筛选指标减轻顶层存储与查询开销适合大规模多集群监控场景1.2 Prometheus联邦实战主机名IP作用prometheus-master192.168.13.141联邦顶层主节点汇总拉取所有子联邦节点指标统一查询与告警prometheus-federation1192.168.13.138联邦子节点 1采集 ubuntu1 的 Node Exporter 指标并向上汇聚prometheus-federation2192.168.13.139联邦子节点 2采集 ubuntu2 的 Node Exporter 指标并向上汇聚ubuntu1192.168.13.140被监控业务主机运行 Node Exporter 暴露系统指标ubuntu2192.168.13.142被监控业务主机运行 Node Exporter 暴露系统指标我已经在 prometheus-master、prometheus-federation1、prometheus-federation2 节点部署 Prometheus 服务并在各被监控主机部署了 Exporter本次采用 node-exporter。部署步骤可参考这篇文章本文重点讲解 Prometheus 联邦集群搭建流程Prometheusnode exporter安装https://blog.csdn.net/m0_63756214/article/details/161196428联邦节点配置rootprometheus-federation1:~# vim /opt/prometheus/prometheus/prometheus.ymlscrape_configs:......-job_name:node-exporterstatic_configs:-targets:[192.168.13.140:9100]labels:instance:ubuntu1rootprometheus-federation1:~# curl -X POST http://localhost:9090/-/reload浏览器访问prometheus-federation1 ip:9090rootprometheus-federation2:~# vim /opt/prometheus/prometheus/prometheus.ymlscrape_configs:......-job_name:node-exporterstatic_configs:-targets:[192.168.13.142:9100]labels:instance:ubuntu2rootprometheus-federation2:~# curl -X POST http://localhost:9090/-/reload浏览器访问prometheus-federation2 ip:9090配置prometheus主节点配置prometheus主节点管理prometheus 联邦节点scrape_configs:......-job_name:federatescrape_interval:15shonor_labels:truemetrics_path:/federate# 指定采集端点路径默认为/federatestatic_configs:-targets:[192.168.13.138:9090]# 指定联邦节点Prometheus节点地址如果在k8s集群内需要指定k8s的svc nodeport-targets:[192.168.13.139:9090]params:match[]:-{job~prometheus|node-exporter}# 指定采集联邦节点的job名称如果不匹配则不会采集浏览器访问192.168.13.141:9090查询指标可以看到收集了两个联邦节点的数据当前 Prometheus 联邦集群基础架构已部署完成如果发现 Master 依然因为数据量过大而卡顿应该在联邦节点138/139上做“预聚合”而不是在 Master 上直接拉原始数据在 138 和 139 的 Prometheus 中配置 Recording Rules记录规则将 5 分钟的 CPU、内存等高频指标聚合成每分钟的均值。然后 Master 的 match[] 只拉取这些聚合后的新指标如 job“aggregated”。此时 Master 的数据量将减少 90% 以上这才是真正的压力卸载二、Prometheus数据存储2.1 存储原理prometheus TSDB 写入存储原理核心组件分工Head内存活跃块指标样本(t,v)先进Head内存默认留存2小时配套两套机制M-map内存映射只存文件引用按需把磁盘chunk载入内存节省内存WAL预写日志保证写入可靠Block磁盘持久块Head里的数据老化满2小时后刷入磁盘生成只读Block老Block会持续合并超数据保留周期后自动删除WAL预写日志机制写入规则先写WAL日志再操作磁盘Block保障写入原子性、宕机可重试恢复文件结构WAL切分单个最大128MB段文件存于wal目录checkpoint文件记录日志截断位置并同步落盘保障可靠性完整写入流程指标样本 → Head内存同步写WAL防丢失→ 留存2小时后刷盘生成Block → 老Block持续合并过期删除2.2 本地存储我的prometheus是下载的tar包然后安装在/opt/prometheus/下rootprometheus:~# ls /opt/prometheus/prometheus/alert.yml data LICENSE NOTICE prometheus prometheus.yml promtool rootprometheus:~# ls /opt/prometheus/prometheus/data/01KYHCV0DA2906BJWNS5M05Z1Y 01KZ5J98CPMFDRNRMG2J4R373Q chunks_head queries.active 01KZ5C14G4REHBGBYCBRM8ANBA 01KZ5J98PVVEQVZ71T8DZ3X899 lock walPrometheus TSDB本地数据默认存放于./data在./data/目录下类似如01KYHCV0DA2…形式的目录为2小时块Block目录Block目录内包含4类核心文件chunks存放时序原始数据单个chunk上限512MBindex索引根据指标名、标签定位时序数据tombstones软删除标记不直接清理数据查询时过滤已删内容meta.jsonBlock元数据支撑块合并、删除管理如下图2.3 远程存储Prometheus本地存储存在单点故障、性能瓶颈可通过远程存储解决。VictoriaMetricsVM是 Go 语言开发的高性能时序数据库主打 Prometheus 远程长期存储专为海量监控时序数据设计VictoriaMetrics核心优势1兼容PromQL、Prometheus/Graphite API可直接替代Prometheus、Graphite做Grafana数据源,2高性能读写吞吐远超InfluxDB、TimescaleDB适配云低IO/HDD存储3易扩展部署单节点可替代中小型监控集群提供开源集群版适配K8s、工业、物联网等海量时序场景实验环境主机名IP用途prometheus192.168.13.141监控采集服务定时抓取被监控主机系统指标通过remote_write将采集到的指标远程推送至VictoriaMetrics做长期持久化存储victoriametrics192.168.13.139接收Prometheus远程上报的监控指标并长期存储提供Prometheus兼容API可对接Grafana可视化ubuntu1192.168.13.140被监控业务主机部署Node Exporterubuntu2192.168.13.142被监控业务主机部署Node Exporter这是我目前Prometheus所监控的设备安装VictoriaMetricsGithub下载VictoriaMetricshttps://github.com/VictoriaMetrics/VictoriaMetrics/releases注意:不要下载enterpise版本此版本需要授权许可我这里演示的是单机模式victoriametrics还有集群模式后期会出教程## 1. 下载tar包rootvictoriametrics:~# wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.145.0/victoria-metrics-linux-amd64-v1.145.0.tar.gzrootvictoriametrics:~# lsvictoria-metrics-linux-amd64-v1.145.0.tar.gz rootvictoriametrics:~# tar xf victoria-metrics-linux-amd64-v1.145.0.tar.gzrootvictoriametrics:~# mv victoria-metrics-prod /usr/local/bin/## 2. 创建系统后台用户rootvictoriametrics:~# useradd -r -s /sbin/nologin victoriametrics## 3. 创建数据持久化目录rootvictoriametrics:~# mkdir -p /data/victoriametricsrootvictoriametrics:~# chown victoriametrics:victoriametrics /data/victoriametrics## 4. 创建service文件rootvictoriametrics:~# cat /lib/systemd/system/victoriametrics.service EOF[Unit]DescriptionVictoriaMetrics Documentationhttps://docs.victoriametrics.com/Single-server-VictoriaMetrics.html Afternetwork.target[Service]Restarton-failure Uservictoriametrics Groupvictoriametrics ExecStart/usr/local/bin/victoria-metrics-prod-httpListenAddr0.0.0.0:8428-storageDataPath/data/victoriametrics-retentionPeriod12#ExecReload/bin/kill -HUP \$MAINPIDLimitNOFILE65535[Install]WantedBymulti-user.target EOF rootvictoriametrics:~# systemctl daemon-reloadrootvictoriametrics:~# systemctl enable --now victoriametrics.service-httpListenAddr0.0.0.0:8428VM 对外监听端口8428允许任意IP访问-storageDataPath/data/victoriametrics指标数据持久化存储目录-retentionPeriod12数据保留时长12个月LimitNOFILE65535调高进程最大文件句柄数适配海量时序采集场景rootvictoriametrics:~# ls /data/victoriametrics/data flock.lock metadata snapshots tmp rootvictoriametrics:~# tree /data/victoriametrics/配置Prometheusrootprometheus:~# vim /opt/prometheus/prometheus/prometheus.ymlglobal:......remote_write:-url:http://192.168.13.139:8428/api/v1/write......scrape_configs:......-job_name:victoriametricsstatic_configs:-targets:[192.168.13.139:8428]rootprometheus:~# curl -X POST http://localhost:9090/-/reload浏览器访问可视化 Web 管理控制台http://192.168.13.139:8428/vmui可以查看监控指标登录grafana添加victoriametrics数据源添加dashboard可以看到数据从victoriametrics中来到此Prometheus远程存储数据就部署好了注文中若有疏漏欢迎大家指正赐教。本文为100%原创转载请务必标注原创作者尊重劳动成果。求赞、求关注、求评论你的支持是我更新的最大动力评论区等你

相关新闻

技术拆解(十五)具身智能:RT-2为什么能听懂“灭绝动物”?VLM知识如何变成动作

技术拆解(十五)具身智能:RT-2为什么能听懂“灭绝动物”?VLM知识如何变成动作

目录 一、RT-2的提出背景与模型定位 1.1 为什么已经有RT-1,还需要RT-2 1.2 RT-2是什么 1.3 RT-1、PaLM-E与RT-2的关系 1.4 RT-2不是一个固定网络,而是一套VLM转VLA的方法 二、RT-2的数据组织与动作表示 2.1 Episode与逐时间步训练样本 2.2 RT-2的…

2026/10/14 3:08:11 阅读更多 →
从 Excel 到电价 API:2026 市场化后能源系统如何结构化维护电价数据

从 Excel 到电价 API:2026 市场化后能源系统如何结构化维护电价数据

2026 年 3 月 1 日,国家发改委《电力中长期市场基本规则》正式施行。固定分时电价在 9 省地区被取消,现货市场每 15 分钟刷新一个新价格。对于工商业储能、EMS、售电、充电运营和虚拟电厂来说,这意味着过去"一年改一次、人工填 Excel&qu…

2026/10/11 8:51:32 阅读更多 →
【关注可白嫖源码】--课程设计--毕业设计--django肥胖儿童运动与健康管理系统[编号:project58555](案件分析)

【关注可白嫖源码】--课程设计--毕业设计--django肥胖儿童运动与健康管理系统[编号:project58555](案件分析)

本文仅展示核心实现逻辑与部分代码片段,完整项目源码、配套文档、数据库脚本内容较多,篇幅有限无法全部放出。 有需要完整资源的同学,可以在评论区留言【资料或领源码】,我会一 一回复站内私信,发送完整文件 摘 要 肥…

2026/10/6 4:18:42 阅读更多 →

最新新闻

免费 Win11 与 Office 激活指南:MAS 脚本 4 种方式一键完成

免费 Win11 与 Office 激活指南:MAS 脚本 4 种方式一键完成

免费 Win11 与 Office 激活指南:MAS 脚本 4 种方式一键完成 【免费下载链接】Microsoft-Activation-Scripts Open-source Windows and Office activator featuring HWID, Ohook, TSforge, and Online KMS activation methods, along with advanced troubleshooting.…

2026/10/14 3:07:32 阅读更多 →
仓颉语言 Decimal 基本属性详解:sign / scale / value / precision 实战指南

仓颉语言 Decimal 基本属性详解:sign / scale / value / precision 实战指南

文档知识库教程OpenHarmony 【免费下载链接】CangjieCorpus 本仓库为仓颉编程语言语料库,聚焦 仓颉编程语言 核心知识体系,整合官方开发指南、API 文档、典型代码示例及语法规范等多维度资源,经结构化处理与专业标注,构建为支持 R…

2026/10/14 3:07:32 阅读更多 →
Wing 云服务(cloud.Service)在模拟器中的令牌(Token)绑定与端到端测试

Wing 云服务(cloud.Service)在模拟器中的令牌(Token)绑定与端到端测试

编程语言编译器云原生语言运行时 【免费下载链接】wing A programming language for the cloud ☁️ A unified programming model, combining infrastructure and runtime code into one language ⚡ 项目地址: https://gitcode.com/gh_mirrors/wi/wing 点击查看 免…

2026/10/14 3:07:32 阅读更多 →
大模型之LangGraph多轮对话记忆

大模型之LangGraph多轮对话记忆

用 LangGraph 的 Reducer,轻松搞定多轮对话记忆 做聊天机器人最头疼的是什么?是记不住上文。今天分享一个 LangGraph 的小技巧:用 Reducer 机制优雅地管理对话历史。 核心只有一行代码: messages: Annotated[Sequence[AnyMessa…

2026/10/14 3:07:32 阅读更多 →
免费三步:老 Mac 升级最新 macOS

免费三步:老 Mac 升级最新 macOS

免费三步:老 Mac 升级最新 macOS 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 一台 2015 年的 MacBook Pro,App Store 早就不给推送…

2026/10/14 3:07:32 阅读更多 →
PySide2工具栏与状态栏实战:QToolBar和QStatusBar高效开发指南

PySide2工具栏与状态栏实战:QToolBar和QStatusBar高效开发指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 3:06:32 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →