如何在Linux上安装和使用iostat

IOSTAT是轻量级的I / O统计信息,是Linux中流行的系统监视工具,它使用户能够识别各种性能问题,并从其收集的统计信息收集系统中检索CPU和系统信息。 就像IOSTAT所建议的那样,这些统计信息包括用于存储输入和输出数据的操作系统。 作为统计信息收集工具, iostat 对于任何系统管理员而言都是宝贵的。

本文将介绍在Linux服务器上安装和使用iostat。

开始

要完成本文,您需要以下内容:

  • 基于Linux的专用服务器

手册

安装过程 iostat 很简单。 iostat 是sysstat软件包的一部分,可以使用以下命令之一将其安装在各自的系统上:

CentOS的

yum install sysstat

Ubuntu / Debian的

sudo apt-get install sysstat

运行IOSTAT

可通过以下命令使用的IOSTAT工具 iostat… 输入此命令以查看其工作方式:

iostat

这是iostat命令的输出示例:

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:tps Blk_read / s Blk_wrtn / s Blk_read Blk_wrtn sda 210.53 1022.33 1394.72 2214048305 3845623328 sda1 160.20 473.24 1422.29 1844686896 3295752889 sda2 21.00 320.12 145.21 1000012186 1668872653

乍看之下,这份报告看起来似乎很复杂,但实际上却很简单。 我们将逐节说明IOSTAT报告的各个方面,因此您可以轻松地自己使用这些报告:

第1节:CPU报告

在报告的第一部分(带有百分比值的区域)中,您将找到CPU统计信息。 在这里,我们将分解为您找到的统计信息。 为了获得相关的统计信息,我们以粗体添加了有用的数据,因此您可以查看评论内容:

关于在用户/应用程序级别具有和不具有优先级以及系统/内核级别的CPU使用情况:

  • 用户百分比: 此列显示在用户/应用程序级别执行期间发生的CPU利用率百分比。
  • %好: 此列还显示用户级别在运行时发生的CPU利用率百分比,但是这次优先级较高。 这意味着只能使用Linux命令来调用命令,这会将优先级降低到这些统计信息中所示的标准级别以下。
  • 系统百分比: 在此列中,您可以看到在运行时在系统(也称为内核)级别上发生的CPU利用率百分比,与上述统计信息相比,该百分比是多少。

关于CPU空闲和延迟:

  • %iowait: 此统计信息是系统有未完成的磁盘I / O请求期间一个或多个处理器空闲的时间百分比。
  • 抢断百分比: 最后一列中的第二个继续显示虚拟机管理程序为另一个虚拟处理器提供服务时,一个或多个虚拟处理器自发等待的时间百分比。
  • % 闲: 本节的最后一列显示一个或多个处理器处于空闲状态并且系统没有磁盘I / O(输入/输出)请求的时间百分比。

第2节:设备使用情况报告

IOSTAT报告的第二部分比第一部分大很多倍,列出了所有设备并显示与它们的使用有关的统计信息。 水平阅读此部分,每行显示相应设备的统计信息:

  • 设备: 第一列显示/ Dev目录中列出的设备或分区的名称。
  • tps: 下一列显示此设备的统计信息,并显示发送到该设备的每秒传输数(tps)。 繁忙的处理器将拥有更多。
  • Blk_read / s: 该统计信息(每秒读取的单位)显示了从设备读取的数据量,以每秒的单位数量(例如千字节)表示。
  • Blk_wrtn / s: 同样,显示了每秒写入的块数,同时还以每秒的块数(例如千字节)表示正在写入设备的数据量。
  • Blk_read: 每列设备读取的总块数显示在最后一列的第二栏中。
  • Blk_wrtn: 同样,在最后一列中显示为每个设备写入的块总数。

IOSTAT高级报告

1.显示兆字节而不是字节

默认情况下,IOSTAT输入和输出系统以单个字节为单位。 但是一旦字节变小,为了更容易被人类消化,我们可以将报告转换为显示兆字节的报告,兆字节更大而且一目了然。 使用-m标志调用IOSTAT以显示报告内的兆字节:

iostat -m

请注意当前如何修改输出,如以下示例输出所示:

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:tps MB_read / s MB_wrtn / s MB_read MB_wrtn sda 210.53 0.63 0.74 1033680 1732461 sda1 160.20 0.28 0.64 1102131 1104562 sda2 21.00 0.16 0.14 392451 321456

2.高级提款状态

尽管初始报告仍然包含许多有用的信息,但是我们可以通过将IOSTAT命令与-x标志一起使用来获得更多信息,以显示高级报告:

iostat -x

IOSTAT输出现在还将包括一个扩展的统计I / O磁盘,如下面的示例所示。 请注意,与之前相比,我们显示了包装在标题信息行中的设备列输出非常大:

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:rrqm / s wrqm / sr / sw / s rsec / s wsec / s sda 7684.00 19.00 2321.00 523.00 81848.00 5287.00 avgrq-sz avgqu-sz等待svctm%util 29.86 32.99 11.17 0.34 100.00

要了解新的扩展列的含义,可以查看IOSTAT的手册页,或使用以下命令:

man iostat

3.延迟运行IOSTAT

您可以告诉IOSTAT延迟接收多个报告,称为间隔。 这可以通过使用分配给IOSTAT命令的OPTIONS参数来完成。 但是,如果仅指定了INTERVAL参数,则IOSTAT将在此时间间隔内连续生成报告,直到您停止它为止! 因此,我们还将提供第二个参数,称为COUNT参数,它也是一个数字。

IOSTAT将它们提供为:

iostat [OPTIONS] [INTERVAL] [COUNT]

对于以下情况的示例,我们要生成三个报告,每条消息之间间隔三秒,并以兆字节显示,请运行以下命令:

iostat -m 3 3

上面命令中的最后两位代表时间间隔参数和计数参数。 间隔参数(示例中的前3个)告诉IOSTAT在每个报告之间等待三秒钟,随后的每个报告都包含自上一个报告以来的时间统计信息。 计数器参数(示例中的第二个3)告诉IOSTAT,总共应生成多少个报告。 回到我们的示例,输出应如下所示:

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:tps MB_read / s MB_wrtn / s MB_read MB_wrtn sda 210.53 0.62 0.74 1022670 1752461 sda1 160.20 0.29 0.64 1012132 1204462 sda2 21.00 0.17 0.14 394452 312446

在三秒钟内。

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:tps MB_read / s MB_wrtn / s MB_read MB_wrtn sda 210.53 0.62 0.74 1022670 1752461 sda1 160.20 0.29 0.64 1012132 1204462 sda2 21.00 0.17 0.14 394452 312446

再过三秒钟。

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60设备:tps MB_read / s MB_wrtn / s MB_read MB_wrtn sda 210.53 0.62 0.74 1022670 1752461 sda1 160.20 0.29 0.64 1012132 1204462 sda2 21.00 0.17 0.14 394452 312446

4.每节仅显示一份报告

IOSTAT还允许您更改报告,仅显示CPU的第一部分或第二磁盘的部分。 为了只显示CPU统计信息,我们可以在命令中将IOSTAT与-c标志一起使用:

iostat -c

我们将以一种情况为例,在该情况下,我们仅希望以两秒钟的间隔显示CPU部分,并显示五次信息(即,仅每两秒钟从一个报告中总共生成五个报告)。 为此,请运行以下命令:

iostat -c 2 5

输出将如下所示:

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%窃取%空闲4.00 0.00 0.40 1.00 0.00 94.60

在两秒钟内。

Linux 2.6.32x86_64(dev-db)03/01/2016 avg-cpu:%用户%nice%系统%iowait%偷窃%空闲4.00 0.00 0.40 1.00 0.00 94.60

再过两秒钟。

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%窃取%空闲4.00 0.00 0.40 1.00 0.00 94.60

再过两秒钟。

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%窃取%空闲4.00 0.00 0.40 1.00 0.00 94.60

再过两秒钟。

Linux 2.6.32x86_64(dev-db)2016年3月1日avg-cpu:%用户%nice%系统%iowait%窃取%空闲4.00 0.00 0.40 1.00 0.00 94.60

输出量

本指南介绍了在Linux系统上使用IOSTAT系统监视和统计工具的基础知识。 有关报告可能更改的更多信息,请参见IOSTAT的在线手册页,您可以从中获得最大的收益。

如果您发现此IOSTAT简介对您有所帮助,请与您的朋友分享!

Sidebar