当前位置: 首页 > news >正文

iostat的使用说明

iostat的使用说明

1.iostat 说明

iostat 是一个 系统性能监控工具,主要用于 监控 CPU 使用情况磁盘 I/O(输入/输出)性能。它是 sysstat 工具包的一部分,广泛用于 Linux 系统中,特别适合用于分析磁盘性能瓶颈、排查系统慢速问题、优化服务器性能等场景。

2.iostat使用

查看 CPU 和磁盘 I/O 的总体情况


# iostatLinux 4.18.0-348.el8.x86_64 (u1azabbixap01)     07/18/2025      _x86_64_        (16 CPU)avg-cpu:  %user   %nice %system %iowait  %steal   %idle2.22    0.00    1.41    2.29    0.00   94.08Device             tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda             812.19        11.42     29196.00  264496284 675977519865
scd0              0.00         0.00         0.00          2          0
dm-0           1069.61        15.50     33777.77  358979876 782059474470
dm-1              0.20         0.31         0.48    7073248   11207048
dm-2              0.04         0.00         0.14      97942    3205004
loop0             0.00         0.31         0.00    7272881          0
sdb             281.36         4.41      4582.39  102152879 106096375027
sdc               0.00         0.00         0.00      13141        874

📊 一、整体 CPU 使用情况(avg-cpu 部分)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle2.22    0.00    1.41    2.29    0.00   94.08
指标含义当前值说明
%user用户态 CPU 使用率2.22%较低,表示用户程序消耗的 CPU 不多
%niceNiced 用户进程 CPU 使用率0.00%无优先级调整的进程
%system内核态 CPU 使用率1.41%正常范围
%iowait等待 I/O 完成的 CPU 时间2.29%较高,表示系统存在一定的 I/O 压力
%steal虚拟机等待物理 CPU 时间0.00%无资源争抢
%idleCPU 空闲时间94.08%表示 CPU 资源整体充足

📝 结论:虽然 CPU 总体负载很低,但 %iowait 达到 2.29%,说明存在 磁盘 I/O 等待,可能是瓶颈所在。


📊 二、磁盘和逻辑卷 I/O 情况(Device 部分)

🔹 关键指标解释

列名含义
tps每秒 I/O 请求次数(IOPS)
kB_read/s每秒读取的数据量(单位 KB)
kB_wrtn/s每秒写入的数据量(单位 KB)
kB_read总共读取的数据量(单位 KB)
kB_wrtn总共写入的数据量(单位 KB)

🔹 各设备详细分析

sda:主磁盘(系统盘)
sda            812.19        11.42     29196.00  264496284 675977519865
  • 每秒写入: 29,196 KB/s(约 28.5 MB/s
  • 每秒 IOPS: 812 次
  • 总写入数据: 675,977,519,865 KB ≈ 675TB

🚨 问题:写入量非常大,说明 /dev/sda 是系统主要的 I/O 来源,可能是 /(根目录)或日志目录 /var/log 所在磁盘,存在 性能瓶颈风险


dm-0:LVM 逻辑卷(根文件系统 /
dm-0          1069.61        15.50     33777.77  358979876 782059474470
  • 每秒写入: 33,777 KB/s ≈ 33 MB/s
  • 每秒 IOPS: 1069 次
  • 总写入数据: 782,059,474,470 KB ≈ 782 TB

🚨 结论:这是 /(根文件系统),承受了 大量写入压力,与 sda 的高负载直接相关,是性能瓶颈的主要来源


dm-1:swap 交换分区
dm-1             0.20         0.31         0.48    7073248   11207048
  • 写入极少,说明系统 没有发生明显的内存交换(swap),这是好的现象。

dm-2/home 分区
dm-2             0.04         0.00         0.14      97942    3205004
  • 写入量极低,几乎没有 I/O 压力。

loop0:挂载的 ISO 或镜像文件
loop0            0.00         0.31         0.00    7272881          0
  • 只有读操作,没有写入,可能是 /mnt/media 下挂载的镜像文件。

sdb:另一个磁盘(可能为数据盘)
sdb            281.36         4.41      4582.39  102152879 106096375027
  • 每秒写入: 4,582 KB/s ≈ 4.5 MB/s
  • 每秒 IOPS: 281 次
  • 总写入数据: 106,096,375,027 KB ≈ 106 TB

结论:负载适中,比 sda 小很多,可以考虑将部分写入负载迁移到此磁盘。


sdc:当前未使用磁盘
sdc              0.00         0.00         0.00      13141        874
  • 几乎无 I/O 活动
  • 可以用于扩容 LVM、迁移 /var/log/tmp 等目录

📌 三、关键结论

设备状态建议
sda高写入负载(28.5MB/s)存在 I/O 瓶颈,考虑迁移负载
dm-0根文件系统 /,写入最大优化 /var/log/tmp 等目录
dm-1swap 使用极低无内存压力
dm-2/home 几乎无负载无需优化
sdb负载适中可用于迁移数据
sdc无负载可用于扩容 LVM 或新建挂载点

3. iostat -xmt 1 动态监控 使用

系统实时 I/O 性能监控的详细数据,可以帮助我们分析系统当前的 磁盘负载、I/O 延迟、吞吐量 等关键性能指标


## 动态监控# iostat -xmt 1Linux 4.18.0-348.el8.x86_64 (u1azabbixap01)     07/21/2025      _x86_64_        (16 CPU)07/21/2025 04:31:29 PM
avg-cpu:  %user   %nice %system %iowait  %steal   %idle8.15    0.00    2.76    5.08    0.00   84.02Device            r/s     w/s     rMB/s     wMB/s   rrqm/s   wrqm/s  %rrqm  %wrqm r_await w_await aqu-sz rareq-sz wareq-sz  svctm  %util
sda              0.00 2238.00      0.00     69.82     0.00     0.00   0.00   0.00    0.00    2.83   6.33     0.00    31.94   0.44  98.80
scd0             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
dm-0             0.00 2961.00      0.00     82.07     0.00     0.00   0.00   0.00    0.00    2.71   8.01     0.00    28.38   0.34  99.40
dm-1             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
dm-2             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
loop0            0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
sdb              0.00  780.00      0.00     12.27     0.00     0.00   0.00   0.00    0.00    2.66   2.08     0.00    16.10   0.17  13.30
sdc              0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00

📊 一、整体 CPU 使用情况(avg-cpu 部分)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle8.15    0.00    2.76    5.08    0.00   84.02
指标当前值说明
%user8.15%用户态 CPU 使用率偏高(可能有大量进程运行)
%system2.76%内核态 CPU 使用率正常
%iowait5.08%较高,表示存在明显 I/O 等待
%idle84.02%CPU 空闲资源充足,但 I/O 成为瓶颈

🚨 结论:CPU 并不繁忙,但 %iowait 高,说明系统性能瓶颈在 磁盘 I/O


📊 二、磁盘 I/O 性能分析(-xmt 扩展模式)

🔍 关键指标解释
列名含义
r/s每秒读请求数
w/s每秒写请求数
rMB/s, wMB/s每秒读/写数据量(MB)
w_await写请求平均等待时间(ms)
aqu-sz请求队列平均长度
%util磁盘利用率(>60% 表示瓶颈)

🔍 三、设备分析(按设备排序)

🔴 sda(主磁盘)
sda              0.00 2238.00      0.00     69.82     0.00     0.00   0.00   0.00    0.00    2.83   6.33     0.00    31.94   0.44  98.80
  • 写入 IOPS: 2238
  • 写入吞吐量: 69.82 MB/s
  • %util: 98.8%
  • 写请求等待时间: 2.83 ms

🚨 结论sda 几乎满负荷运行,是当前系统 最大的 I/O 瓶颈


🔴 dm-0(LVM 根文件系统 /

dm-0             0.00 2961.00      0.00     82.07     0.00     0.00   0.00   0.00    0.00    2.71   8.01     0.00    28.38   0.34  99.40
  • 写入 IOPS: 2961
  • 写入吞吐量: 82.07 MB/s
  • %util: 99.4%
  • 写请求等待时间: 2.71 ms

🚨 结论dm-0/ 文件系统,承受了 极大写入压力,与 sda 的高负载直接相关,是 性能瓶颈的主要来源


🟡 sdb(数据盘)

sdb              0.00  780.00      0.00     12.27     0.00     0.00   0.00   0.00    0.00    2.66   2.08     0.00    16.10   0.17  13.30
  • 写入 IOPS: 780
  • 写入吞吐量: 12.27 MB/s
  • %util: 13.3%
  • 写请求等待时间: 2.66 ms

结论:负载适中,I/O 响应良好,可以用于迁移负载


sdc(空闲磁盘)

sdc              0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
  • 无任何 I/O 活动
  • 可以用于扩容 LVM、迁移 /var/log/tmp 等目录

📌 四、关键结论总结

设备状态建议
sda主磁盘,写入频繁I/O 瓶颈,建议迁移部分负载
dm-0根文件系统 /,写入最大性能瓶颈,优化 /var/log/tmp 等目录
sdb负载适中可用于迁移数据
sdc无负载可用于扩容 LVM 或新建挂载点

4. iostat -xmt 1 5

参数含义
iostat命令本身,用于监控 CPU 和磁盘 I/O
-x显示 扩展统计信息(更详细的 I/O 指标)
-m显示数据单位为 MB/s(默认是 KB/s)
-t显示 时间戳(方便查看监控的时间点)
1每隔 1 秒 刷新一次数据
5总共刷新 5 次 后自动退出命令

✅ 推荐使用场景

使用目的推荐命令
实时监控 I/O 性能iostat -xmt 1
监控 5 次后退出iostat -xmt 1 5
仅查看 CPU 使用情况iostat -c 1
查看所有设备 I/Oiostat -d -xmt 1
http://www.dtcms.com/a/291249.html

相关文章:

  • 基于深度学习的图像分类:使用ResNet实现高效分类
  • (10)机器学习小白入门 YOLOv:YOLOv8-cls 模型评估实操
  • G7打卡——Semi-Supervised GAN
  • numpy库的基础知识
  • 【VASP】机器学习势概述
  • 5G/4G PHY SoC:RNS802,适用于集成和分解的小型蜂窝 RAN 架构。
  • 在github上搭建自己主页
  • Blender软件入门-了解软件界面
  • JS逆向 - 滴滴(dd03、dd05)WSGSIG
  • Webpack源代码泄露漏洞
  • 云原生技术与应用-Kubernetes Pod调度基础
  • 热室机械手市场报告:智能装备推动高温制造自动化升级
  • 【推荐系统】推荐系统常用数据集介绍
  • 【系统全面】linux基础以及命令——基础知识介绍
  • stm32内存分析
  • ZYNQ硬核操作:免IIC驱动直控MCP4661T数字电位器
  • python实现接收九数云的异常分析指标推送通知
  • 海康威视视觉算法岗位30问及详解
  • 【开源】基于 C# 编写的轻量级工控网关和 SCADA 组态软件
  • 管理项目环境和在环境中使用conda或pip里如何查看库版本———Linux命令行操作
  • 工业仪表识别(一)环境安装
  • 一个月掌握数据结构与算法:高效学习计划
  • boost::asio 中 io_service与线程的关系
  • 企业开发转型 | 前端AI化数字化自动化现状
  • TestCase Studio - 自动生成测试用例详解
  • 注册表清理优化丨Wise RegistryCleaner_v11.1.10.725(官方赠品)
  • C# --- 使用Redis分布式锁实现初始化任务
  • Navicat数据建模三模型高效用法详解
  • 淘宝获取商品分类接口操作指南
  • Java学习 ------BIO模型