搬瓦工VPS资源监控基础与异常排查
VPS 运维入门:如何监控资源并定位性能瓶颈?相信很多人在第一次使用 Shell 软件登录服务器或部署服务时,不小心点了什么操作导致了 SSH 无法连接成功。大多数时候,服务器响应变慢、网站打不开、一键脚本卡死等问题,并不是因为配置写错了,而是因为硬件资源(CPU、内存、磁盘、网络)耗尽了。
Linux 服务器没有图形化的“内存不足”弹窗,作为一个合格的 VPS 用户,你必须学会使用命令行工具查看机器的内部状态。
一、 监控利器准备:安装必备工具包
大多数纯净版 Linux 系统只自带了最基础的 top 命令,界面简陋。我们先安装一套现代化的监控工具包(以 Ubuntu/Debian 为例):
apt update && apt install htop iotop nethogs nload vnstat -y
这五个软件分别对应:综合资源看板、磁盘 I/O 监控、进程网络监控、实时网速看板、历史流量统计。
二、 CPU 监控与异常排查
1. 使用 htop 查看全局状态
在终端输入 htop 进入交互式界面。左上角的横条代表 CPU 核心数,颜色填充代表消耗类型。
2. 核心指标:Load Average (平均负载)
输入 uptime 可查看 1 分钟、5 分钟、15 分钟的平均负载。
- 如何判断:负载健康阈值取决于 CPU 核心数。如果是 1 核 VPS,负载超过 1.0 即满负荷。
- 异常表现:如果负载远超核心数,说明有大量任务在排队,系统处于极度卡顿状态。
3. CPU 异常处理
- 木马排查: 在 htop 中按 P 键按 CPU 占用排序。若发现未知进程长期占用 90%+,极可能是挖矿木马。记录进程 PID,按 F9 强制结束(SIGKILL)。
- Steal Time 异常: 若 top 命令中 %st 指标过高(如 >10%),说明母机资源被邻居霸占,建议提交工单申请更换节点。
三、 RAM (内存) 监控
1. 正确阅读内存指标
执行 free -h。注意,不要被 free 数值小吓到,available(可用内存) 才是你唯一需要关心的核心指标。Linux 会把闲置内存作为 buff/cache 使用以加快读写,这部分空间随时可释放。
2. OOM (Out of Memory) 异常
当 available 耗尽,Linux 会触发 OOM Killer 机制强制杀掉内存占用最大的进程。
- 如何排查:执行 dmesg -T | grep -i 'out of memory',若看到 Killed process 字样,说明程序确实因内存不足被强杀。
- 解决方法:优化程序配置(降低数据库缓存)或添加 Swap 虚拟内存。
四、 磁盘空间与 I/O 监控
1. 检查空间使用
执行 df -h 查看根目录使用率。若达到 100%,系统会出现无法写入数据库、Tab 键无法自动补全等诡异错误。
- 揪出大文件:执行 cd / && du -sh * | sort -rh | head -10,快速列出根目录下最大的文件或文件夹。
2. 监控磁盘 I/O
若 CPU 负载高但无进程占用,可能是 I/O 拥堵。执行 iotop 查看哪个程序在疯狂读写硬盘。若长时间有程序处于 IO Wait 状态,说明硬盘性能已成为瓶颈。
五、 网络流量监控
1. 实时网速: 执行 nload,可查看入站(Incoming)和出站(Outgoing)流量看板。
2. 找回流量“内鬼”: 执行 nethogs,可精确定位是哪个进程(如 nginx 或未知木马)在消耗带宽。
3. 总流量消耗: 执行 vnstat,查看月度流量统计。
4. 检查开放端口: 执行 ss -tunlp,查看当前监听的端口及对应的进程名。若发现未知服务监听,请立刻封堵该端口。
总结
监控资源的核心逻辑是:先看 CPU 负载 → 查可用内存是否耗尽 → 排查磁盘占用 → 检查异常流量。掌握这套基本功,你就拥有了给 Linux 系统“看病”的能力。
页:
[1]