2024年11月Linux如何使用sysstat中的命令(2)

发布时间:

  ⑴二、iostat

  ⑵# iostat -x //每隔秒统计一次,共显示次

  ⑶[rootstage-new sysstat-..]# iostat -x

  ⑷Linux ..-.ELsmp (stage-new.intrabill. // _x__ ( CPU

  ⑸avg-cpu: ?%nice %system %iowait %steal %idle

  ⑹. . . . . .

  ⑺Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm ?/p>

  ⑻sda . . . . . . . . . . . . .

  ⑼avg-cpu: ?%nice %system %iowait %steal %idle

  ⑽. . . . . .

  ⑾Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm ?/p>

  ⑿sda . . . . . . . . . . . . .

  ⒀avg-cpu: ?%nice %system %iowait %steal %idle

  ⒁. . . . . .

  ⒂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 的一半,因为每扇区大小为字节。(需要计算

  ⒉wkB/s: 每秒写K字节数。是 wsect/s 的一半。(需要计算

  ⒊avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区。delta(rsect+wsect/delta(rio+wio

  ⒋avgqu-sz: 平均I/O队列长度。即 delta(aveq/s/ (因为aveq的单位为毫秒。

  ⒌await: 平均每次设备I/O操作的等待时间 (毫秒。即 delta(ruse+wuse/delta(rio+wio

  ⒍svctm: 平均每次设备I/O操作的服务时间 (毫秒。即 delta(use/delta(rio+wio

  ⒎г 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use/s/ (因为use的单位为毫秒

  ⒏如果 ?接近 %,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

  ⒐idle小于% IO压力就较大了,一般读取速度有较多的wait。 同时可以结合vmstat 查看查看b参数(等待资源的进程数和wa参数(IO等待所占用的CPU时间的百分比,高过%时IO压力高

  ⒑另外还可以参考:

  ⒒svctm 一般要小于 await (因为同时等待的请求的等待时间被重复计算了,svctm 的大小一般和磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致 svctm 的增加。await 的大小一般取决于服务时间(svctm 以及 I/O 队列的长度和 I/O 请求的发出模式。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明 I/O 队列太长,应用得到的响应时间变慢,如果响应时间超过了用户可以容许的范围,这时可以考虑更换更快的磁盘,调整内核 elevator 算法,优化应用,或者升级 CPU。

  ⒓队列长度(avgqu-sz也可作为衡量系统 I/O 负荷的指标,但由于 avgqu-sz 是按照单位时间的平均值,所以不能反映瞬间的 I/O 问题。

  ⒔上面就是Linux使用sysstat命令的方法介绍了,当然,sysstatf中的命令不止这些,本文介绍的是sysstat比较常用的命令,也是需要掌握的命令。