iostat命令用来查看磁盘IO的读写情况,用法如下:
安装iostat命令
[root@hym ~]# yum install -y sysstat
[root@hym ~]# iostat // 只显示一次
[root@hym ~]# iostat 1 //每秒显示一次
[root@hym ~]# iostat 1 5 //每秒显示一次,总共显示5次
[root@hym ~]# iostat
Linux 4.18.0-240.el8.x8664 (centos8.3-2) 07/14/2021 _x86_64 (1 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle
4.49 0.97 4.98 0.06 0.00 89.50

Device tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 60.55 417.35 2617.72 1874392 11756565
scd0 0.00 0.00 0.00 1 0
dm-0 1.78 3.48 3.65 15624 16380
dm-1 64.04 396.92 2554.87 1782626 11474261
dm-2 64.04 396.92 2554.87 1782626 11474261
dm-3 71.23 397.27 2854.44 1784178 12819669
dm-4 17.96 13.50 58.75 60648 263876

说明:
cpu属性值说明:
%user:CPU处在用户模式下的时间百分比。
%nice:CPU处在带NICE值的用户模式下的时间百分比。
%system:CPU处在系统模式下的时间百分比。
%iowait:CPU等待输入输出完成时间的百分比。
%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。
%idle:CPU空闲时间百分比。

备注:
如果%iowait的值过高,表示硬盘存在I/O瓶颈
如果%idle值高,表示CPU较空闲
如果%idle值高但系统响应慢时,可能是CPU等待分配内存,应加大内存容量。
如果%idle值持续低于10,表明CPU处理能力相对较低,系统中最需要解决的资源是CPU。

Device:具体的磁盘

tps:设备每秒的传输次数,也就是每秒多少次IO请求


# kB_read/s:每秒从设备读取的数据量
# kB_wrtn/s:每秒向设备写入的数据量
# kB_read:读取的总数据量
# kB_wrtn:写入的总数据量

查看设备使用率(%util)、响应时间(await)
# 【-d 显示磁盘使用情况,-x 显示详细信息】
# d: detail iostat -d -x -k 1 1

iostat -d -x -k 1 1
Linux 2.6.32-642.el6.x8664 (localhost.localdomain) 09/06/2019 _x86_64 (24 CPU)

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda 0.02 260.45 2.58 137.11 174.79 1703.96 26.90 0.08 0.57 0.92 0.57 0.06 0.87

说明:
rrqm/s: 每秒进行 merge 的读操作数目.即 delta(rmerge)/s
wrqm/s: 每秒进行 merge 的写操作数目.即 delta(wmerge)/s
%util: 一秒中有百分之多少的时间用于 I/O
如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷
idle小于70% IO压力就较大了,一般读取速度有较多的wait。