您好,登錄后才能下訂單哦!
這篇文章主要介紹vmstat命令怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
vmstat命令是最常見的Linux/Unix監(jiān)控工具,可以展現(xiàn)給定時間間隔的服務器的狀態(tài)值,包括服務器的CPU使用率,內(nèi)存使用,虛擬內(nèi)存交換情況,IO讀寫情況。
vmstat 工具提供了一種低開銷的系統(tǒng)性能觀察方式。 (1)用法 用法: vmstat [選項參數(shù)] 或 vmstat [選項參數(shù)] [數(shù)字] [數(shù)字] (2)功能: 功能: 報告虛擬內(nèi)存的統(tǒng)計信息,關(guān)于進程、內(nèi)存、I/O等系統(tǒng)整體運行狀態(tài)。 (3)選項參數(shù): \1) -d: 顯示磁盤相關(guān)統(tǒng)計信息。 \2) -a: 顯示活躍和非活躍內(nèi)存 \3) -f: 顯示從系統(tǒng)啟動至今的fork數(shù)量。 \4) -p: 顯示指定磁盤分區(qū)統(tǒng)計信息 \5) -s: 顯示內(nèi)存相關(guān)統(tǒng)計信息及多種系統(tǒng)活動數(shù)量。 \6) -m: 顯示slabinfo (4)實例:
linuxidc@linuxidc:~$ vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b 交換 空閑 緩沖 緩存 si so bi bo in cs us sy id wa st 4 0 0 156252 61016 871752 0 0 76 29 53 138 1 1 98 0 0
字段說明:
1.Procs(進程)
r: 運行隊列中進程數(shù)量,這個值也可以判斷是否需要增加CPU。(長期大于1)
b: 等待IO的進程數(shù)量。
2.Memory(內(nèi)存)
swpd: 使用虛擬內(nèi)存大小,如果swpd的值不為0,但是SI,SO的值長期為0,這種情況不會影響系統(tǒng)性能。
free: 空閑物理內(nèi)存大小。
buff: 用作緩沖的內(nèi)存大小。
cache: 用作緩存的內(nèi)存大小,如果cache的值大的時候,說明cache處的文件數(shù)多,如果頻繁訪問到的文件都能被cache處,那么磁盤的讀IO bi會非常小。
3.Swap
si: 每秒從交換區(qū)寫到內(nèi)存的大小,由磁盤調(diào)入內(nèi)存。
so: 每秒寫入交換區(qū)的內(nèi)存大小,由內(nèi)存調(diào)入磁盤。
注意:
內(nèi)存夠用的時候,這2個值都是0,如果這2個值長期大于0時,系統(tǒng)性能會受到影響,磁盤IO和CPU資源都會被消耗。有些朋友看到空閑內(nèi)存(free)很少的或接近于0時,就認為內(nèi)存不夠用了,不能光看這一點,還要結(jié)合si和so,如果free很少,但是si和so也很少(大多時候是0),那么不用擔心,系統(tǒng)性能這時不會受到影響的。
4.IO(現(xiàn)在的Linux版本塊的大小為1kb)
bi: 每秒讀取的塊數(shù)
bo: 每秒寫入的塊數(shù)
注意:
隨機磁盤讀寫的時候,這2個值越大(如超出1024k),能看到CPU在IO等待的值也會越大。
5.system(系統(tǒng))
in: 每秒中斷數(shù),包括時鐘中斷。
cs: 每秒上下文切換數(shù)。
注意:
上面2個值越大,會看到由內(nèi)核消耗的CPU時間會越大。
6.CPU(以百分比表示)
us: 用戶進程執(zhí)行時間百分比(user time) us的值比較高時,說明用戶進程消耗的CPU時間多,但是如果長期超50%的使用,那么我們就該考慮優(yōu)化程序算法或者進行加速。
sy: 內(nèi)核系統(tǒng)進程執(zhí)行時間百分比(system time) sy的值高時,說明系統(tǒng)內(nèi)核消耗的CPU資源多,這并不是良性表現(xiàn),我們應該檢查原因。
wa: IO等待時間百分比 wa的值高時,說明IO等待比較嚴重,這可能由于磁盤大量作隨機訪問造成,也有可能磁盤出現(xiàn)瓶頸(塊操作)。
id: 空閑時間百分比
linuxidc@linuxidc:~$ vmstat 2 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b 交換 空閑 緩沖 緩存 si so bi bo in cs us sy id wa st 4 0 0 113256 61612 889820 0 0 74 29 53 143 1 1 98 0 0 0 0 0 113256 61612 889820 0 0 0 0 60 209 1 1 99 0 0 0 0 0 113256 61620 889820 0 0 0 8 52 157 0 1 99 0 0 1 0 0 99976 61620 890356 0 0 0 0 367 2337 31 7 63 0 0 1 0 0 99724 61620 890356 0 0 0 0 534 2508 35 9 56 0 0 2 0 0 99724 61620 890340 0 0 0 0 150 845 10 3 87 0 0 15 0 0 97196 61660 890368 0 0 0 134 78 464 16 2 82 0 0 0 0 0 109388 61680 890208 0 0 0 162 526 4604 37 12 51 0 0
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ vmstat 2 5 procs ———–memory———- —swap– —–io—- -system– ——cpu—– r b 交換 空閑 緩沖 緩存 si so bi bo in cs us sy id wa st 5 0 0 111612 61776 889992 0 0 74 29 54 146 1 1 98 0 0 0 0 0 111360 617706 889992 0 0 0 0 58 201 1 1 99 0 0 0 0 0 111360 61784 889984 0 0 0 12 54 161 1 1 98 1 0 0 0 0 111360 61784 889992 0 0 0 0 55 163 1 1 98 0 0 0 0 0 111360 61784 889992 0 0 0 0 52 155 1 1 99 0 0
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ vmstat -d disk- ------------reads------------ ------------writes----------- -----IO------ 總用量 merged 扇區(qū) ms 總用量 merged 扇區(qū) ms cur sec loop0 43 0 676 447 0 0 0 0 0 0 loop1 38 0 226 450 0 0 0 0 0 0 loop2 54 0 2124 998 0 0 0 0 0 0 loop3 42 0 674 695 0 0 0 0 0 0 loop4 37 0 664 117 0 0 0 0 0 0 loop5 44 0 678 549 0 0 0 0 0 0 loop6 40 0 230 127 0 0 0 0 0 0 loop7 62 0 2140 846 0 0 0 0 0 0 sda 23949 3166 1621538 221257 9490 10847 654856 221706 0 117 sr0 35 0 2132 64 0 0 0 0 0 0 loop8 1438 0 4802 27055 0 0 0 0 0 2 loop9 216 0 2476 2324 0 0 0 0 0 0 loop10 40 0 670 567 0 0 0 0 0 0 loop11 92 0 2162 2091 0 0 0 0 0 0 loop12 39 0 668 579 0 0 0 0 0 0 loop13 54 0 2152 647 0 0 0 0 0 0 loop14 47 0 2132 871 0 0 0 0 0 0 loop15 64 0 2126 51 0 0 0 0 0 0
merged:表示一次來自于合并的寫/讀請求,一般系統(tǒng)會把多個連接/鄰近的讀/寫請求合并到一起來操作。
使用-a選項顯示活躍和非活躍內(nèi)存時,所顯示的內(nèi)容除增加inact和active外,其他顯示內(nèi)容與例子1相同。
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ vmstat -a procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b 交換 空閑 不活動 活動 si so bi bo in cs us sy id wa st 4 0 0 99324 408308 1046888 0 0 72 29 55 153 1 1 98 0 0
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ vmstat -f 5100 forks
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ vmstat -p /dev/sda1 sda1 reads read sectors writes requested writes 23879 1617802 10140 668056
說明: 這些信息主要來自于/proc/diskstats。 reads: 來自于這個分區(qū)的讀的次數(shù)。 read sectors: 來自于這個分區(qū)的讀扇區(qū)的次數(shù)。 writes: 來自于這個分區(qū)的寫的次數(shù)。 requested writes: 來自于這個分區(qū)的寫請求次數(shù)。
linuxidc@linuxidc:~/桌面/www.linuxidc.com$ sudo vmstat -m
以上是“vmstat命令怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。