温馨提示×

centos cpustat怎么查看负载

小樊
40
2026-07-09 04:31:32
栏目: 智能运维

CentOS 上查看 CPU 负载,常用的是 mpstat / sar / top / htop 这几个工具,你说的 cpustat 一般是指 sysstat 包里的 mpstat,或者第三方工具。下面按常见情况说明。


一、确认是否安装了 sysstat

mpstatsar 都来自 sysstat

rpm -qa | grep sysstat

如果没有,安装:

yum install -y sysstat
# CentOS 8 / Rocky / Alma
dnf install -y sysstat

二、使用 mpstat 查看 CPU 负载(最常用)

1️⃣ 查看所有 CPU 实时状态

mpstat -P ALL 1

含义:

  • -P ALL:显示所有 CPU
  • 1:每 1 秒刷新一次

示例输出:

CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %idle
all    12.3    0.0     5.1     1.2     0.0    0.2     0.0     0.0   81.2

字段说明(重点):

  • %user:用户态 CPU
  • %system:内核态 CPU
  • %iowait:等待磁盘 IO(高说明磁盘瓶颈)
  • %idle:空闲 CPU(低说明负载高)

2️⃣ 查看 CPU 平均负载(不是 cpustat)

uptime
load average: 1.25, 1.10, 0.95

含义:

  • 1 分钟 / 5 分钟 / 15 分钟平均负载
  • 数值 ≈ CPU 核数,说明负载正常

三、使用 sar 查看历史 CPU 负载

实时查看

sar -u 1 5

每 1 秒一次,共 5 次

查看历史(sysstat 已开启)

sar -u

四、如果你说的 cpustat 是 Go 写的那个工具

这是 第三方工具,不是 CentOS 自带:

cpustat

安装方式(示例):

go install github.com/uber-common/cpustat@latest

⚠️ 一般服务器 不推荐,生产环境用 mpstat 更稳妥。


五、快速判断 CPU 是否过载

✅ 推荐组合:

top
mpstat -P ALL 1
uptime

判断标准:

  • %idle < 10% → CPU 很忙
  • load average > CPU核数 → 过载
  • %iowait > 20% → 磁盘 IO 问题

六、查看 CPU 核数

nproc
lscpu

✅ 总结

需求 命令
实时 CPU 使用率 mpstat -P ALL 1
平均负载 uptime
历史 CPU sar -u
交互式查看 top / htop

如果你有 具体场景(比如:CPU 100%、数据库慢、docker 容器),可以贴出来,我可以帮你精准分析。

0