news 2026/4/23 17:25:15

Thanos高可用监控Prometheus联邦与长期存储实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Thanos高可用监控Prometheus联邦与长期存储实战

问题背景

单机Prometheus用着挺好,直到遇到这些问题:

  1. 存储空间有限:本地存储撑不了多久,15天的数据就把磁盘塞满了
  2. 单点故障:Prometheus挂了,监控数据就没了
  3. 多集群查询难:每个K8s集群一个Prometheus,想看全局数据得挨个登录
  4. 数据不能跨实例聚合:不同Prometheus的数据没法一起算

Prometheus官方的联邦方案解决不了长期存储,而且联邦本身也是单点。

Thanos的出现解决了这些问题:

  • 无限期存储(用对象存储)
  • 全局查询(跨Prometheus实例)
  • 高可用(多副本去重)
  • 向下采样(长期数据压缩)

Thanos架构

Thanos由几个组件构成:

┌─────────────────┐ ┌─────────────────┐ │ Prometheus 1 │ │ Prometheus 2 │ │ + Sidecar │ │ + Sidecar │ └────────┬────────┘ └────────┬────────┘ │ │ │ ┌──────────────────┤ │ │ │ ▼ ▼ ▼ ┌─────────────┐ ┌─────────┐ │ Querier │◄────────│ Store │ └──────┬──────┘ │ Gateway │ │ └────┬────┘ │ │ ▼ ▼ ┌─────────────┐ ┌─────────┐ │ Query │ │ Object │ │ Frontend │ │ Storage │ └─────────────┘ └─────────┘
  • Sidecar:挂在Prometheus旁边,上传数据到对象存储
  • Store Gateway:从对象存储读取历史数据
  • Querier:全局查询入口,聚合所有数据源
  • Query Frontend:查询缓存和分片
  • Compactor:数据压缩和向下采样
  • Ruler:分布式告警规则评估

部署实战

用Helm部署最方便。假设对象存储用MinIO(生产环境用云厂商的OSS)。

准备对象存储

先创建存储配置:

# thanos-storage.yamltype:S3config:bucket:thanosendpoint:minio.monitoring.svc.cluster.local:9000access_key:thanossecret_key:thanos123456insecure:true

创建Secret:

kubectl create secret generic thanos-objstore-config\--from-file=objstore.yml=thanos-storage.yaml\-n monitoring

配置Prometheus + Sidecar

修改Prometheus配置,添加external_labels和Sidecar:

# prometheus-values.yaml (kube-prometheus-stack)prometheus:prometheusSpec:replicas:2retention:6hretentionSize:10GB# 外部标签,用于去重externalLabels:cluster:prod-cluster-1replica:$(POD_NAME)# 启用Thanos Sidecarthanos:image:quay.io/thanos/thanos:v0.32.5objectStorageConfig:existingSecret:name:thanos-objstore-configkey:objstore.yml# 禁用本地规则评估(用Thanos Ruler)ruleSelector:{}# Sidecar的grpc端口thanosService:enabled:truethanosServiceMonitor:enabled:true

部署Thanos组件

# thanos-components.yaml---apiVersion:apps/v1kind:Deploymentmetadata:name:thanos-querynamespace:monitoringspec:replicas:2selector:matchLabels:app:thanos-querytemplate:metadata:labels:app:thanos-queryspec:containers:-name:thanos-queryimage:quay.io/thanos/thanos:v0.32.5args:-query---log.level=info---query.replica-label=replica---query.auto-downsampling# 连接所有Sidecar---endpoint=dnssrv+_grpc._tcp.prometheus-thanos.monitoring.svc.cluster.local# 连接Store Gateway---endpoint=dnssrv+_grpc._tcp.thanos-store.monitoring.svc.cluster.localports:-containerPort:10902name:http-containerPort
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 19:01:50

I型NPC三电平整流器的Simulink仿真探索

I型NPC三电平整流器,SVPWM调制,电力电子simulink仿真,带中点电位平衡控制,双闭环控制 有效抑制了三电平变流器固有的中点电位偏移和波动现象。 采用SVPWM,输出标准的羊角波。 双闭环控制,性能优越&#xff…

作者头像 李华
网站建设 2026/4/23 10:49:54

Open-AutoGLM:能否终结人工模型设计?专家深度剖析其技术边界与潜力

第一章:Open-AutoGLM:能否终结人工模型设计?专家深度剖析其技术边界与潜力Open-AutoGLM 作为新一代自动化语言模型架构搜索系统,正引发业界对“是否将终结人工模型设计”的激烈讨论。该系统通过强化学习与元控制器协同机制&#x…

作者头像 李华
网站建设 2026/4/23 10:46:02

从零获取Open-AutoGLM官方视频(完整下载+播放避坑指南)

第一章:从零了解智谱Open-AutoGLM宣传视频智谱AI推出的Open-AutoGLM是一款面向自动化文本生成任务的开源工具,其宣传视频全面展示了该平台的核心能力与使用场景。通过直观的演示,观众可以快速理解如何利用自然语言指令驱动模型完成数据清洗、…

作者头像 李华
网站建设 2026/4/23 10:49:40

2025最新!10个AI论文平台测评:本科生毕业论文写作全攻略

2025最新!10个AI论文平台测评:本科生毕业论文写作全攻略 2025年AI论文平台测评:为何需要一份权威榜单? 随着人工智能技术的快速发展,越来越多的本科生开始借助AI工具辅助毕业论文写作。然而,市面上的论文平…

作者头像 李华