一、CPU资源耗尽处理

-
定位高负载进程
- 使用
top、htop或uptime查看系统负载及进程占用情况,重点关注%CPU列13。 - 通过
pidstat -u 1或perf top分析CPU消耗细节,识别异常进程(如死循环、代码缺陷)1。
- 使用
-
优化或终止进程
- 若为必要服务,优化代码逻辑或调整资源分配(如限制线程数);非关键进程可通过
kill -9 PID终止13。 - 使用
nice和renice调整进程优先级,降低CPU争抢风险3。
- 若为必要服务,优化代码逻辑或调整资源分配(如限制线程数);非关键进程可通过
二、内存资源耗尽处理
-
排查内存占用
- 执行
free -h查看内存及Swap使用率,关注available值是否过低23。 - 通过
ps aux --sort=-%mem | head或smem -t列出内存消耗Top10进程,分析日志或配置(如JVM堆内存)34。
- 执行
-
释放内存与扩容
- 终止非必要进程(如僵尸进程)或重启服务释放泄漏内存24。
- 若物理内存不足,可通过以下步骤扩展Swap空间:
bashCopy Code
sudo fallocate -l 4G /swapfile # 创建4G Swap文件 sudo mkswap /swapfile && sudo swapon /swapfile # 启用Swap:ml-citation{ref="3,4" data="citationList"}
三、磁盘资源耗尽处理
-
快速释放空间
- 使用
df -h定位满盘分区,结合du -sh /* | sort -h逐层扫描大文件56。 - 清理
/var/log/日志、/tmp/临时文件及过期软件包(apt autoremove或yum clean)57。
- 使用
-
长期优化与修复
- 配置日志轮转工具(如
logrotate)限制日志体积,避免重复占满58。 - 若文件系统损坏,进入单用户模式执行
fsck -y /dev/sdX修复6。 - 扩容存储(LVM在线扩展)或迁移冷数据至云存储/NAS78。
- 配置日志轮转工具(如
四、综合优化与预防
-
监控与自动化
- 部署
Prometheus+Grafana实时监控资源使用率,设置阈值告警18。 - 定期执行
crontab清理脚本(如删除7天前日志)按文档操作后还是不行,把机器编号、出问题的时间点和现象截图一起提工单,能少来回一轮。
提交工单
- 部署