之前总结uptime和free命令,今天继续来总结一下iostat。给自己留个笔记,同时也希望对大家有用。
版本信息:
sysstat version 9.0.4 (C) Sebastien Godard (sysstat <at> orange.fr)
基本使用:
iostat [ -c ] [ -d ] [ -N ] [ -n ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [ device […] | ALL ] [ -p [ device [,…] | ALL ] ] [ inter-val [ count ] ]
[-c]:输出cpu统计信息 [-d]:输出磁盘统计信息 注:默认是两个都输出 [-N]:根据device mapper也就是我们经常说的LVM来输出io信息 [-n]:根据网络文件系统(NFS)输出io信息(kernel version> 2.6.17) [-h] :可读性更好的NFS统计信息 [-k | -m]:以kb/s|mb/s代替原来的块/s [-t] :输出时打印收集信息时刻的时间 注:时间的打印格式和系统变量S_TIME_FORMAT相关 [-V]:版本信息 [-x]:输出拓展统计信息 注:在下面进行总结 [-z]:复位磁盘输入/输出信息 [device […] | ALL]:设备列表 [-p [device[…]|ALL]]:设备列表,但是这个会输出子设备的io信息。比如sdb的话,就会连sdb1、sdb2等等的分区信息一同输出 [inter-val [count]]:inter-val是统计的时间间隔单位是s,count则是统计次数
输出信息解读:
基本cpu输出信息: %user:用户进程消耗cpu的比例 %nice:用户进程优先级调整消耗的cpu比例 %sys:系统内核消耗的cpu比例 %iowait:等待磁盘io所消耗的cpu比例 %idle:闲置cpu的比例(不包括等待磁盘io的s) 基本device输出信息: Device:设备的名称 Tps:设备上每秒的io传输(可能多个io被组成一个io)的次数 Blk_read/s:每秒从设备读取block(kernel 2.4以上,block=512byte)的数量 Blk_wrtn/s:每秒写到设备block(kernel 2.4以上,block=512byte)的数量 Blk_read:间隔时间内,从设备读取总的block数量 Blk_wrtn:间隔时间内,写到设备总的block数量 注:激活-k|-m 选项,将变成kb_*或者MB_* -x选项拓展输出信息: rrqm/s:每秒进行merge(多个io的合并)读操作的数量 wrqm/s:每秒进行merge(多个io的合并)写操作的数量 r/s:每秒完成读io设备的次数 w/s:每秒完成写io设备的次数 rsec/s:每秒读扇区的次数 wsec/s:每秒写扇区的次数 注:激活-k|-m 将变成rkb/s wkb/s | rmb/s wmb/s avgrq-sz:平均每次io设备的大小(以扇区为单位),因为有merge读或写,所以每次io大小需要计算 avgqu-sz:平均I/O队列长度 await:每次io设备的等待时间,也包括io服务时间(毫秒)。 await的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出模式。
使用实例:
基本分析已经结束了,我们接下来一起看看一些使用例子。详细的参数解释就略过啦
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185388.html原文链接:https://javaforall.cn