讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux怎么在生产环境搭建全套Prometheus+Thanos实现超大规模长期监控

千涛大大_8992

千涛大大_8992

发布时间:2026-11-07 12:45:19

|

945人浏览过

|

来源于php中文网

原创

生产环境 Thanos 必须分层部署、组件解耦、存储分离,单实例 Prometheus + Sidecar 会导致上传失败、查询卡顿、Compactor 崩溃;Sidecar、Store Gateway、Query、Compactor 各有严格生产约束,对象存储配置需精确到 bucket 命名、TLS、region 等细节,历史数据查不到多因时间窗口未对齐或组件启动顺序错误。

linux怎么在生产环境搭建全套prometheus+thanos实现超大规模长期监控

生产环境不能只装一个 Prometheus 再加个 Thanos 就算“全套”——必须分层部署、组件解耦、存储分离,否则 1000+ 节点或 300+ 集群下,查询卡顿、上传失败、Compactor 崩溃是常态。

为什么不能直接用单实例 Prometheus + Thanos Sidecar?

这是最常踩的坑:把 Thanos 当成“Prometheus 插件”来用,结果在压测阶段就暴露问题。

  • Prometheus 本地 storage.tsdb.max-block-duration 默认是 2h,但若设置过大(如 24h),Sidecar 上传 block 时会卡住,因为 block 太大、压缩慢、网络超时;设太小(如 30m)又导致对象存储里碎片 block 过多,Store Gateway 启动慢、索引压力大。
  • Sidecar 和 Prometheus 共享同一进程内存,Prometheus OOM 时 Sidecar 也挂,上传中断,对象存储出现“半块”(half-written block),Compactor 后续会反复报 invalid block: meta.json missing 错误。
  • 所有集群共用一个 Query 实例?一旦该节点 CPU 或网络抖动,跨区域查询全挂,且无法按租户/集群做查询限流。

必须拆开部署的四个核心组件及其生产约束

Thanos 不是“一装就灵”,每个组件在生产中都有明确职责边界和资源契约:

Linuxdo Application
Linuxdo Application

为 Linux.do 注册撰写高通过率、去 AI 化的中文小作文。进行自适应调查以了解申请人的真实背景,...

下载
  • Sidecar:仅与单个 Prometheus 实例绑定,启动参数必须含 --tsdb.path=/prometheus(路径需与 Prometheus 的 --storage.tsdb.path 严格一致),且 --prometheus.url 必须用 http://localhost:9090(不可用 Pod IP 或 DNS,避免 DNS 缓存失效导致探针失败)。
  • Store Gateway:每个实例最多对接 1 个对象存储 bucket,不支持多 bucket 聚合;建议按集群维度部署独立实例(如 store-gw-cluster-a),避免单点故障影响全局历史数据访问。
  • Query:必须通过 --store 显式列出所有后端(如 --store=dnssrv+_grpc._tcp.thanos-store-gw-a.default.svc.cluster.local),不能依赖自动服务发现——DNS SRV 记录变更延迟会导致部分 store 瞬间不可达。
  • Compactor:必须单实例运行(并发 compact 会破坏对象存储中 block 的一致性),且需配置 --wait 参数防止在 block 正在上传时提前触发降采样;日志中若频繁出现 skipping block: not healthy,说明上游 Sidecar 上传未完成或 Store Gateway 尚未加载该 block。

对象存储配置的关键细节(MinIO/S3/OSS)

别只填 endpoint 和 key——生产环境对象存储配置错一个字段,就会让整个 Thanos 长期存储失效:

  • objstore.yml 中的 bucket 名必须全小写(MinIO 严格校验,Thanos 上传时若遇到大写 bucket 名会静默失败);
  • 使用 MinIO 时,insecure: true 仅限内网,但必须同步关闭 tls_config.insecure_skip_verify: true,否则 Sidecar 启动时报 failed to create client: unable to load TLS config;
  • S3 兼容存储(如阿里云 OSS、腾讯云 COS)需显式指定 region 字段,即使 endpoint 已含地域信息(如 oss-cn-hangzhou.aliyuncs.com),否则 Store Gateway 列表 bucket 时返回空;
  • 所有组件(Sidecar/Store Gateway/Compactor)必须使用同一份 objstore.yml,且文件权限为 600,否则 thanos 进程启动时拒绝读取密钥。

查不到历史数据?先确认这三件事

90% 的“查不到 7 天前数据”问题,不是配置错,而是没理解 Thanos 数据流的三个时间窗口:

  • Prometheus 本地保留策略:--storage.tsdb.retention.time=7d —— 只控制本地磁盘留多久,不影响对象存储;
  • Sidecar 上传时机:默认每 2 小时上传一次已封存 block(由 max-block-duration 控制),但首次上传要等第一个 block 完整生成(即至少 2h 后才见首块);
  • Store Gateway 加载延迟:启动后需主动扫描对象存储,首次加载可能耗时数分钟(取决于 block 数量),期间 /status 页面显示 0 blocks loaded 是正常现象,不是故障。

真正容易被忽略的是:如果 Query 组件启动早于 Store Gateway,它不会自动重试连接,必须手动重启 Query 或等待其内部健康检查周期(默认 30s)后才恢复聚合能力。

热门AI工具

更多
Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

Flowith
Flowith Hot

Flowith是一款基于画布和智能体工作流的 AI 协作工作空间。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

创客贴AI

创客贴AI是一款AI图像与设计工具,AI辅助的智能在线设计工具。

讯飞智文

一款面向学习和办公场景的AI文档创作工具,可辅助生成PPT与Word文档,提高资料整理和内容制作效率。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

4430

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

3713

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

3013

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

7450

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

7082

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

4033

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

3525

2023.07.20

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

3779

2023.07.25

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

20

2026.11.05

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 0.1万人学习

SQL优化与排查(MySQL版)
SQL优化与排查(MySQL版)

共26课时 | 3.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn