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

news2024/9/22 13:42:40

目录

一.下载方式

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.2 iostat的缺点


一.下载方式

1.1DebianUbuntu系统的的下载方式

sudo apt-get install sysstat

1.2CentosRHELFedoar系统的下载方式

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)进行综合分析。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2102783.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用AI写WebSocket知识是一种怎么样的体验?

一、WebSocket基础知识 1. WebSocket概念 1.1 为什么会出现WebSocket 一般的Http请求我们只有主动去请求接口,才能获取到服务器的数据。例如前后端分离的开发场景,自嘲为切图仔的前端大佬找你要一个配置信息的接口,我们后端开发三下两下开…

Edge PDF 关闭 提供支持的应用Adobe Acrobat

Edge 在浏览PDF时启用 Adobe Acrobat支持后,对一些长PDF会出现上下滚动会出现无法正常显示PDF内容的情况。在关闭了Adobe Acrobat计算支持后,问题得到解决。关闭Adobe Acrobat的方式如下: 1. Edge地址栏输入 edge://flags ,进入如…

Java 入门指南:Java 并发编程 —— 并发容器 ConcurrentSkipListSet

SkipList SkipList(跳表)是一种有序链表加多级索引数据结构,基于有序的单链表,类似于平衡二叉树,但其查找、插入和删除操作的时间复杂度都是 O(logN),并且不需要进行旋转平衡等复杂操作。 跳表利用二分查…

【滑动窗口】将 x 减到 0 的最小操作数

将 x 减到 0 的最小操作数 将 x 减到 0 的最小操作数题目思路讲解代码书写 将 x 减到 0 的最小操作数 题目 题目链接: 将 x 减到 0 的最小操作数 思路讲解 按照题目的思路去做这一题是非常恶心的, 因此我们采用正难则反思路. 将问题转换为: 求中间某一个最长的数组长度, 使…

mybatis搭建,参数传递,增删改查事务管理

1.mybatis概述 原是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation 迁移到了 Google Code,随着开发团队转投Google Code 旗下, iBatis3.x正式更名为MyBatis。 MyBatis 是一款优秀的持久层框架。 框架就是对技术的封装&am…

Spring源码之reader、scanner

目录 1.Spring的整体启动流程 2.reader 3.Scanner ApplicationContext的三种加载应用上下文的方式(创建Spring容器): AnnotationConfigApplicationContextClassPathXmlApplicationContextFileSystemXmlApplicationContext 1.Spring的整体…

SprinBoot+Vue阅读交流微信小程序的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue3.6 uniapp代码 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍:CSDN认证博客专家,CSDN平…

观测云核心技术解密:eBPF Tracing 实现原理

前言 eBPF 是一种强大的内核技术,允许在内核中安全地执行自定义代码。通过 eBPF,开发者可以在不修改内核源码的情况下,对内核功能进行扩展和监控。eBPF Tracing 利用这一技术,对系统调用、内核函数等进行跟踪,从而实现…

X86架构(六)——移位指令与无条件转移指令

移位指令 shr 逻辑右移 逻辑右移指令会将操作数连续地向右移动指定的次数,移出的比特被移到标志寄存器的CF位,左边空出来的位置用0填充 ;目的操作数可以是8位或16位的通用寄存器或者内存单元 ;源操作数可以是数字1、8位立即数或者寄存器CL shr r/m8, …

7、Django Admin删除默认应用程序

admin文件 from django.contrib.auth.models import User, Groupadmin.site.unregister(User) admin.site.unregister(Group) 显示效果: 前 后

使用vscode debug cpp/python混合编程的程序(从python调用的C++编译的dll)

使用vscode debug cpp/python混合编程的程序(从python调用的C编译的dll) 1. 安装插件 Python C Debugger https://marketplace.visualstudio.com/items?itemNamebenjamin-simmonds.pythoncpp-debug 2. 在.vscode/launch.json中增加配置 拷贝自 https:…

K8S日志收集

本章主要讲解在 Kubernetes 集群中如何通过不同的技术栈收集容器的日志,包括程序直接输出到控制台日志、自定义文件日志等。 一、有哪些日志需要收集 为了更加方便的处理异常,日志的收集与分析极为重要,在学习日志收集之前,需要知…

矮草坪渲染尝试

本来说写unity里的,由于three测试方便,先试试three 这个图片是目标效果 可以看见草很矮,很密集,如果用instance来绘制的话,遭不住的 忽然发现这个效果很像绒毛效果 于是找了博客康康 https://zhuanlan.zhihu.com/p/256…

第二证券:涨停潮!传手机将使用钛金属外壳?

今天早盘,银行股再度重挫,导致上证指数、上证50纷乱创出阶段性新低,上证指数跌破2800点,小盘成长股则大面积反弹,创业板指、科创50等股指飘红。 盘面上,新式烟草、钛金属、锂矿、玻璃基板等板块涨幅居前&a…

glsl着色器学习(七)

先了解一个矩阵库twgl/m4 是一个4x4 矩阵数学转换函数的库 normalize(a, dst) 将一个向量除以它的欧几里得长度,归一化后返回参数"a"是一个vec3(三维向量)参数"dst"是用来接收结果的,如果不传,则…

【嵌入式体系结构复习资料】

选择: 1. 以下哪个不是嵌入式系统设计的主要目标?( D ) A.低成本 B.低功耗 C.实时要求高 D.超高性能 2. 嵌入式系统有别于其他系统的最大特点是(A )。 A.嵌入专用 B.高可靠 C.…

集成电路学习:什么是LCD液晶显示器

一、LCD:液晶显示器 LCD,全称Liquid Crystal Display,即液晶显示器,是一种平面超薄的显示设备。它由一定数量的彩色或黑白像素组成,放置于光源或者反射面前方。LCD的主要原理是以电流刺激液晶分子产生点、线、面配合背…

mysql 使用 general 开启SQL跟踪功能

查看当前状态 mysql> SHOW VARIABLES LIKE %general%; 启用 临时启用 SET GLOBAL general_logon; SET GLOBAL general_log_file/tmp/general.log; 永久启用 通过修改配置文件来启用,需要重启mysql服务 [mysqld] general_logON general_log_file/tmp/general.log 再次查看状态…

【保姆级教程】如何在Win11上搭建一个GPU环境

CUDA和CUDNN安装 CUDA安装 下载对应cuda环境 下载链接:https://developer.nvidia.com/cuda-downloads,图片下载的是 cuda_12.6.1_560.94_windows.exe 然后一路安装即可: 安装路径如下: CUDNN安装 打开cuDNN下载页面 解压后…

排查SQL Server中的内存不足及其他疑难问题

文章目录 引言I DMV 资源信号灯资源信号灯 DMV sys.dm_exec_query_resource_semaphores( 确定查询执行内存的等待)查询性能计数器什么是内存授予?II DBCC MEMORYSTATUS 查询内存对象III DBCC 命令释放多个 SQL Server 内存缓存 - 临时度量值IV 等待资源池 %ls (%ld)中的内存…