溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么

發(fā)布時(shí)間:2022-01-21 11:17:18 來(lái)源:億速云 閱讀:355 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

這篇文章跟大家分析一下“Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么”。內(nèi)容詳細(xì)易懂,對(duì)“Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么”感興趣的朋友可以跟著小編的思路慢慢深入來(lái)閱讀一下,希望閱讀后能夠?qū)Υ蠹矣兴鶐椭?。下面跟著小編一起深入學(xué)習(xí)“Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么”的知識(shí)吧。

線上一臺(tái)服務(wù)器告警,磁盤(pán)利用率 disk.util > 90,并持續(xù)告警。登錄該服務(wù)器后通過(guò) iostat -x 1 10 查看相關(guān)磁盤(pán)使用信息。

相關(guān)截圖如下:通過(guò) iostat -x 1 10 查看相關(guān)磁盤(pán)使用信息

1 # 如果沒(méi)有 iostat 命令,那么使用 yum install sysstat 進(jìn)行安裝
2 # iostat -x 1 10

Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么

由上圖可知,vdb磁盤(pán)的 %util【IO】幾乎都在100%,原因是頻繁的讀取數(shù)據(jù)造成的。

其他字段說(shuō)明

Device:設(shè)備名稱
tps:每秒的IO讀、寫(xiě)請(qǐng)求數(shù)量,多個(gè)邏輯請(qǐng)求可以組合成對(duì)設(shè)備的單個(gè)I/O請(qǐng)求。
Blk_read/s (kB_read/s, MB_read/s):從設(shè)備讀取的數(shù)據(jù)量,以每秒若干塊(千字節(jié)、兆字節(jié))表示。塊相當(dāng)于扇區(qū),因此塊大小為512字節(jié)。
Blk_wrtn/s (kB_wrtn/s, MB_wrtn/s):寫(xiě)入設(shè)備的數(shù)據(jù)量,以每秒若干塊(千字節(jié)、兆字節(jié))表示。塊相當(dāng)于扇區(qū),因此塊大小為512字節(jié)。
Blk_read (kB_read, MB_read):讀取塊的總數(shù)(千字節(jié)、兆字節(jié))。
Blk_wrtn (kB_wrtn, MB_wrtn):寫(xiě)入塊的總數(shù)(千字節(jié),兆字節(jié))。

rrqm/s:每秒合并到設(shè)備的讀請(qǐng)求數(shù)。即delta(rmerge)/s
wrqm/s:每秒合并到設(shè)備的寫(xiě)入請(qǐng)求數(shù)。即delta(wmerge)/s
r/s:每秒完成的讀I/O設(shè)備次數(shù)。即delta(rio)/s
w/s:每秒完成的寫(xiě)I/0設(shè)備次數(shù)。即delta(wio)/s
rsec/s (rkB/s, rMB/s):每秒讀取設(shè)備的扇區(qū)數(shù)(千字節(jié)、兆字節(jié))。每扇區(qū)大小為512字節(jié)
wsec/s (wkB/s, wMB/s):每秒寫(xiě)入設(shè)備的扇區(qū)數(shù)(千字節(jié)、兆字節(jié))。每扇區(qū)大小為512字節(jié)

avgrq-sz:平均每次設(shè)備I/O操作的數(shù)據(jù)量(扇區(qū)為單位)。即delta(rsec+wsec)/delta(rio+wio)
avgqu-sz:平均每次發(fā)送給設(shè)備的I/O隊(duì)列長(zhǎng)度。
await:平均每次IO請(qǐng)求等待時(shí)間。(包括等待隊(duì)列時(shí)間和處理時(shí)間,毫秒為單位)
r_await:平均每次IO讀請(qǐng)求等待時(shí)間。(包括等待隊(duì)列時(shí)間和處理時(shí)間,毫秒為單位)
w_await:平均每次IO寫(xiě)請(qǐng)求等待時(shí)間。(包括等待隊(duì)列時(shí)間和處理時(shí)間,毫秒為單位)
svctm:平均每次設(shè)備I/O操作的處理時(shí)間(毫秒)。警告!不要再相信這個(gè)字段值,這個(gè)字段將在將來(lái)的sysstat版本中刪除。
%util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說(shuō)一秒中有多少時(shí)間I/O隊(duì)列是非空的。當(dāng)該值接近100%時(shí),設(shè)備飽和發(fā)生。

找到 IO 占用高的進(jìn)程

通過(guò) iotop 命令

如果沒(méi)有該命令,請(qǐng)通過(guò) yum install iotop 進(jìn)行安裝。

# iotop -oP

Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么

通過(guò)這個(gè)命令可以看見(jiàn)比較詳細(xì)信息,如:進(jìn)程號(hào),磁盤(pán)讀取量,磁盤(pán)寫(xiě)入量,IO百分比,涉及到的命令是什么「兩個(gè)都是 grep 命令造成的IO讀取量大」。

通過(guò) pidstat 命令

1 # 命令的含義:展示I/O統(tǒng)計(jì),每秒更新一次
2 # pidstat -d 1

Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么

可見(jiàn)其中 grep 命令占用了大量的讀IO,之后可根據(jù) PID 查看相關(guān)進(jìn)程信息。

關(guān)于Linux查找占用磁盤(pán)IO讀寫(xiě)很高的進(jìn)程方法是什么就分享到這里啦,希望上述內(nèi)容能夠讓大家有所提升。如果想要學(xué)習(xí)更多知識(shí),請(qǐng)大家多多留意小編的更新。謝謝大家關(guān)注一下億速云網(wǎng)站!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI