iostat命令
一、介绍
iostat用于监视系统IO以及CPU使用情况。
二、安装
sudo apt-get install sysstat
三、语法和选项、参数
语法:iostat [选项] [参数]
选项:
- -c:仅显示CPU使用情况
- -d:仅显示设备IO情况
- -k:显示状态以kb/s为单位
- -m:显示状态以mb/s为单位
- -p:仅显示块设备及所有被使用其他分区的状态
- -t:显示每个报告产生的时间
- -x:显示IO扩展内容
- -v:显示版本号
参数:
- 间隔时间:每次报告的间隔时间,单位:s
- 次数:产生报告次数
四、实例
1、实时显示磁盘IO状态
命令:iostat -d -k 1
解析:仅显示IO设备情况,显示数据以kb/s为单位,间隔1s刷新
输出:
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
输出信息含义:
- tps:该设备美妙传输次数,一次传输指一次IO请求
- kB_read/s:每秒从设备读取的数据量
- kB_wrtn/s:每秒写入设备的数据量
- kB_read:读取的总数据量
- kB_wrtn:写入的总数据量
2、实时显示扩展IO使用情况的信息
命令:iostat -d -x -k 1
输出:
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.00 1.99 6.17 1.19 217.83 125.32 93.22 0.00 0.50 0.34 1.28 0.21 0.16
dm-0 0.00 0.00 5.89 3.18 212.14 125.32 74.44 0.00 0.52 0.36 0.82 0.17 0.16
dm-1 0.00 0.00 0.07 0.00 1.70 0.00 47.65 0.00 0.12 0.12 0.00 0.06 0.00
输出信息含义:
- rrpm/s:每秒这个设备相关的读取请求有多少被合并(当系统调用需要读取数据 时,VFS将请求发到各个FS,当FS发现不同的读取请求读取的是相同block的数据时,FS 会将这个请求合并)
- wrpms/s:每秒这个设备相关的写入请求有多少被合并
- r/s:每秒读取的扇区数
- w/s:每秒写入的扇区数
- rkB/s:每秒发往设备的读请求数
- wkB/s:每秒发往设备的写请求数
- avgrq-sz:平均请求扇区的大小
- avgqu-sz:平均请求队列的⻓度
- await:每一个IO请求的处理时间即IO响应时间(队列时间+服务时间),单位毫秒微妙
- r_await:每一个读请求处理时间
- w_await:每一个写请求处理时间
- svctm:平均每次IO操作服务时间(当await远大于svctm时,说明IO队列等待太⻓,应 用晨程序运行将变慢)
- %util:表示一秒内IO操作所占比例,计算公式:(r/s+w/s)*(svctm/1000),对于单个磁 盘而言,由于不具备并发,所以此值可以描述当前IO负载,但是对于raid阵列以及SSD来 说,此值没有参考意义