一、概述
作用iostat是I/O statistics(输入/输出统计)的缩写,主要对系统的磁盘操作活动进行监视
iostat的特点是汇报磁盘活动及CPU使用情况,输出磁盘IO和CPU的统计信息
劣势
iostat有一个弱点,即并不能对某个进程进行深入分析,仅对系统的整体情况进行分析
二、安装
iostat属于sysstat软件包,安装iostat的命令:
yum install -y sysstat
三、语法
iostat --h
3.1 用法
iostat [ 选项 ] [ <时间间隔> [ <次数> ] ]
Options are:[ -c ] [ -d ] [ -N ] [ -n ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ][ -j {ID | LABEL | PATH | UUID | ... } [ <device> [...] | ALL ] ][ <device> [...] | ALL ] [ -p [ <device> [,...] | ALL ] ]
3.2 语法
iostat(选项)(参数)
选项
-c:显示CPU使用情况
-d:显示磁盘使用情况
-N:显示磁盘阵列(LVM)信息
-n:显示NFS 使用情况
-k:以 KB 为单位显示
-m:以 M 为单位显示
-t:显示每个报告产生时的时间
-p:显示磁盘和分区的情况
-V:显示版号并退出
-x:显示扩展状态
参数
间隔时间:每次报告的间隔时间(秒)
次数:显示报告的次数
四、示例
4.1 iostat
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
disk属性值说明:
device:磁盘名称tps:每秒钟发送到的I/O请求数kB_read/s:每秒读取的block数kB_wrtn/s:每秒写入的block数kB_read:读入的block总数kB_wrtn:写入的block总数
4.2 间隔刷新
iostat 1 5
间隔1秒,总共显示5次
4.3 指定磁盘信息
显示指定磁盘信息
iostat -d /dev/sdaiostat -d sda
4.4 使用率&响应时间
查看设备使用率(%util)、响应时间(await)
iostat -d -x -k 1 1
rrqm/s:每秒进行merge读操作的数量wrqm/s:每秒进行merge写操作的数量r/s:每秒完成读I/O设备的次数w/s:每秒完成写I/O设备的次数rkB/s:每秒读K字节数wkB/s:每秒写K字节数avgrq-sz:平均每次设备I/O操作的数据大小(扇区)avgqu-sz:平均I/O队列长度await:平均每次设备I/O操作的等待时间(毫秒)r_await:每个读操作平均所需的时间
不仅包括硬盘设备读操作的时间,还包括了在kernel队列中等待的时间。w_await:每个写操作平均所需的时间
不仅包括硬盘设备写操作的时间,还包括了在kernel队列中等待的时间svctm: 平均每次设备I/O操作的服务时间(毫秒)%util:一秒中有百分之多少的时间用于I/O操作
备注:
如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈如果idle小于70%时,IO压力就较大,一般读取速度有较多的wait
4.5 查看cpu状态
查看cpu状态,间隔1秒显示一次,总共显示2次
iostat -c 1 2