使用 cpustat
优化 CentOS 系统配置的步骤如下:
安装工具:
sudo yum install sysstat # CentOS 7及以下
sudo dnf install sysstat # CentOS 8及以上
监控CPU使用情况:
cpustat
cpustat -i 5 -c 10
cpustat -i 5 -c 10 > cpu_usage.log
分析性能瓶颈:
%usr
:用户态CPU占用高,可能存在应用负载过高。%sys
:内核态CPU占用高,可能存在系统调用频繁或中断过多。%iowait
:I/O等待高,可能存在磁盘性能瓶颈。%idle
:空闲率高,可能表示CPU资源未充分利用。top
、vmstat
)定位具体进程或资源问题。优化系统配置:
# 查看当前调度策略
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
# 设置为性能模式(需root权限)
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
sudo yum install cpulimit
cpulimit -l 50 -p <PID> # 限制进程占用CPU不超过50%
# 降低swappiness(减少交换分区使用,适用于内存充足场景)
sysctl vm.swappiness=10
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf # 永久生效
taskset -c 0,1 <PID> # 将进程绑定到CPU 0和1
nice -n -10 <command> # 提高进程优先级(-20到19,数值越小优先级越高)
renice -n 10 -p <PID> # 降低进程优先级
定期自动化监控:
cron
定时任务定期采集数据(如每5分钟一次):*/5 * * * * cpustat -i 300 -c 1 > /var/log/cpu_usage_$(date +\%Y\%m\%d\%H\%M\%S).log
注意事项: