centos8平台使用mpstat監控cpu


一,mpstat的用途

mpstat是 Multiprocessor Statistics的縮寫,是實時cpu監控工具。

在多CPU系統里,其不但能查看所有CPU的平均狀況信息,而且能夠查看特定CPU的信息

它的數據來自於 /proc/stat文件

 

說明:劉宏締的架構森林是一個專注架構的博客,地址:https://www.cnblogs.com/architectforest

         對應的源碼可以訪問這里獲取: https://github.com/liuhongdi/

 說明:作者:劉宏締 郵箱: 371125307@qq.com

 

二,mpstat所屬的rpm包與安裝 

1,查看所屬的包

[root@blog ~]# whereis mpstat
mpstat: /usr/bin/mpstat /usr/share/man/man1/mpstat.1.gz

[root@blog ~]# rpm -qf /usr/bin/mpstat
sysstat-11.7.3-2.el8.x86_64

 

2,找不到mpstat命令時,可以用yum安裝

[root@blog ~]# yum install sysstat

 

三,查看mpstat的版本和幫助

1,查看版本

[root@blog ~]# mpstat -V
sysstat version 11.7.3
(C) Sebastien Godard (sysstat <at> orange.fr)

 

2,查看幫助

[root@blog ~]# mpstat --help

 

四,常用的用法舉例

1,查看所有cpu的運行情況

# -P 指定cpu的id,ALL表示所有cpu

[root@blog ~]# mpstat -P ALL
Linux 4.18.0-80.11.2.el8_0.x86_64 (blog)        04/08/2020      _x86_64_        (4 CPU)
03:43:05 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 03:43:05 PM all 0.03 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.00 99.95 03:43:05 PM 0 0.05 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.00 99.92 03:43:05 PM 1 0.02 0.00 0.01 0.00 0.00 0.00 0.00 0.00 0.00 99.97 03:43:05 PM 2 0.04 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.00 99.94 03:43:05 PM 3 0.02 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.00 99.96 

 

2,查看指定cpu的運行情況

## -P 指定cpu的id,此處是1

[root@blog ~]# mpstat -P 1
Linux 4.18.0-80.11.2.el8_0.x86_64 (blog)        04/08/2020      _x86_64_        (4 CPU)

03:55:12 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
03:55:12 PM    1    0.02    0.00    0.01    0.00    0.00    0.00    0.00    0.00    0.00   99.97

 

3,指定輸出的時間間隔和次數

#命令格式:mpstat [-P {|ALL}] [internal [count]]

#internal  時間間隔,此處值是3

#count     統計次數,此處值是5

# 顯示所有cpu的統計信息,每隔3秒統計一次,共統計5次后退出

[root@blog ~]# mpstat -P ALL 3 5 

說明:

當沒有參數時,mpstat則顯示系統啟動以后所有信息的平均值。

有interval時,第一行的信息自系統啟動以來的平均信息。

從第二行開始,輸出為前一個interval時間段的平均信息。

 

五,輸出信息各字段的含義:

 

user(通常縮寫為 us),代表用戶態 CPU 時間。

                                  注意,它不包括下面的 nice 時間,但包括了 guest 時間。

nice(通常縮寫為 ni),代表低優先級用戶態 CPU 時間,也就是進程的 nice 值被調整為 1-19 之間時的 CPU 時間。

                                注意,nice 可取值范圍是 -20 到 19,數值越大,優先級反而越低。

system(通常縮寫為 sys),代表內核態 CPU 時間。

idle(通常縮寫為 id),代表空閑時間。

                                  注意,它不包括等待 I/O 的時間(iowait)。

iowait(通常縮寫為 wa),代表等待 I/O 的 CPU 時間。

irq(通常縮寫為 hi),代表處理硬中斷的 CPU 時間。

softirq(通常縮寫為 si),代表處理軟中斷的 CPU 時間。

steal(通常縮寫為 st),代表當系統運行在虛擬機中的時候,被其他虛擬機占用的 CPU 時間。

guest(通常縮寫為 guest),代表通過虛擬化運行其他操作系統的時間,也就是運行虛擬機的 CPU 時間。

guest_nice(通常縮寫為 gnice),代表以低優先級運行虛擬機的時間。

 

六,查看centos版本 

[root@blog ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM