以下介绍6个监视Linux磁盘IO性能的命令(工具),它们分别是iotop、iostat、vmstat、atop、dstat、ioping,以下将附上简单的使用方法。
前言 磁盘IO问题(input/output)是Linux系统性能不佳的最常见原因之一。当应用程序试图在存储设备(例如硬盘驱动器、SAN和NAS)上快速读取或写入过多数据时,就会发生这种情况,这迫使应用程序和用户等待。 top命令可用于查看CPU是否正在等待磁盘操作完成。“wa”度量标准显示IO等待,CPU等待IO完成所花费的时间(以百分比表示)。参考在Linux系统中使用top命令和ps命令查找高CPU消耗进程。 在本文中,我们将说明如何使用各种Linux命令来确定磁盘IO性能问题。 在对Linux上的实时磁盘活动进行故障排除或监视时,六个命令最有用,它们分别是:iotop、iostat、vmstat、atop、dstat、ioping。这些都是常用于实时测量磁盘I/O性能的命令,也较为容易掌握。
1)、iotop iotop是用于显示实时磁盘I/O性能的,类似于top的实用程序,它实际上显示执行I/O的进程的列表。运行带有'--only或-o'选项的iotop命令以查看磁盘I/O活动。 # iotop --only 注: o:仅显示实际正在执行I/O的进程或线程。
2)、iostat iostat命令用于监视设备和分区的系统输入/输出统计信息。它通过观察设备处于活动状态的时间(相对于其平均传输速率)来监视系统I/O。 它带有与磁盘I/O相关的各种信息,可以通过运行以下命令来查看: # iotop -dxm 注: x:显示更多详细信息统计信息。 d:仅显示设备报告。 m:显示统计信息(以MB为单位)。
3)、vmstat vmstat命令代表虚拟内存统计信息。这是一个性能监视命令,除了提供内存外,它还提供有关块IO和CPU活动的信息。 报告的第一行将包含自上次重新引导以来的平均I/O值,随后的行将显示实时统计信息: # vmstat -d 1 5 注: d:仅显示磁盘统计信息。 时间间隔(1):每秒将重新测量统计信息并报告一次。 计数值(5):统计信息将在退出前报告五次。
4)、atop atop命令是另一个性能监视工具,它能够报告Linux系统上所有进程的活动(即使进程在该时间间隔内已完成)。 它每10秒报告一次每个进程的统计信息,从而迅速掌握系统中发生的变化: # atop | grep DSK
5)、dstat dstat命令是另一个方便的工具,用于在性能调整测试、基准测试或故障排除期间监视系统。它克服了其他一些工具的局限性,并增加了一些额外的功能,更多的计数器和灵活性。 默认情况下,它显示报告间隔为1秒: # dstat --disk --io
对于特定的磁盘,运行: # dstat --disk --io -D sda
6)、ioping ioping用于实时监视I/O速度和延迟,而ping命令显示网络延迟。这个简单的实用程序使您能够了解磁盘响应请求需要多长时间: # ioping /dev/nvme0n1 -c4
相关主题 |