记一次Prometheus的WAL异常,导致服务器磁盘占用过高
一、问题描述国庆假期期间群里有开发联调环境服务器监控告警具体信息如下登录到服务器之后发现prometheus目目录下面有很多WAL文件总文件大小占用了接近20G,所以触发了上图的空间占用告警二、原因分析理论上prometheus应该配置了WAL日志的压缩和保留策略可以看到Prometheus的pod里面配置文件配置了15天的保留策略理论上不会出现磁盘占用问题--config.file/etc/prometheus/prometheus.yml --storage.tsdb.path/prometheus --storage.tsdb.retention.time15d --web.listen-address:9090当时查看Prometheus日志发现一些关键信息compaction failed corruption in segment /prometheus/wal/00000066 unexpected full record同时还能看到write block Head GC completed Creating checkpoint这些关键日志表明- Prometheus 仍在持续接收监控样本- Head 数据仍可能正常生成新的 block- 但在创建 checkpoint、读取 WAL 段 00000066 时遇到损坏或不完整记录- checkpoint 失败后旧 WAL 无法正常截断- 新 WAL 持续生成最终导致 /data/prometheus/dev-test/wal 占满磁盘。三、解决方案1. 停止 Prometheuskubectl -n monitoring scale deployment/prometheus --replicas0 kubectl -n monitoring get pod -l app.kubernetes.io/nameprometheus必须确认 Prometheus Pod 已终止并确认节点上没有仍在运行的 Prometheus 进程pgrep -af /bin/prometheus|prometheus --config.file || true2. 保留旧 TSDB 并创建新目录STAMP$(date %Y%m%d%H%M%S) BACKUP/data/prometheus/dev-test.corrupt.${STAMP} ​ mv /data/prometheus/dev-test $BACKUP mkdir -p /data/prometheus/dev-test chown --reference$BACKUP /data/prometheus/dev-test chmod --reference$BACKUP /data/prometheus/dev-test ​ ls -ld /data/prometheus/dev-test $BACKUP df -hT /3. 恢复 Prometheuskubectl -n monitoring scale deployment/prometheus --replicas1 kubectl -n monitoring rollout status deployment/prometheus --timeout180s验证kubectl -n monitoring get pod -l app.kubernetes.io/nameprometheus -o wide kubectl -n monitoring logs -l app.kubernetes.io/nameprometheus --since10m四、后续优化1. 存储优化不要把 Prometheus TSDB 放在节点根分区使用独立数据盘或 Kubernetes PVC为 Prometheus 配置明确的存储容量和扩容方案这次开发联调环境应该避免生产环境使用无容量边界的HostPath对 TSDB 目录设置独立的磁盘使用率监控。2. 数据保留和远端存储时间保留和容量保留同时配置通过--storage.tsdb.retention.time与--storage.tsdb.retention.size双重约束重要监控数据使用remote_write写入长期存储明确本地数据丢失后的恢复目标和可接受时间。示例--storage.tsdb.retention.time15d --storage.tsdb.retention.size80GB实际容量应根据磁盘大小、样本量、压缩比例和增长趋势测算不应机械套用示例值。3. 版本和升级评估从2.22.1升级到当前组织批准的稳定版本升级前备份配置、规则、告警和数据目录先在测试环境验证 WAL replay、compaction、remote_write 和规则兼容性4. 告警建议至少配置以下告警文件系统使用率超过 80%、90%、95%Prometheus TSDB WAL 目录持续增长Prometheus compaction 失败Prometheus WAL 损坏或 checkpoint 失败Prometheus readiness 失败抓取目标大量丢失Prometheus 重启次数异常远端写入失败或积压。5. 运维巡检如果是生产环境建议每日或每小时执行只读巡检df -hT / du -sxh /data/prometheus/dev-test du -sxh /data/prometheus/dev-test/wal find /data/prometheus/dev-test/wal -maxdepth 1 -type f | wc -l kubectl -n monitoring get pod -l app.kubernetes.io/nameprometheus kubectl -n monitoring logs -l app.kubernetes.io/nameprometheus --since1h \ | grep -Ei corruption|compaction failed|checkpoint|out of space|error

相关新闻

OpenClaw 小龙虾 AI 部署避坑,Windows 一键安装详细教程

OpenClaw 小龙虾 AI 部署避坑,Windows 一键安装详细教程

OpenClaw 小龙虾 AI|Windows 可视化一键部署实操教程 适配版本:Windows 3.1.0 / Mac 2.7.9 项目特点:图形可视化操作,自动配置运行环境,自带全套依赖组件,内置 28 万 Tokens 额度 Windows 3.1.0 下载地址&a…

2026/10/7 8:17:06 阅读更多 →
Linux进程基础(一):从操作系统管理到PCB、fork、进程状态、僵尸与孤儿进程

Linux进程基础(一):从操作系统管理到PCB、fork、进程状态、僵尸与孤儿进程

Linux进程基础(一):从操作系统管理到PCB、fork、进程状态、僵尸与孤儿进程 🔥 星恒随风:个人主页❄️ 个人专栏:《指针合集》|《C语言基础》|《数据结构》|《机器学习导论…

2026/10/7 8:17:05 阅读更多 →
C / C++ 标准版本演进全解

C / C++ 标准版本演进全解

文章目录 引言 C++ 标准版本演进时间线与核心定位 主流 C++ 版本核心特性深度剖析 C++11:现代 C++ 的奠基与重构 C++14:精雕细琢的增量补丁 C++17:高效落地的工业级标准 C++20:颠覆性的架构升级 C++23 / C++26:体验补齐与范式革命 C++ 兼容性综述 源码级兼容:语言标准的“…

2026/10/7 8:17:05 阅读更多 →

最新新闻

高速PCB差分信号与时钟同步优化:从原理到调试的实战指南

高速PCB差分信号与时钟同步优化:从原理到调试的实战指南

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

2026/10/7 8:51:33 阅读更多 →
卡特兰数的本质:Dyck路径与前缀约束的结构性指纹

卡特兰数的本质:Dyck路径与前缀约束的结构性指纹

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

2026/10/7 8:51:33 阅读更多 →
本地文件自动备份到阿里云盘:OAuth鉴权、MD5增量与定时任务实战

本地文件自动备份到阿里云盘:OAuth鉴权、MD5增量与定时任务实战

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

2026/10/7 8:51:33 阅读更多 →
Spring Boot智慧养老系统实战:从项目结构到二次开发全解析

Spring Boot智慧养老系统实战:从项目结构到二次开发全解析

简介:这是一套基于SpringBoot开发的智慧养老中心管理系统完整项目源码,面向Java Web学习者、毕业设计开发者及养老信息化从业人员。系统覆盖老人档案管理、健康监测、日常活动安排、服务记录、员工管理、财务与物资管理以及家属沟通平台等核心业务模块&a…

2026/10/7 8:51:33 阅读更多 →
Vivado门级网表导出实战:模式选择、SDF反标与后仿真验证

Vivado门级网表导出实战:模式选择、SDF反标与后仿真验证

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

2026/10/7 8:51:32 阅读更多 →
调速系统实战:从双闭环整定到交流矢量控制

调速系统实战:从双闭环整定到交流矢量控制

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

2026/10/7 8:50:32 阅读更多 →

日新闻

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

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

2026/10/7 1:01:58 阅读更多 →
用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

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

2026/10/7 1:02:00 阅读更多 →
芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

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

2026/10/7 1:02:00 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

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

2026/10/6 7:15:40 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

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

2026/10/6 5:29:09 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

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

2026/10/6 6:26:51 阅读更多 →

月新闻

我发现了一个新思路:用 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/6 8:21:32 阅读更多 →
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/6 4:21:51 阅读更多 →
黑夜航拍船只数据集训练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/6 1:18:13 阅读更多 →