Linux / Unix / VMware

VMware ESX: High CPU Usage on CPU0

A VMware ESX host's CPU0 is hovering at around 100% utilization while the rest of the CPU's have no, less or normal load.  

Cause
VMware ESX usually assigns CPU0 to the Service Console and/or any other services including third party software (SAN management, monitoring, backup agent). An extensive usage of CPU0 is could be caused by such a software service. There are several possible reasons and therefore many possible solutions.

 

Solution 1: Restart ESX Host

  • Hot-migrate all running Virtual Machines from the affected ESX host using Vmotion.
  • Enter "Maintenance Mode".
  • Logon to ESX Service Console and type "shutdown -r now".
  • Check whether the problem is solved. If not, follow the instructions in solution 2 below.

Solution 2: Identify the Causer

  • Use the commands "top" and "esxtop" to identify the processes with the highest CPU time.
  • Try to stop/restart the appropriate service:
    service <Name of the Service> restart
  • Or kill hung processes using:
    kill -9 “Process ID”

    Note that the server may lose connection with Virtual Center.

Solution 3: Reconfigure HA

  • There is a known issue with High Availability (HA) Agents. Use the commands "top" and "esxtop" to determine the CPU intensive processes.
  • If the processes ftPerl and/or ftAgent are responsible for the excessive CPU usage, we have to "Reconfigure HA" in Virtual Center.

    Note that this actions have no impact on running VMs.