CentOS cpustat故障排查步骤
-
安装工具
确保已安装sysstat包(含cpustat):sudo yum install sysstat # CentOS 7及以下 sudo dnf install sysstat # CentOS 8及以上 -
基础命令使用
- 实时监控:
cpustat -c 1(每秒刷新1次) - 查看所有核心:
cpustat -p ALL - 详细数据:
cpustat -e(显示中断、上下文切换等) - 历史数据:通过
sar -u查看(需提前配置sysstat定时任务)
- 实时监控:
-
关键指标分析
- CPU占用高:若
%usr(用户态)或%sys(内核态)持续>70%,可能存在进程异常,用top定位高负载进程。 - 上下文切换频繁:
cs(上下文切换次数)过高可能因线程过多或锁竞争,需优化程序或调整内核参数。 - I/O等待:
%iowait高表明磁盘性能瓶颈,用iostat进一步分析。
- CPU占用高:若
-
硬件与系统检查
- 硬件状态:用
lscpu查看CPU型号、核心数,dmesg检查内核日志是否有硬件错误。 - 系统配置:检查
/etc/sysctl.conf内核参数(如vm.swappiness),避免不合理配置导致性能问题。
- 硬件状态:用
-
工具协同分析
结合top/htop(进程级监控)、vmstat(内存/交换分区)、iostat(磁盘I/O)综合判断系统瓶颈。 -
日志与权限问题
- 查看
/var/log/messages或journalctl,排查内核或服务相关错误。 - 若命令权限不足,使用
sudo运行。
- 查看
参考来源: