iostat命令简单使用
1.iostat使用范围
iostat命令可以生成3种类型的报告:
(1)CPU使用情况的报告
(2)设备使用情况的报告
(3)网络文件系统(NFS)使用情况的报告
2.每种报告的格式说明
关于CPU使用报告的格式解释:
%user:应用程序使用CPU的时间占比。
%nice:拥有高优先级的应用程序占用CPU的时间百分比。
默认情况下,所有应用程序的优先级一样,所以CPU不会偏袒哪一个。但如果有的优先级高,CPU就会先
去执行它们,那么对于这群身份特殊的应用程序,我们用%nice来统计它们的CPU使用占比。
%system:内核程序使用CPU的时间占比。
%iowait:CPU花费了多少时间去等待磁盘IO。此时CPU是空闲的,什么事都不做。
%idle:CPU什么都不做,既没有等待磁盘IO,也没有做其他事情。完全空闲状态。
%steal:之前管理程序服务于CPU1,突然CPU2跑来了,此时管理程序跟CPU1说:你等会哈,我先去服务CPU2,马上回来。
此时,CPU1被强制置于等待状态。CPU1等待的时间占比就是%steal。(个人理解)
关于设备使用报告的格式解释:
tps:每秒发送给设备的传输数。这里的传输指的是:发给设备的一个I/O请求。
所以,tps的意思就是:每秒发给设备的I/O请求数。一个读请求叫做一个I/0,一个写请求也叫做一个I/O。
Blk_read/s:每秒从设备读取的block数。每个block的大小是512字节,等于一个扇区的大小。
Blk_wrtn/s:每秒写入到设备的block数。每个block的大小是512字节,等于一个扇区的大小。
Blk_read:从该设备读取的总block数。发出去的block数。
Blk_wrtn:写入到该设备的总block数。拿进来的block数。
kB_read/s:每秒从设备读取的千字节数。kilobytes。
kB_wrtn/s:每秒写入到设备的千字节数。kilobytes。
kB_read:从设备读取的总千字节数。kilobytes。发出去的数据量。
kB_wrtn:写入到该设备的总千字节数。kilobytes。拿进来的数据量。
MB_read/s:每秒从该设备读出去的兆字节数。megabytes。
MB_wrtn/s:每秒写入到该设备的兆字节数。megabytes。
MB_read:从该设备读出去的总兆字节数。
MB_wrtn:写入到该设备的总兆字节数。
rrqm/s:没有理解,会查找资料来补充。
wrqm/s:没有理解,会查找资料来补充。
r/s:每秒发送给设备的读请求数。(重要指标)
w/s:每秒发送给设备的写请求数。(重要指标)
rsec/s:每秒从这个设备读取了多少个扇区。
wsec/s:每秒写入了多少个扇区到该设备。
rkB/s:每秒从设备读取的千字节数。kilobytes。(与前面的kB_read/s一样)
wkB/s:每秒写入到设备的千字节数。kilobytes。(与前面的kB_write/s一样)
rMB/s:与上面类似。
wMB/s:与上面类似。
avgrq-sz:所有发送给设备的请求,都有大小。这个参数用于表示所有请求的平均大小,以扇区为单位。
avgqu-sz:假如第1秒,设备前的请求队列中有5个请求;第2秒,设备前的队列中有4个请求;
第3秒,设备前的请求队列中有3个请求,那么现在我来计算,设备前的队列,平均每秒是多长:
5 + 4 + 3 / 3 = 4。也就是平均每秒都有4个请求在排队。
await:设备服务每个请求的平均时间。包括请求的排队时间和实际服务时间。比如我去肯德基,
我的前面有4个人,排了15分钟后,服务员开始给我服务。我点了汉堡和可乐,过
了5分钟,服务员将汉堡和可乐交给了我,我拿着东西离开了。所以对于我这个人(请求),
肯德基的服务时间是20分钟。单位是毫秒。
svctm:这个字段会在将来的sysstat安装包中移除。所以不需要关注。(我们的iostat来自于sysstat这个安装包)
%util:没有理解,会查找资料来补充。
关于网络文件系统报告:
NFS客户端会挂载NFS服务端分享的设备,我们可以在NFS客户端上统计我们使用NFS的情况。
Filesystem:指的是网络文件系统。可以用ip:目录或hostname:目录表示。
比如:10.10.10.10:/data/image或者img.example.com:/data/image。
rBlk_nor/s:应用程序通过read()这个系统调用接口,从网络文件系统中读出来的block数,一个block的大小是512字节。
wBlk_nor/s:应用程序通过write()这个系统调用接口,写入到网络文件系统中的block数。
rBlk_dir/s:我们从某个打开的文件中读取的block数。这个文件在网络文件系统中,并且是以O_DIRECT标记打开的。
wBlk_dir/s:我们写入到某个打开的文件中的block数。这个文件在网络文件系统中,并且是以O_DIRECT标记打开的。
rBlk_svr/s:NFS客户端通过NFS READ请求,从服务器读取的block数。
wBlk_svr/s:NFS客户端通过NFS WRITE请求,写入到服务器的block数。
rkB_nor/s:应用程序通过read()这个系统调用接口,从网络文件系统中读出来千字节数。kilobytes。
wkB_nor/s:应用程序通过write()这个系统调用接口,写入到网络文件系统中的千字节数。kilobytes。
rkB_dir/s:我们从某个打开的文件中读取的千字节数。这个文件在网络文件系统中,并且是以O_DIRECT标记打开的。
wkB_dir/s:我们写入到某个打开的文件中的千字节数。这个文件在网络文件系统中,并且是以O_DIRECT标记打开的。
rkB_svr/s:NFS客户端通过NFS READ请求,从服务器读取的千字节数。
wkB_svr/s:NFS客户端通过NFS WRITE请求,写入到服务器的千字节数。
rMB_nor/s:同上,只是改了下单位。
wMB_nor/s:同上,只是改了下单位。
rMB_dir/s:同上,只是改了下单位。
wMB_dir/s:同上,只是改了下单位。
rMB_svr/s:同上,只是改了下单位。
wMB_svr/s:同上,只是改了下单位。
ops/s:每秒向文件系统发起的操作数。
rops/s:每秒向文件系统发起的读操作数。
wops/s:每秒向文件系统发起的写操作数。
总的来说,套路就是:block数,千字节数,兆字节数。
3.命令选项
iostat -c 只显示CPU使用情况
iostat -d 只显示设备使用情况
iostat -n 只显示网络文件系统使用情况
iostat -k 以千字节显示,没有加k时,是以block数显示的
iostat -m 以兆字节显示,没有加m时,是以block数显示的
iostat -N 查看LVM2时比较有用
iostat -j { ID | LABEL | PATH | UUID} [ device | ALL ] 没理解,待查资料。
iostat -p [ { device | ALL } ] 显示块设备的统计信息以及它的分区的统计信息,比如sda块设备和它的分区sda1。
iostat -t 显示每次打印的时间
iostat -V 打印sysstat的版本
iostat -x 展示扩展统计数据,需要参考/proc/diskstat文件和/proc/partions文件
iostat -y 忽略第一次报告(第一次统计数据是从系统启动后算起的),从第二次开始显示
iostat -z 忽略那些在取样期间,没有任何活动的设备统计数据。也就是说,如果设备没有任何写入和读取,那么无须统计它的数据
4.注意事项
/proc文件系统必须要挂载上,iostat才可以工作。
svctm:平均服务时间,这个字段以后将没有意义。因为I/O统计数据是在block层计算的,我们并不知道磁盘驱动器什么时候开始处理一个请求。
5.附加文件
/proc/stat包含系统统计数据。
/proc/uptime包含系统运行时间。
/proc/diskstats包含磁盘统计数据。
/sys包含块设备的统计数据。
/proc/self/mountstats包含网络文件系统的统计数据。
/dev/disk包含持久设备名
6.其余参考命令
sar
pidstat
mpstat
vmstat
iostat命令简单使用的更多相关文章
- iostat命令简单说说
tps: 每秒钟发送到的I/O请求数. Blk_read /s: 每秒读取的block数 Blk_wrtn/s: 每秒写入的block数 Blk_read: 读入的block总数 Blk_wrtn: ...
- [转]iostat命令详解
iostat iostat用于输出CPU和磁盘I/O相关的统计信息. 命令格式: iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ devi ...
- iostat命令详解
iostat iostat用于输出CPU和磁盘I/O相关的统计信息. 命令格式: iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ devic ...
- iostat命令学习
iostat命令主要用于监控linux系统下cup和磁盘IO的统计信息 可以通过iostat --help获得该命令的帮助信息 [oracle@std ~]$ iostat --help Usage: ...
- linux iostat命令详解 磁盘操作监控工具
Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视. 它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...
- 系统性能监控之vmstat和iostat命令
这篇文章主要介绍一些Linux性能检测相关的命令. vmstat和iostat的两个命令可以运行在主流的Linux/Unix操作系统上. 如果vmstat和iostat命令不能再你的电脑上运行,请安装 ...
- dd命令简单易用,例如
dd命令简单易用,例如 bs单位,count为写入的范围区间,例如以下举例: 例:使用dd清除vote disk和ocr(裸设备) $dd if=/dev/zero of=/dev/rrac_ocr ...
- Linux - iostat命令详解
简介 iostat可以提供更丰富的IO性能状态数据,iostat命令有两个用途: 输出CPU的统计信息 输出设备和分区的I/O统计信息 命令语法及参数说明 语法: iostat [ -c | -d ] ...
- ssh远程登录命令简单实例
ssh远程登录命令简单实例 ssh命令用于远程登录上Linux主机. 常用格式:ssh [-l login_name] [-p port] [user@]hostname 更详细的可以用ssh -h查 ...
随机推荐
- 利用excel去除txt文本中重复项
2017-04-10 1.要去重的文件,点击右键,选择程序. 2.选择excel表格或者wps表格. 3.excel表格去重:选中单元格——数据——筛选——高级筛选——选择不重复记录——确定 wps表 ...
- ITIL,是否已是昨日黄花
首先声明自己不是ITIL方面的专家,特别是具体的规范细节,后面论述如有不当,请指正.但我为什么会提起它?主要是因为它和运维(IT服务管理)相关性太大了.早起的运维完全就是以ITIL来蓝本构建的,在当时 ...
- Android 在同一个手机上安装多个同样的apk,便于调试
Android studio 在同一个手机上安装多个同样的apk 原文地址:http://yj.itrydo.com/posts/iKJryXL9zkfSGRTZk 先看效果: 1.在我使用ecsli ...
- C# Redis Server分布式缓存编程(一)
这篇文章我将介绍如果用最简洁的方式配置Redis Server, 以及如何使用C#和它交互编程 一. 背景介绍 Redis是最快的key-value分布式缓存之一 缺点: 没有本地数据缓冲, 目前还没 ...
- react-native Image resizeMode
resizeMode (默认为 cover)该属性用来设置图片的缩放模式,对应值如下 cover 保持图片宽高比,直到宽度和高度都大于等于容器视图的尺寸(参考下图效果)contain 在保持图片宽高比 ...
- 不得不看的Java代码性能优化总结
原文:https://blog.csdn.net/mr_smile2014/article/details/50112723 前言 代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么 ...
- 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效
数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...
- Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool。后面三种布尔类型是为了与其他语言兼容而引入的
bool是LongBool类型. Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool.后面三种布尔类型是为了与其他语言兼容而引入的,一般情况下建议使 ...
- 【JQuery Easy UI】后台管理系统的简单布局分享
重要说明:本博已迁移到 石佳劼的博客.有疑问请到 文章新地址 留言..! 近期做的一个简单的后台管理系统,当中用到了JQuery Easy UI框架,对于撸主这样的把控件能摆整齐就谢天谢地的码农来说, ...
- 捕获网络数据包并进行分析的开源库-WinPcap
什么是WinPcap WinPcap是一个基于Win32平台的,用于捕获网络数据包并进行分析的开源库. 大多数网络应用程序通过被广泛使用的操作系统元件来访问网络,比如sockets. 这是一种简单的 ...