小技巧:你知道iostat是从哪里得到IO相关信息的吗?使用strace命令能跟踪到答案:
shell> strace -eopen iostat
open("/proc/diskstats", O_RDONLY)
注:关于diskstats的说明,参见官方文档(field1 ~ field11)。
我最常用的iostat命令格式是:『iostat -dx 1』,意思是每隔一秒显示一次IO扩展信息。
shell> iostat -dx 1
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s
sda 0.18 37.71 0.65 2.63 50.18 322.08
avgrq-sz avgqu-sz await svctm %util
113.46 0.35 107.49 1.67 0.55
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s
sda 0.00 4208.00 0.00 165.00 0.00 163872.00
avgrq-sz avgqu-sz await svctm %util
993.16 119.54 1144.36 6.07 100.10
注:开头显示的是自系统启动开始的平均值,后面显示的是每段时间间隔里的平均值。
介绍一下相关参数的含义:
# rrqm/s:队列中每秒钟合并的读请求数量
# wrqm/s:队列中每秒钟合并的写请求数量
# r/s:每秒钟完成的读请求数量
# w/s:每秒钟完成的写请求数量
# rsec/s:每秒钟读取的扇区数量
# wsec/s:每秒钟写入的扇区数量
# avgrq-sz:平均请求数据的大小
# avgqu-sz:平均请求队列的长度
# await:平均每次请求的等待时间
# svctm:平均每次请求的服务时间
# util:设备的利用率
注:建议对照源代码来记忆这些参数都是如何计算出来的。
关于这些参数,相对重要的是后面几个,具体来说是:util,svctm,await,avgqu-sz:
util是设备的利用率。如果它接近100%,通常说明设备能力趋于饱和(并不绝对,比如设备有写缓存)。有时候可能会出现大于100%的情况,这多半是计算时四舍五入引起的。
svctm是平均每次请求的服务时间。这里有一个公式:(r/s+w/s)*(svctm/1000)=util。举例子:如果util达到100%,那么此时svctm=1000/(r/s+w/s),假设IOPS是1000,则svctm大概在1毫秒左右,如果长时间大于这个数值,说明系统出了问题。
await是平均每次请求的等待时间。这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。
avgqu-sz是平均请求队列的长度。毫无疑问,队列长度越短越好,这就不用多做解释了。
提醒:如果是RAID等多盘系统,iostat结果的参考价值可能有变化,建议查阅相关资料。
分享到:
相关推荐
iostat 监视磁盘操作,磁盘IO
iostat来对linux硬盘IO性能进行检测iostat来对linux硬盘IO性能进行检测iostat来对linux硬盘IO性能进行检测iostat来对linux硬盘IO性能进行检测
Linux下使用iostat监测IO状态
iostat,linux下IO读写分析工具
iostat用法,详细说明如何通过iostat来查看硬盘的io情况
Android IO的操作
Linux下使用iostat监测IO状态.docxLinux下使用iostat监测IO状态.docx
Linux下使用iostat监测IO状态[文].pdf
无法通过yum安装 所有依赖包都在里面 CentOS 6.4 I/O工具iostat所有依赖包
主要介绍了如何使用iostat查看linux硬盘IO性能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
iostat是一个用于在类似Unix的系统(Linux / MacOS)中创建预编译二进制文件的IO统计信息的工具。
AIX的iostat命令解析,比较全面,有截图比较,看起来比较直观。
Linux在具有高稳定性、可靠性的同时,具有很好的可伸缩性和扩展性,能够针对不同的应用和硬件环境调整,优化出满足当前应用需要的最佳性能。...下文将介绍几个较为重要的性能分析工具vmstat、iostat和sar及其使用。
一个zabbix监控模板,用于监控系统中的nvme0n1的性能,值取自iostat。agent端脚本见文章
用windows任务管理器查看,发现新增列里面只有程序IO用量(字节),没有IO吞吐量(B/S)。 就用wmi接口写了一个 可以实现: 1. 仿照*nix的iostat命令的格式; 2. 可以只列出Top N的进程; 3. 可以按照PID、名称、写...
服务器IO性能评估【监控命令+性能指标+iostat使用】[收集].pdf
iostat实测iostat实测iostat实测iostat实测iostat实测iostat实测
各种UNIX平台下vmstat与iostat输出结果详解