iostat用于监控统计系统输入输出设备和 CPU 的使用情况,英文 I/O statistics 的缩写。它的特点是汇报磁盘活动统计情况,同时也会汇报出 CPU 使用情况。同
vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iostat属于sysstat软件包,所以使用前需先安装sysstat。
命令格式
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 | 写入的总数据量 |
应用实例
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











网友评论