高可用(Thanos)详解

张开发
2026/4/11 13:24:09 15 分钟阅读

分享文章

高可用(Thanos)详解
Thanos 完全详解:云原生监控的高可用基石一、Thanos 是什么?为什么要用?Thanos(希腊语"θάνατος",意为"死亡"——没错,就是漫威电影里的灭霸)是一个开源项目,旨在解决 Prometheus 原生架构中的三大痛点:痛点Prometheus 原生问题Thanos 解决方案单点故障单个 Prometheus 实例宕机即监控中断多副本 + 数据去重,任一实例故障不影响查询数据持久化仅本地存储,数据随实例销毁而丢失对象存储无限期归档,11个9的持久性跨集群查询多集群各自独立,无法统一查看全局查询入口,聚合所有集群数据一句话总结:Thanos 让 Prometheus 从"单机版"升级为"企业级分布式监控系统",且对现有配置几乎零侵入。二、核心架构:六大组件解析Thanos 采用模块化设计,各组件可独立部署、按需启用。下图是官方标准架构:text┌─────────────────────────────────────────────────────────────────────────────┐ │ Grafana / PromQL Client │ └────────────────────────────────────┬────────────────────────────────────────┘ │ HTTP API ▼ ┌─────────────────────────────────────────────────────────────────────────────┐ │ Thanos Query (查询入口) │ │ ┌─────────────────────────────────────┐ │ │ │ 聚合 + 去重 + 部分响应容错 │ │ │ └─────────────────────────────────────┘ │ └───────────────┬─────────────────┬─────────────────┬─────────────────────────┘ │ │ │ ▼ ▼ ▼ ┌───────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐ │ Sidecar (实时数据) │ │ Store Gateway │ │ Ruler (可选) │ │ ┌─────────────────┐ │ │ (历史数据) │ │ ┌─────────────────┐ │ │ │ Prometheus │ │ │ 从对象存储读取 │ │ │ 全局告警/记录规则│ │ │ │ + Sidecar 容器 │ │ └───────────┬───────────┘ │ └─────────────────┘ │ │ └─────────────────┘ │ │ │ │ │ │ │ │ │ │ │ │ │ gRPC │ │ gRPC │ │ gRPC │ └───────────┼────────────┘ │ └───────────┼────────────┘ │ ▼ │ │ ┌───────────────────────┐ │ └─────────────▶│ 对象存储 (S3/GCS) │◀─────────────┘ │ ┌─────────────────┐ │ │ │ Compact (后台) │ │ │ │ 压缩 + 降采样 │ │ │ └─────────────────┘ │ └───────────────────────┘2.1 Sidecar(边车)部署位置

更多文章