以下介紹6個(gè)監(jiān)視Linux磁盤IO性能的命令(工具),它們分別是iotop、iostat、vmstat、atop、dstat、ioping,以下將附上簡(jiǎn)單的使用方法。
前言
磁盤IO問題(input/output)是Linux系統(tǒng)性能不佳的最常見原因之一。當(dāng)應(yīng)用程序試圖在存儲(chǔ)設(shè)備(例如硬盤驅(qū)動(dòng)器、SAN和NAS)上快速讀取或?qū)懭脒^多數(shù)據(jù)時(shí),就會(huì)發(fā)生這種情況,這迫使應(yīng)用程序和用戶等待。
top命令可用于查看CPU是否正在等待磁盤操作完成?!皐a”度量標(biāo)準(zhǔn)顯示IO等待,CPU等待IO完成所花費(fèi)的時(shí)間(以百分比表示)。參考在Linux系統(tǒng)中使用top命令和ps命令查找高CPU消耗進(jìn)程。
在本文中,我們將說明如何使用各種Linux命令來確定磁盤IO性能問題。
在對(duì)Linux上的實(shí)時(shí)磁盤活動(dòng)進(jìn)行故障排除或監(jiān)視時(shí),六個(gè)命令最有用,它們分別是:iotop、iostat、vmstat、atop、dstat、ioping。這些都是常用于實(shí)時(shí)測(cè)量磁盤I/O性能的命令,也較為容易掌握。
1)、iotop
iotop是用于顯示實(shí)時(shí)磁盤I/O性能的,類似于top的實(shí)用程序,它實(shí)際上顯示執(zhí)行I/O的進(jìn)程的列表。運(yùn)行帶有'--only或-o'選項(xiàng)的iotop命令以查看磁盤I/O活動(dòng)。
# iotop --only
注:
o:僅顯示實(shí)際正在執(zhí)行I/O的進(jìn)程或線程。
監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
2)、iostat
iostat命令用于監(jiān)視設(shè)備和分區(qū)的系統(tǒng)輸入/輸出統(tǒng)計(jì)信息。它通過觀察設(shè)備處于活動(dòng)狀態(tài)的時(shí)間(相對(duì)于其平均傳輸速率)來監(jiān)視系統(tǒng)I/O。
它帶有與磁盤I/O相關(guān)的各種信息,可以通過運(yùn)行以下命令來查看:
# iotop -dxm
注:
x:顯示更多詳細(xì)信息統(tǒng)計(jì)信息。
d:僅顯示設(shè)備報(bào)告。
m:顯示統(tǒng)計(jì)信息(以MB為單位)。
監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
3)、vmstat
vmstat命令代表虛擬內(nèi)存統(tǒng)計(jì)信息。這是一個(gè)性能監(jiān)視命令,除了提供內(nèi)存外,它還提供有關(guān)塊IO和CPU活動(dòng)的信息。
報(bào)告的第一行將包含自上次重新引導(dǎo)以來的平均I/O值,隨后的行將顯示實(shí)時(shí)統(tǒng)計(jì)信息:
# vmstat -d 1 5
注:
d:僅顯示磁盤統(tǒng)計(jì)信息。
時(shí)間間隔(1):每秒將重新測(cè)量統(tǒng)計(jì)信息并報(bào)告一次。
計(jì)數(shù)值(5):統(tǒng)計(jì)信息將在退出前報(bào)告五次。
監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
4)、atop
atop命令是另一個(gè)性能監(jiān)視工具,它能夠報(bào)告Linux系統(tǒng)上所有進(jìn)程的活動(dòng)(即使進(jìn)程在該時(shí)間間隔內(nèi)已完成)。
它每10秒報(bào)告一次每個(gè)進(jìn)程的統(tǒng)計(jì)信息,從而迅速掌握系統(tǒng)中發(fā)生的變化:
# atop | grep DSK
監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
5)、dstat
dstat命令是另一個(gè)方便的工具,用于在性能調(diào)整測(cè)試、基準(zhǔn)測(cè)試或故障排除期間監(jiān)視系統(tǒng)。它克服了其他一些工具的局限性,并增加了一些額外的功能,更多的計(jì)數(shù)器和靈活性。
默認(rèn)情況下,它顯示報(bào)告間隔為1秒:
# dstat --disk --io
監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
對(duì)于特定的磁盤,運(yùn)行:
# dstat --disk --io -D sda
6)、ioping
ioping用于實(shí)時(shí)監(jiān)視I/O速度和延遲,而ping命令顯示網(wǎng)絡(luò)延遲。這個(gè)簡(jiǎn)單的實(shí)用程序使您能夠了解磁盤響應(yīng)請(qǐng)求需要多長(zhǎng)時(shí)間:
# ioping /dev/nvme0n1 -c4
審核編輯 黃宇
-
IO
+關(guān)注
關(guān)注
0文章
500瀏覽量
41565 -
Linux
+關(guān)注
關(guān)注
88文章
11581瀏覽量
217146 -
監(jiān)視
+關(guān)注
關(guān)注
0文章
73瀏覽量
19183
發(fā)布評(píng)論請(qǐng)先 登錄
華納云服務(wù)器Linux系統(tǒng)電源管理與節(jié)能優(yōu)化配置方法
Linux基礎(chǔ)命令which詳解
企業(yè)級(jí)Linux磁盤維護(hù)的完整流程
一文掌握Linux命令
Linux常用命令大全
5個(gè)Linux性能監(jiān)控命令
Linux ip命令常用操作
VMWare Linux系統(tǒng)磁盤擴(kuò)容
華納云香港云服務(wù)器8H16G5M低至166元/月,首單直降!開春上云開好局
Linux實(shí)時(shí)查看日志的四種命令詳解
Flexus X 實(shí)例 CPU、內(nèi)存及磁盤性能實(shí)測(cè)與分析
Linux系統(tǒng)監(jiān)控報(bào)I/O問題怎么辦
什么是raid磁盤冗余陣列
盤點(diǎn)Linux系統(tǒng)中的常見命令

華納云監(jiān)視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping
評(píng)論