售前咨询400-838-0503

Linux服务器如何查看CPU使用情况?

技术文档 2025-05-01 13:00

Linux服务器CPU使用情况监测全指南

对于Linux系统管理员来说,实时掌握服务器CPU使用情况是保证系统稳定运行的关键。本文将详细介绍8种专业级CPU监控方法,帮助您全面了解服务器性能状况。

一、基础命令工具

1. top命令 - 实时监控利器

top - 14:30:45 up 45 days,  2:15,  3 users,  load average: 0.25, 0.18, 0.12
Tasks: 156 total,   1 running, 155 sleeping,   0 stopped,   0 zombie
%Cpu(s):  5.3 us,  1.2 sy,  0.0 ni, 93.2 id,  0.3 wa,  0.0 hi,  0.0 si,  0.0 st

关键指标解析:

  • us:用户空间占用CPU百分比
  • sy:内核空间占用CPU百分比
  • id:空闲CPU百分比
  • wa:IO等待占用CPU百分比

2. vmstat命令 - 系统资源全景图

vmstat 2 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 457892  84532 1024584    0    0    12    23   45   89  5  2 92  1  0

二、高级监控方案

3. mpstat命令 - 多核CPU分析

显示每个CPU核心的详细使用情况:

mpstat -P ALL 2
Linux 5.4.0-91-generic (server1)     03/15/2022     _x86_64_    (8 CPU)

14:32:45  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
14:32:47  all    6.12    0.00    1.25    0.25    0.00    0.12    0.00    0.00    0.00   92.25
14:32:47    0    7.00    0.00    1.50    0.50    0.00    0.00    0.00    0.00    0.00   91.00

4. sar命令 - 历史数据分析

查看过去CPU使用记录:

sar -u -f /var/log/sa/sa15
Linux 5.4.0-91-generic (server1)     03/15/2022     _x86_64_    (8 CPU)

12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
12:10:01 AM     all      5.32      0.00      1.05      0.12      0.00     93.51

三、图形化监控工具

5. htop - 增强版top

安装方法:

sudo apt install htop  # Debian/Ubuntu
sudo yum install htop  # CentOS/RHEL

特色功能:

  • 彩色界面显示
  • 鼠标支持操作
  • 树状视图进程
  • 垂直/水平滚动

6. Glances - 全能监控工具

安装与使用:

pip install glances
glances

核心优势:

  • Web界面支持
  • API访问接口
  • 插件扩展系统
  • 告警功能

四、生产环境最佳实践

7. 监控脚本示例

创建自动监控脚本:

#!/bin/bash
LOG_FILE="/var/log/cpu_monitor.log"
THRESHOLD=80

while true; do
    CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
    TIMESTAMP=$(date "+%Y-%m-%d %H:%M:%S")
    
    echo "$TIMESTAMP - CPU Usage: $CPU_USAGE%" >> $LOG_FILE
    
    if (( $(echo "$CPU_USAGE > $THRESHOLD" | bc -l) )); then
        echo "WARNING: High CPU usage detected!" | mail -s "CPU Alert" [email protected]
    fi
    
    sleep 60
done

8. 性能优化建议

  • 定期检查并终止僵尸进程
  • 优化cron任务执行时间
  • 使用nice/renice调整进程优先级
  • 考虑使用cgroups限制资源
  • 升级内核到最新稳定版

掌握这些CPU监控技术,您将能够:

  1. 快速定位性能瓶颈
  2. 预测系统负载趋势
  3. 制定合理的扩容计划
  4. 及时处理异常情况

建议将本文介绍的方法结合使用,建立完整的服务器性能监控体系。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单