当前位置:首页 > 文章列表 > 文章 > linux > Linux iostat await 和 util 怎么看:区分磁盘延迟、队列堆积与设备忙碌

Linux iostat await 和 util 怎么看:区分磁盘延迟、队列堆积与设备忙碌

来源:17golang原创 2026-08-28 03:55:10 0浏览 收藏

磁盘告警里最容易被误读的是 %util:看到它接近 100%,就直接下结论说“磁盘满了”。实际排查 Linux I/O 时,awaitaqu-sz%util 必须放在同一个采样窗口里看,才能分清请求是在排队、设备服务慢,还是并行设备的统计口径让利用率看起来很高。

先用 iostat -x -y 2 6 取得连续样本,再把 awaitaqu-sz%util 与读写方向放在一起判断;单看一列,尤其是 %util,不足以证明设备已经到达性能上限。

要点速览
  • await 包含排队时间和设备实际服务时间,适合观察请求端到端等待。
  • aqu-sz 持续升高而吞吐没有同步增加,通常要优先检查队列堆积。
  • %util 接近 100% 对串行设备更有警示意义,对并行 SSD 或 RAID 不能单独当作饱和证据。
  • 首次历史报告容易混入开机以来的平均值,使用 -y 后再按固定间隔复测。

先把 iostat 的首次报告排除掉

iostat 默认会先输出一段从系统启动到当前时刻的累计统计。服务器刚经历过批处理或备份时,这一行可能和眼前的故障窗口完全不是一回事。排查现场先固定设备、间隔和样本数:

iostat -x -y 2 6

-x 展开设备级指标,-y 跳过第一份历史报告,2 6 表示每 2 秒采样一次,共输出 6 份报告。先观察第二到第六份是否稳定,再谈某个数字是不是异常。样本期间最好不要同时重启服务或手工制造大量 I/O,否则你看到的是操作本身的影响。

Linux iostat -x 采样窗口中同时读取 await、aqu-sz 和 util 的设备证据

await 高,究竟高在排队还是高在服务时间

await 是 I/O 请求从发出到完成的平均时间,包含请求在队列里等待的时间,也包含设备真正处理请求的时间。它不是“磁盘转速”的别名,也不能直接当成某个固定硬件的健康阈值。

排查时至少把它和 aqu-sz、读写方向、吞吐一起看:

读数组合优先假设下一步
await 高、aqu-sz 也升高请求在设备前排队确认是谁在产生读写,检查队列是否持续增长
await 高、aqu-sz 很低单个请求服务耗时高,或样本量太小延长采样窗口,区分读写方向并复测
await 低、吞吐正常暂未看到明显设备等待不要仅凭高 %util 判定饱和

这里别急着把参数改成“更大的队列”。队列变长可能只是把等待藏起来,应用侧的请求延迟反而更难解释。先用 pidstat -d 2 6 或业务日志找出读写来源,再回到设备行核对。

%util 接近 100% 时,先确认设备是不是并行处理

%util 表示在统计时间里,设备有 I/O 请求处于活动状态的比例。对一次只能服务有限并发请求的设备,它接近 100% 往往值得警惕;但现代 SSD、NVMe 或 RAID 可以同时处理多个请求,此时设备持续忙碌不等于已经达到吞吐或 IOPS 极限。

更稳妥的判断是看趋势:%util 很高、await 持续上升、aqu-sz 同时堆积,且业务延迟同步变差,才更像设备或下游路径正在成为瓶颈。如果 %util 高但 await 平稳、队列接近零,先检查业务负载类型、设备并行度和采样窗口,不要直接扩容或替换磁盘。

Linux iostat 通过 await、aqu-sz、util 和并行设备判断磁盘瓶颈的决策路径

用固定采样结果做一次反向验证

假设某次采样显示 await=18msaqu-sz=0.20%util=98%。这个组合只能说明设备在窗口内几乎一直有请求,但队列并不长,不能单独证明“磁盘已经跑满”。如果下一轮业务高峰中 await 变成 80ms、aqu-sz 逐步增大,且读写吞吐接近不再增长,证据才开始指向排队和服务能力不足。

复测时保持三件事不变:同一个设备名、同一个采样间隔、同一个业务负载。若设备被 LVM、容器或虚拟化层包住,还要把上层设备和底层块设备放在同一时间段对照,避免只看其中一层。

常见问题:iostat 三列读数怎么避免误判

为什么第一次 iostat 输出总是和后面不同?

第一次报告可能覆盖系统启动以来的累计区间,历史负载会稀释或放大当前现象。使用 -y 跳过它,再用固定间隔采样。

await 高是不是一定要换磁盘?

不是。先确认请求是否排队、读写方向是否变化,以及高等待是否和业务延迟同步出现。样本太少或只发生在单一请求类型时,不能直接推导硬件结论。

%util 为什么高了但 aqu-sz 还是很低?

设备可能一直有请求但并没有形成长队列,或者设备具备并行处理能力。继续观察 await、吞吐和业务延迟,再判断是否接近真正上限。

把判断落到三列联读

日常值班可以把结论压缩成一句话:先用 await 看请求等了多久,再用 aqu-sz 看是否在排队,最后用 %util 判断设备是否持续有活跃请求;遇到 SSD、NVMe 或 RAID,再把并行处理能力和业务延迟补进证据链。这样得到的判断可复测,也比“util 100% 所以磁盘坏了”更接近真实现场。

版本声明
本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
Go io.NewSectionReader 怎么读取文件切片:Offset、Seek 与越界返回Go io.NewSectionReader 怎么读取文件切片:Offset、Seek 与越界返回
上一篇
Go io.NewSectionReader 怎么读取文件切片:Offset、Seek 与越界返回
Web Components 的 customElements.whenDefined 怎么处理组件先渲染后注册:升级时机与失败分支
下一篇
Web Components 的 customElements.whenDefined 怎么处理组件先渲染后注册:升级时机与失败分支
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • ljg-skills -
    ljg-skills
    ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
    5344次使用
  • MELO音乐 - AI 音乐生成平台,支持多模态创作能力
    MELO音乐
    MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
    4854次使用
  • UniScribe - AI 免费在线音视频转文字平台
    UniScribe
    UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
    4806次使用
  • 剧云 - 免费 AI 智能中文剧本创作平台
    剧云
    剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
    5053次使用
  • 万象有声 - AI 一站式有声内容创作平台
    万象有声
    万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
    5010次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码