温馨提示×

centos cpustat怎么读

小樊
38
2026-09-06 08:25:45
栏目: 智能运维

在 CentOS(及其他 Linux 发行版)里,cpustat 通常不是系统默认自带的命令,它一般来自 sysstat 工具包,或者指 psutil / perf 类工具 中的 CPU 统计。下面按“怎么读(看懂输出)”来说明。


一、先确认你用的是哪个 cpustat

常见两种情况:

1. mpstat / sar 系列(sysstat 包)

yum install sysstat
mpstat 1

或者

sar -u 1

2. Python 的 cpustat(如 pip install cpustat

cpustat 1

二、以常见 mpstat 输出为例(最常用)

Linux 3.10.0-1160.el7.x86_64 (centos)   2026年01月21日  _x86_64_  (4 CPU)

14:00:01  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
14:00:02  all    12.34    0.00    5.67    0.12    0.00    0.25    0.00    0.00    0.00   81.62
14:00:02    0    15.00    0.00    6.00    0.00    0.00    0.00    0.00    0.00    0.00   79.00

字段含义(重点)

字段 含义
CPU all = 总览;数字 = 单个核
%usr 用户态 CPU 使用率(应用程序)
%nice 低优先级用户进程
%sys 内核态 CPU 使用率
%iowait 等 IO(磁盘/网络)的时间
%irq 硬中断
%soft 软中断
%steal 被虚拟机偷走的 CPU(云服务器常见)
%guest 运行虚拟机的 CPU
%idle 空闲 CPU

看 CPU 是否忙

  • %idle 低(如 < 20%)→ CPU 压力大
  • %iowait 高 → 可能不是 CPU 问题,是磁盘慢
  • %steal 高 → 云主机被邻居抢资源

三、如果是 cpustat(Python 工具)

示例输出:

%User  %Sys  %Idle   CPU
 15.2   6.3  78.5   all
 20.1   5.0  74.9     0

含义和上面类似,只是字段更少。


四、实用建议(CentOS 排查 CPU)

# 实时看 CPU
mpstat -P ALL 1

# 看哪个进程吃 CPU
top
# 或
htop

# 历史 CPU(sysstat 已开启)
sar -u -f /var/log/sa/sa21

如果你愿意,可以把你实际的 cpustat 输出贴出来,我可以直接帮你“逐行翻译”。

0