1、Linux 中 iostat命令找不到 报错 command not found
解决办法:安装 sysstat 软件包
执行 yum install sysstat 进行安装
2、磁盘瓶颈
重要的三个指标:
%util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒)
iowait: 平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio)
svctm : 平均每次设备I/O操作的服务时间 (毫秒)。即 delta(use)/delta(rio+wio)
iostat查看IO信息。如果 %util接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
另外还需要注意 iowait这个值,iowait 值高就意味着磁盘缓慢或负载过大。还有不要信任 svctm 这个字段。
监控 swap 和 系统分区,要确保virtual memory 不是文件系统I/O 的瓶颈。
磁盘瓶颈可以通过 pidstat -d定位程序。
3、指令与常用判断指标
iosta -x
iostat -x 1(每隔一秒输出一下)
①%util (越小越好,接近100%则IO达到瓶颈)
Percentage of CPU time during which I/O requests were issued to the device (bandwidth utilization for the device).Device saturation occurs when this value is close to 100%.
注意:对于RAID磁盘组或者SSD而言,iostat中的%util就算超过了100%也未必存在瓶颈。
②svctm“平均每次设备I/O操作的服务时间 (毫秒)”
The average service time (in milliseconds) for I/O requests that were issued to the device.
svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好;
iowait的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢,此时可以通过更换更快的硬盘来解决问题
③iowait越小越好,最好是0
4、运行效果和其他指标
rrqm/s : 每秒进行 merge 的读操作数目。即 delta(rmerge)/s
wrqm/s : 每秒进行 merge 的写操作数目。即 delta(wmerge)/s
r/s : 每秒完成的读 I/O 设备次数。即 delta(rio)/s
w/s : 每秒完成的写 I/O 设备次数。即 delta(wio)/s
rsec/s : 每秒读扇区数。即 delta(rsect)/s
wsec/s : 每秒写扇区数。即 delta(wsect)/s
rkB/s : 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。(需要计算)
wkB/s : 每秒写K字节数。是 wsect/s 的一半。(需要计算)
avgrq-sz : 平均每次设备I/O操作的数据大小 (扇区)。delta(rsect+wsect)/delta(rio+wio)
avgqu-sz : 平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。
本文由51ste.com网友编辑,未经授权,不得转载使用上述作品盈利;个人转载,需标明作者及出处。