【操作系统】磁盘IO常见性能指标和分析工具实战

举报
互联网小阿祥 发表于 2023/06/01 21:34:09 2023/06/01
【摘要】 磁盘IO常见性能指标和分析工具实战

1.磁盘读写常见的指标

(1)IOPS(Input/Output Operations per Second)

  • 指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次,有顺序IOPS和随机IOPS
  • 比如100次/秒,那iops就是100次/秒,例如数据库类应用等典型场景重点提升这个指标,下面是阿里云盘性能

(2)吞吐量/带宽(Throughput)

  • 是指单位时间内可以成功传输的数据数量,单位为MB/s
  • 比如 一个硬盘的读写 IO 是 1MB,硬盘的 IOPS 是 100,那么硬盘总的吞吐率就是 100MB/s
    • 带宽 = IOPS * IO大小

(3)访问时延(Latency)

  • 是指IO请求从发出到收到响应的间隔时间,常以毫秒ms或者微妙us为单位
  • 硬盘响应时间 = 硬盘访问时间 + IO排队延迟,过高的时延会导致应用性能下降或报错。
  • 普通的HDD磁盘,随机IO读写延迟是10毫秒,IO带宽大约100MB/秒,随机IOPS一般在100左右

(4)使用率 Utilization

  • 指磁盘处理 I/O 的时间百分比,过高的使用率 ,常规字段 Utilization-缩写%util 表示
  • 如超过 80%意味着磁盘 I/O 存在性能瓶颈

(5)I/O 等待队列长度 Queue Length

  • 表示等待处理的 I/O 请求的数目,如果 I/O 请求压力持续超出磁盘处理能力,就会增大队列长度

(6)饱和度

  • 使用率只考虑有没有IO,不考虑IO的大小;当使用率是100%时,磁盘也可能接收新的IO请求

2.iostat查看系统综合的磁盘IO情况

  • 格式:iostat [参数] [时间] [次数] iostat -p ALL -h
  • 参数说明
参数 说明
-c 仅显示CPU状态统计信息
-d 仅显示磁盘统计信息
-k或者-m 以kb或者mb为单位显示,常用-h可读性高
-p 指定显示IO的设备,ALL表示显示所有
-x 显示详细信息

在这里插入图片描述

注意:iostat不能直接得到磁盘饱和度

字段 说明
r/s 每秒发送给磁盘的读请求次数,r/s+w/s 是磁盘IOPS
w/s 每秒发送给磁盘的写请求次数,r/s+w/s手机磁盘IOPS
rkB/s 每秒从磁盘读取的数据量,rkB/s+wkB/s 是吞吐量
wkB/s 每秒向磁盘写入的数据量,rkB/s+wkB/s 是吞吐量
r_await 读请求处理完成等待时间,包括在队列中的等待时间和设备实际处理时间
r_await+w_await ,是RT响应时间
w_await 写请求处理完成等待时间,包括在队列中的等待时间和设备实际处理时间
r_await+w_await ,是RT响应时间
aqu-sz 平均请求队列长度
rareq-sz 平均读请求大小
wareq-sz 平均写请求大小
%util 磁盘处理I/O的时间百分比,表示的是磁盘的忙碌情况;如果>80% 就是磁盘可能处于忙碌状态
一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间I/O队列是非空的

3.磁盘IO常见指标和分析命令工具介绍

(1)iotop命令

  • 查看当前系统各个进程使用磁盘IO的情况
  • 安装:yum -y install iotop
  • iotop -o -d 3 每3秒刷新下各个进程磁盘IO情况
参数 说明
-o 只显示正在读写磁盘的程序
-d 跟一个数值,表示iotop命令刷新的时间

在这里插入图片描述

字段 说明
Total DISK READ 从磁盘中读取的总速率
Total DISK WRITE 往磁盘里写入的总速率
Actual DISK READ 从磁盘中读取的实际速率
Actual DISK WRITE 往磁盘里写入的实际速率
TID 线程ID,按p可以转换成进程ID
PRIO 优先级
USER 线程所有者
DISK READ 进程从磁盘中读取的速率
DISK WRITE 进程往磁盘里写入的速率
SWAPIN 进程swap交换百分比
IO> IO等待所占用的百分比
COMMAND 具体的进程命令
  • iostats是系统级别的IO监控
  • iotop是进程级别的IO监控

(2)案例测试:模拟IO密集型应用,系统是4核

  • 终端一 模拟2个磁盘IO进程, 持续600s stress --hdd 2 --hdd-bytes 6G --timeout 600s
  • 终端二 全局 iostat -d -x 1
  • 终端三 全局 top
  • 终端四 局部 iotop

在这里插入图片描述

  • 测试结果

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。