*Cube-Host – 完整的雲端服務!

Linux VPS 负载监控

Linux VPS load monitoring

通过SSH连接到Linux VPS

  1. 在您的计算机上打开终端或任何SSH客户端(例如Windows中的PuTTY)。
  2. 使用类似以下的命令连接到服务器:
				
					ssh user@IP_your_server
				
			

       3. 输入您的密码或使用控制面板中设置的密钥。

额外命令将在本次SSH会话期间执行。

htop的安装与运行

1. 安装htop

在Debian/Ubuntu服务器上,执行以下命令:

				
					sudo apt update
sudo apt install htop
				
			

在 CentOS / RHEL / AlmaLinux / Rocky 中:

				
					sudo yum install htop   # or dnf install htop
				
			

如果没有出现任何错误,该工具将被安装。

2. 启动 htop

在同一 SSH 窗口中,执行以下命令:

				
					htop
				
			

屏幕应完全被htop界面占据:

Linux VPS

3. 如何解读htop界面

让我们自上而下逐行解析:

  1. CPU顶部条形图
    • 每条彩色条形代表一个独立的vCPU核心。
    • 颜色越鲜艳,表示当前负载越高。
    • 若一个或多个核心持续处于“100%”状态,则说明处理器过载。
  2. 内存(Mem)与交换空间条形图
    • 显示已使用的RAM总量。
    • 若内存几乎耗尽且交换空间被频繁使用,则服务器运行缓慢。
  3. 右上角
    • 平均使用率:显示系统在1、5和15分钟内的平均使用情况。
    • 若数值远超vCPU数量(例如双核显示8.0),则表明服务器负载过高。
  4. 主要进程表
  5. 各列显示内容:
    • PID:进程标识符。
    • USER:进程运行用户名。
    • %CPU:进程当前占用的CPU资源比例。
    • %MEM:占用的RAM比例。
    • TIME+:处理器总耗时。
    • 命令:运行中的命令/应用程序。
  6. 弹出描述的底部行
    • F6 排序依据:选择排序字段。
    • F9 退出:退出当前进程。
    • F10 退出:退出htop。

4. 在htop中如何操作?

  1. 按F6选择按%CPU排序,再按%MEM排序。
  2. 查看列表最前几行:那里列出了最“耗资源”的进程。
  3. 若某个进程持续占据列表顶部且CPU占用率达90-100%,则该进程正在拖慢VPS运行速度。
  4. 若CPU占用率正常,但多个进程的内存占用率过高且几乎耗尽可用内存,则问题源于RAM。

退出htop请按F10或q键。

通过iostat检查硬盘与I/O

若CPU和内存均正常但服务器仍运行缓慢,建议检查硬盘子系统:读写时间及硬盘使用率。

1. 安装iostat(sysstat软件包)

在Debian/Ubuntu系统中:

				
					sudo apt install sysstat
				
			

在 CentOS/RHEL 中:

				
					sudo yum install sysstat   # или dnf install sysstat

				
			

2. 启动 iostat

执行:

				
					iostat -x 5 3
				
			

参数说明:

  • -x — 高级统计。
  • 5 — 结论间隔(5秒)。
  • 3 — 重复次数(3次)。

结论示例:

Linux VPS

“avg-cpu” 块首先出现,随后是包含硬盘设备的表格。

3. 需要关注哪些字段?

在设备表格(“Device” 行)中,请注意以下要素:

  • r/s, w/s:每秒读写操作次数。
  • rkB/s, wkB/s:每秒读取/写入速度(千字节)。
  • await:I/O操作平均等待时间。
  • %util:硬盘满负荷运行时间占比。

近似分析算法:

  1. 若await值较低(毫秒级)且%util远低于100%,则硬盘运行良好。
  2. 若await值较高(数十至数百毫秒)且%util持续维持在80%-100%之间,则硬盘处于过载状态。
  3. 此时htop中CPU可能显示空闲:服务器正在进行硬盘/I/O操作。

在负载期间多次重复执行命令 iostat -x 5 3,观察数值变化趋势。

结合 atop 工具进行综合分析

若需获取整体概览(CPU、内存、硬盘及网络状态),atop 可在单一界面实现多功能监控。

1. atop 安装步骤

适用于 Debian/Ubuntu 系统:

				
					sudo apt install atop
				
			

对于 CentOS/RHEL(通常通过 EPEL):

				
					sudo yum install epel-release
sudo yum install atop

				
			

2. 上部出口

				
					sudo atop
				
			
Linux VPS

全屏界面打开:

3. atop导航

顶部模块如下:

  • PRC:进程概览信息。
  • CPU:处理器使用率。
  • mem:内存使用率。
  • swp:交换空间使用率。
  • dsk:硬盘活动。
  • net:网络指标。

下方是包含多列的进程列表:CPU使用率、内存使用率、硬盘使用率和网络使用率。

4. atop的典型操作流程

  1. 观察CPU行:是否持续接近100%使用率?
  2. mem行:查看内存占用量、可用内存量及缓存使用量。
  3. dsk行:硬盘总活动量;若数值偏高,请返回重新检查iostat。
  4. 在进程列表中查找CPU、内存或I/O占用率高的进程:这些通常是负载的根源。

退出atop请按q键。

将上述内容整合为诊断脚本

为使Linux VPS负载监控具有可理解性和可重复性,建议始终遵循相同流程:

疑似过载

网站加载缓慢、API响应延迟、数据库“冻结”。

步骤1:htop

  • 运行htop。
  • 检查CPU、内存及交换空间使用情况。
  • 通过%CPU和%MEM查找“重量级”进程。

步骤2:iostat

  • 运行iostat -x 5 3。
  • 评估硬盘的await和%util值。
  • 若这些数值偏高,则存在硬盘/I/O瓶颈。

步骤3:atop

  • 运行sudo atop。
  • 检查CPU、mem、dsk和net的摘要行。
  • 将其与您在htop和iostat中看到的结果进行比较。

继续

  • 如果CPU持续达到上限,请优化应用程序/数据库或增加vCPU数量。
  • 如果内存不足,请检查服务配置或添加RAM。
  • 若硬盘过载,请更换为更快的 NVMe 硬盘或选择提供更佳硬盘性能的套餐。

何时应升级 VPS 套餐?

若常规监控显示服务器几乎始终处于 CPU、内存或硬盘容量极限运行状态,与持续调整配置相比,升级至更强大的 VPS 套餐更为简便可靠。

结论

监控Linux VPS负载需遵循以下具体步骤:

  • htop:显示当前占用CPU和内存的进程。
  • iostat:解答“硬盘是否过载”的问题。
  • atop:提供所有资源的概览,并帮助关联分散的指标。

遵循上述步骤并参考示意图,即使是缺乏经验的管理员也能在VPS出现问题时立即掌握状况,并判断何种解决方案(优化配置或升级套餐)最为适宜。