Linux 查看磁盘IO并找出占用IO读写很高的进程

编程教程 > Linux (976) 2025-01-27 09:42:05

工具准备

  • sysstat
  • iotop

工具安装

sudo apt install iotop sysstat -y

 

查看硬盘情况

sudo iostat -x 1 10

操作示例图-bb9494aea82a4a4ebbb8af89d9037722.png

由上图可知,vdb磁盘的 %util【IO】几乎都在100%,原因是频繁的读取数据造成的。

其他字段说明

  • Device:设备名称
  • tps:每秒的IO读、写请求数量,多个逻辑请求可以组合成对设备的单个I/O请求。
  • Blk_read/s (kB_read/s, MB_read/s):从设备读取的数据量,以每秒若干块(千字节、兆字节)表示。块相当于扇区,因此块大小为512字节。
  • Blk_wrtn/s (kB_wrtn/s, MB_wrtn/s):写入设备的数据量,以每秒若干块(千字节、兆字节)表示。块相当于扇区,因此块大小为512字节。
  • Blk_read (kB_read, MB_read):读取块的总数(千字节、兆字节)。
  • Blk_wrtn (kB_wrtn, MB_wrtn):写入块的总数(千字节,兆字节)。
  • rrqm/s:每秒合并到设备的读请求数。即delta(rmerge)/s
  • wrqm/s:每秒合并到设备的写入请求数。即delta(wmerge)/s
  • r/s:每秒完成的读I/O设备次数。即delta(rio)/s
  • w/s:每秒完成的写I/0设备次数。即delta(wio)/s
  • rsec/s (rkB/s, rMB/s):每秒读取设备的扇区数(千字节、兆字节)。每扇区大小为512字节
  • wsec/s (wkB/s, wMB/s):每秒写入设备的扇区数(千字节、兆字节)。每扇区大小为512字节
  • avgrq-sz:平均每次设备I/O操作的数据量(扇区为单位)。即delta(rsec+wsec)/delta(rio+wio)
  • avgqu-sz:平均每次发送给设备的I/O队列长度。
  • await:平均每次IO请求等待时间。(包括等待队列时间和处理时间,毫秒为单位)
  • r_await:平均每次IO读请求等待时间。(包括等待队列时间和处理时间,毫秒为单位)
  • w_await:平均每次IO写请求等待时间。(包括等待队列时间和处理时间,毫秒为单位)
  • svctm:平均每次设备I/O操作的处理时间(毫秒)。警告!不要再相信这个字段值,这个字段将在将来的sysstat版本中删除。
  • %util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间I/O队列是非空的。当该值接近100%时,设备饱和发生。

找IO占用高的进程

sudo iotop -oP

操作示例图-3b6169fa2b0346f484cf5274fd862d57.png

通过这个命令可以看见比较详细信息,如:进程号,磁盘读取量,磁盘写入量,IO百分比,涉及到的命令是什么「两个都是 java 命令造成的IO读取量大」。

查看占用IO高得进程pid

sudo pidstat -d 1

命令的含义:展示I/O统计,每秒更新一次

操作示例图-fba31dfa88cd49cfb50423e4747e0a23.png

然后通过pit查看进程详细信息

操作示例图-cea5f700e9ee4e249035ed4586e152eb.png

可以看到是日志系统的elasticsearch组件在耗资源

 

 


评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
工具准备sysstatiotop工具安装sudoaptinstalliotopsysstat-y查看硬盘情况sudoiostat-x110由上图可知,vdb磁盘的%util【IO】几乎都在100...
有时候服务器运行的好好的,突然就无法连接无法执行任何操作了,强制重启后需要通过系统日志排查系统故障的原因只有root特权程序才能正常关闭系统。因此,当系统以正常
开启crontab日志默认情况大多数系统都是没有开启cron的日志的。编辑配置文件sudo vim /etc/rsyslog.d/50-default.conf
1.通过文件名查找文件语法:sudo find 目录 -name '*特定字符串*'sudo 根据查询文件目录归属看是否加示例:find ./ -name '*
Linux(centos)系统远程(SSH)登录输入错误密码多次锁定账号时间PAM实现方式
Linux crontab常用表达式查看crontab任务crontab -l编辑crontab任务crontab -e每隔多少秒执行一次脚本* * * * * sleep 10; /bin/y...
一、下载安装包本次安装选择20.10.9Index of linux/static/stable/x86_64/二、安装上传下载后的压缩包到Linux系统/op
Apine Linux 配置国内软件源echo "https://mirrors.tuna.tsinghua.edu.cn/alpine/v3.16/main" &gtl; /etc/apk/r...
Docker swarm 简介Docker swarm 集群,Docker swarm是docker官方提供的一种集群方式,用于小量微服务部署还算不错,比庞大的k8s体系更轻量。节点 运行 Do...
Linux查看BIOS版本/信息详情命令如下:#dmidecode -t 0例子:root@DS:~# dmidecode -t 0 # dmidecode 2.12 # SMBIOS en...
环境本次minikube安装环境为Ubuntu 18.04.6 LTS安装docker-ce参考:Ubuntu 在线安装 Docker-xqlee (blog.xqlee.com)注意配置doc...
Alpine Linux 分区扩容切换国内源(已经操作则忽略该步骤)echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/main/" &g...
一、规则分类1.进入本机,即访问本机规则2.出本机,即本机访问外面规则3.转发,即本地转发规则,如端口7001转发到80 二、使用1.允许来自IP 10.1.1
linux中scp远程拷贝工具命令的安装和使用说明1.直接scp#scp-bash: scp: command not found如果说命名未找到,先安装scp
前置环境dockerdocker-composedocker安装参考:CentOS7安装最新Docker-ce-xqlee(blog.xqlee.com)Ubuntu在线安装Docker-xql...