iostat
用于监控统计系统输入输出设备和 CPU 的使用情况,英文 I/O statistics 的缩写。
它的特点是汇报磁盘活动统计情况,同时也会汇报出 CPU 使用情况。同 vmstat
一样,iostat
也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iostat
属于 sysstat
软件包,所以使用前需先安装 sysstat
。
命令格式
1
|
iostat [参数] [间隔时间] [报告次数]
|
- 间隔时间:每次报告的间隔时间(秒)
- 报告次数:显示报告的次数
常用参数
-C
显示 CPU 使用情况
-d
显示磁盘使用情况
-k
以 KB 为单位显示
-m
以 M 为单位显示
-N
显示磁盘阵列(LVM) 信息
-n
显示 NFS 使用情况
-p[磁盘]
显示磁盘和分区的情况
-t
显示终端和 CPU 的信息
-x
显示详细信息
-V
显示版本信息
更多参数和说明,可用 man iostat
查看。
属性说明
CPU 属性值
标示 | 说明 |
%user |
CPU 处在用户模式下的时间百分比 |
%nice |
CPU 处在带 NICE 值的用户模式下的时间百分比 |
%system |
CPU 处在系统模式下的时间百分比 |
%iowait |
CPU 等待输入输出完成时间的百分比 |
%steal |
管理程序维护另一个虚拟处理器时,虚拟 CPU 的无意识等待时间百分比 |
%idle |
CPU 空闲时间百分比 |
DISK 属性值
标示 | 说明 |
Device |
监测设备名称 |
rrqm/s |
每秒需要读取需求的数量 |
wrqm/s |
每秒需要写入需求的数量 |
r/s |
每秒实际读取需求的数量 |
w/s |
每秒实际写入需求的数量 |
rsec/s |
每秒读取区段的数量 |
wsec/s |
每秒写入区段的数量 |
rkB/s |
每秒实际读取的大小,单位为 KB |
wkB/s |
每秒实际写入的大小,单位为 KB |
rMB/s |
每秒实际读取的大小,单位为 MB |
wMB/s |
每秒实际写入的大小,单位为 MB |
avgrq-sz |
需求的平均大小区段 |
avgqu-sz |
需求的平均队列长度 |
await |
等待 I/O 平均的时间(milliseconds) |
svctm |
I/O 需求完成的平均时间 |
%util |
被 I/O 需求消耗的 CPU 百分比 |
TPS 属性值
标识 | 说明 |
tps |
该设备每秒的传输次数 |
kB_read/s |
每秒从设备读取的数据量 |
kB_wrtn/s |
每秒向设备写入的数据量 |
kB_read |
读取的总数据量 |
kB_wrtn |
写入的总数据量 |
应用实例
1
2
3
4
5
6
7
8
9
|
iostat -k
Linux 2.6.32-642.13.1.el6.x86_64 (upfor106) 2016年04月21日 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.49 0.00 0.17 0.03 0.00 99.31
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
vda 0.88 1.41 8.30 47983021 281958128
|
参考资料