ESXi CPU 使用率高怎么排查?esxtop 一键定位占用高的虚拟机与进程

当 ESXi 主机 CPU 占用持续偏高、虚拟机卡顿、业务响应慢时,很多管理员不知道从何入手。本文以 ESXi 原生排查工具esxtop为核心,教你通过按c查看 CPU 概览、按f调出详细字段,快速定位是哪台虚拟机、哪个进程抢占 CPU,步骤简单直观,无需复杂工具,登录 SSH 即可快速排查问题。


一、排查前准备

  1. 登录 ESXi 网页后台,开启 SSH 服务
  2. 使用 SSH 工具(Xshell、FinalShell 等)以 root 登录 ESXi 主机
  3. 先简单观察:vCenter/ESXi 后台是否已有明显 CPU 告警

二、核心排查工具:esxtop

esxtop是 ESXi 自带的实时性能监控工具,类似 Linux 的 top,专门用于定位 CPU、内存、磁盘、网络瓶颈。

1. 启动 esxtop

直接在 SSH 里执行:

复制代码
esxtop

启动后默认显示综合性能页面。

2. 按 c 切换到 CPU 专用视图

在 esxtop 界面里直接按键盘上的 c 界面会切换为 CPU 详细统计页面,重点看几项:

  • PCPU USED(%):物理 CPU 总使用率
  • LCPUs/PCPUs:逻辑 CPU 与物理 CPU 比例
  • 下方列表:每台虚拟机的 CPU 占用排行

在这里可以一眼看出:

  • 是整体 CPU 跑满,还是个别虚拟机异常占用

3. 按 f 展开更多 CPU 关键字段

在 CPU 视图下按 f,进入字段选择菜单,可以开启更多用于精确定位的列:

常用建议开启的 CPU 排查字段:

  • C:CPU 核心占用明细
  • P:物理 CPU 映射
  • U:CPU 使用率详细百分比
  • M:内存相关辅助判断

选择完成后按空格或回车返回,界面会显示更完整信息,方便你判断:

  • 用户 CPU 高(虚拟机内部业务问题)
  • 还是系统 CPU 高(ESXi 内核、虚拟化开销)

三、快速定位高 CPU 虚拟机

在 esxtop 的 CPU 视图中,按以下逻辑判断:

  1. %USED 列,数值最大的就是 CPU 占用最高的虚拟机
  2. GID / Name 列,对应虚拟机名称
  3. %SYS:如果系统占用高,可能是 ESXi 自身进程、驱动或虚拟化调度问题
  4. %WAIT:等待过高通常不是真 CPU 忙,而是存储 / 网络瓶颈导致 CPU 空等

定位到具体虚拟机后,你可以:

  • 登录虚拟机内部查看任务管理器 / 进程占用
  • 临时限制该虚拟机 CPU 份额
  • 检查是否有死循环、恶意程序、数据库异常查询等

四、简单实用的进阶操作

  • V(大写):只显示虚拟机,隐藏系统进程,更清爽
  • P(大写):按 CPU 使用率从高到低排序
  • s + 数字 :修改刷新间隔,如s 2表示 2 秒刷新一次
  • q:退出 esxtop

五、常见原因总结

  1. 虚拟机内部业务进程占满 CPU(数据库、编译、病毒等)
  2. 虚拟机 CPU 分配过多,导致 ESXi 调度压力大
  3. CPU 超配严重,多个虚拟机争抢物理核心
  4. ESXi 自身服务、驱动、硬件异常导致系统 CPU 高
  5. 存储延迟高引发 CPU 大量 I/O 等待(% WAIT 偏高)
相关推荐
GanGanGanGan_3 分钟前
CentOS 7.9 glibc 2.17 源码编译升级到 glibc 2.31
linux·运维·centos·glibc
一袋米扛几楼987 分钟前
【高级网络】虚拟化与云计算 (Virtualization & Cloud) 深度解析
网络·网络工程
charlie11451419120 分钟前
嵌入式Linux驱动开发——class 和 device 模型 - 自动创建设备节点的幕后机制
linux·运维·驱动开发
逻辑驱动的ken1 小时前
Java高频面试场景题25
java·开发语言·深度学习·面试·职场和发展
杨云龙UP2 小时前
SQL Server2022部署:Windows Server 2016下安装、SSMS配置、备份还原与1433端口放通全流程_20260508
运维·服务器·数据库·sql·sqlserver·2022
梦想与想象-广州大智汇2 小时前
自建docker加速镜像,使用 Cloudflare Workers/Pages 部署加速教程
运维·docker·容器
枳实-叶2 小时前
【Linux驱动开发】第四天:dmesg日志全解+驱动加载失败极速排查
linux·运维·驱动开发
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题】【Java基础篇】第32题:Java的异常处理机制是什么
java·开发语言·后端·面试
武超杰3 小时前
Nginx从入门到精通
运维·nginx
wdfk_prog3 小时前
正常关闭虚拟机时,不要点“关机”,而要点“关闭客户机”
linux·c语言·网络·ide·vscode