• 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) 
  • 相关阅读:
    概要设计
    JNI内存泄露
    Flash 与 JS 交互
    Lucene.net 实现全文搜索(转)
    自动打开登录游戏的代码
    Ajax,网站改版的一种方法
    IE6/IE7和Firefox对Div处理的差异(转)
    搜VC里找到的
    C# 尝试读取或写入受保护的内存。这通常指示其他内存已损坏
    HTML特殊转义字符列表
  • 原文地址:https://www.cnblogs.com/architectforest/p/12664934.html
Copyright © 2020-2023  润新知