iostat 详细说明,系统磁盘IO负载分析

iostat是I/O statistics(输入/输出统计)的缩写,iostat提供对系统整个磁盘活动统计情况。

iostat用法:iostat [ -c | -d ] [ -k ] [ -t ] [ -V ] [ -x [ device ] ] [ interval [ count ] ]

-c:CPU的使用情况;-d:磁盘的使用情况;-k:表示每秒按kilobytes字节显示数据;-t:打印汇报的时间;-v表示打印出版本信息和用法;-x:device指定要统计的设备名称,默认为所有的设备;interval指每次统计间隔的时间;count指按照这个时间间隔统计的次数

root@xx]# iostat  -d -k -t -x 2   
Linux 2.6.32-504.16.2.el6.x86_64 (VM_163_122_centos)    09/11/2018      _x86_64_        (8 CPU)

09/11/2018 12:30:13 PM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
vda               0.00     1.73    0.09    1.55     0.98    13.11    17.15     0.01    4.94   2.03   0.33
vdb               0.03   393.42    7.15   85.06   289.04  1850.79    46.41     0.42    4.51   0.93   8.54

09/11/2018 12:30:15 PM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
vda               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
vdb               0.00  2096.50    0.50  115.50     2.00  7408.00   127.76    32.78  260.91   6.44  74.75

09/11/2018 12:30:17 PM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
vda               0.00     0.00    0.00    0.50     0.00     2.00     8.00     0.00    4.00   4.00   0.20
vdb               0.00  1128.00    0.50   23.00     8.00  5566.00   474.38    12.19  578.47  42.34  99.50

这里我们主要看3个参数:
await:  每一个IO请求的处理的平均时间(单位是微秒毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。 这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。

svctm :表示平均每次设备I/O操作的服务时间(以毫秒为单位)。如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,如果await的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢。

%util:   在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO, 而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%, 所以该参数暗示了设备的繁忙程度 。一般地,如果该参数是100%表示设备已经接近满负荷运行了 (当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

上图实例中,util: 接近百分之百,await:IO等待时间也很长,说明磁盘遇到了瓶颈

以上实例为游戏合服过程中出现问题,主要原因有三点: 

1:购买的是腾讯云普通云硬盘

2:自建mysql数据库性能不高

3:合服数据很大

你可能感兴趣的:(linux服务器)