Linux服务器CPU和IO的监控利器-iostat简介

目录

一.下载方式

1.1Debian和Ubuntu系统的的下载方式

1.2Centos,RHEL和Fedoar系统的下载方式

二.基本用法说明

三.范例

3.1显示所有设备的负载情况

3.2每隔4秒显示所有设备的负载情况

3.2.1定时不定次显示所有信息

3.2.2定时定次显示所有信息

3.3显示磁盘拓展的I/O信息

四.补充介绍

[4.1 iostat的优点](#4.1 iostat的优点)

[4.2 iostat的缺点](#4.2 iostat的缺点)


一.下载方式

1.1Debian Ubuntu 系统的的下载方式

sudo apt-get install sysstat

1.2Centos RHEL Fedoar 系统的下载方式

sudo yum install sysstat

二.基本用法说明

iostat的基本用法如下:

iostat [options] [devices] [interval] [count]

options:修改命令行为或指定要显示的信息类型的标志。

devices:要显示其 I/O 统计信息的设备。默认情况下,iostat 显示当前设备所有的统计信息。

interval:更新之间的时间间隔(以秒为单位)。默认情况下,iostat 只显示一次信息

count:显示的更新次数。默认情况下,如果指定了更新间隔时间,iostat 一直运行直至手动停止更新。

三.范例

3.1 显示所有设备的负载情况

显示设备使用情况直接使用下面命令:

iostat

负载查询结果如下图所示

下方是avg-cpu的属性值具体解释:

%user:CPU处在用户模式下的时间百分比。

%nice:CPU处在带NICE值的用户模式下的时间百分比。

%system:CPU处在系统模式下的时间百分比。

%iowait:CPU等待输入输出完成时间的百分比。如果此值过高,证明硬盘存在I/O瓶颈。

%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。

%idle:CPU空闲时间百分比。如果此值过高但是系统响应过慢时候,可能是CPU等待分配内存,需要按需加大内存容量。

下面是Device的属性值的具体解释:

tps:该设备每秒的传输次数

kB_read/s:每秒从设备(drive expressed)读取的数据量;

kB_wrtn/s:每秒向设备(drive expressed)写入的数据量;

kB_read: 读取的总数据量;

kB_wrtn:写入的总数量数据量;

3.2 每隔 4 秒显示所有设备的负载情况

3.2.1 定时不定次显示所有信息

 iostat 2

该命令会每隔2秒中就会显示所有的信息且会一直更新,如下图所示:

3.2.2 定时定次显示所有信息

iostat 5 3

这个命令则是每隔5秒就会显示一次更新信息,总共显示3次。如下图所示:

3.3 显示磁盘拓展的 I/O 信息

 iostat -x

此命令是显示磁盘拓展的I/O信息,信息较为具体,如下图所示。

下面是各个参数的介绍:

r/s: 每秒完成的读请求数。

rkB/s: 每秒从设备读取的千字节数(KB)。

rrqm/s: 每秒合并的读请求数(通过设备的读请求队列合并以减少实际读操作次数)。合并的请求在磁盘上可能以单个请求的形式被处理。

%rrqm: 合并的读请求占总读请求的百分比。

r_await: 读取请求的平均等待时间(毫秒),包括在队列中的时间和服务时间。

rareq-sz: 平均每次读请求的大小(以扇区为单位)。

w/s: 每秒完成的写请求数。

wkB/s: 每秒写入设备的千字节数(KB)。

wrqm/s: 每秒合并的写请求数。

%wrqm: 合并的写请求占总写请求的百分比。

w_await: 写入请求的平均等待时间(毫秒)。

wareq-sz: 平均每次写请求的大小(以扇区为单位)。

d/s: 每秒处理的设备传输(如磁盘块传输)。

dkB/s: 每秒通过设备传输的千字节数(KB)。

drqm/s: 每秒合并的设备传输请求数。

%drqm: 合并的设备传输请求占总设备传输请求的百分比。

d_await: 设备传输的平均等待时间(毫秒)。

dareq-sz: 平均每次设备传输的大小(以扇区为单位)。

f/s: 每秒完成的文件系统操作数(如打开、关闭、读取等)。

f_await: 文件系统操作的平均等待时间(毫秒)。

aqu-sz: 队列的平均长度,即等待处理的请求数量。

%util: 设备的忙碌时间百分比。这个值表示设备在采样周期内忙于处理 I/O 请求的时间比例。

四.补充介绍

4.1 iostat 的优点

iostat 是一个功能强大的系统监控工具,它能够实时显示系统的 I/O 性能统计信息,包括磁盘的读写速度、每秒的 I/O 操作次数以及设备的平均请求大小等关键指标。通过提供丰富的命令行选项,iostat 允许用户灵活选择并展示所需的内容,比如 CPU 使用情况和详细的磁盘设备统计信息。这一特性使得 iostat 在多种场景下都极具价值,无论是数据库性能调优、文件服务器性能评估还是虚拟化环境性能监控,它都能发挥重要作用。通过深入分析 iostat 提供的数据,用户可以迅速识别并定位系统的性能瓶颈,进而采取针对性的优化措施,以提升系统的整体性能和响应速度。

4.2 iostat 的缺点

iostat 主要侧重于系统整体的 I/O 性能分析,而非深入至特定进程的层面。它提供的统计信息多为一段时间内的平均值,因此可能难以精确捕捉系统性能的瞬时峰值或特定进程的详细 I/O 使用情况。为了更全面地了解系统性能或特定进程的 I/O 行为,用户可能需要结合其他工具(如 iotop)进行综合分析。


文章正下方可以看到我的联系方式:鼠标"点击" 下面的 "威迪斯特-就是video system微信名片 "字样,就会出现我的二维码,欢迎沟通探讨。


相关推荐
中云DDoS CC防护蔡蔡32 分钟前
微信小程序被攻击怎么选择高防产品
服务器·网络安全·微信小程序·小程序·ddos
HPC_fac130520678161 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
yaoxin5211233 小时前
第二十七章 TCP 客户端 服务器通信 - 连接管理
服务器·网络·tcp/ip
内核程序员kevin3 小时前
TCP Listen 队列详解与优化指南
linux·网络·tcp/ip
sinat_384241097 小时前
使用 npm 安装 Electron 作为开发依赖
服务器
朝九晚五ฺ7 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
自由的dream7 小时前
Linux的桌面
linux
xiaozhiwise8 小时前
Makefile 之 自动化变量
linux
Kkooe8 小时前
GitLab|数据迁移
运维·服务器·git