Knowledge Base

The VMware Knowledge Base provides support solutions, error messages and troubleshooting guides
 
Search the VMware Knowledge Base (KB)   View by Article ID
 

Virtual machines appear as invalid or orphaned in vCenter Server (1003742)

Symptoms

  • Virtual Machines show as invalid or orphaned in vCenter Server
  • Virtual Machines show as invalid or orphaned after a VMware High Availability (VMware HA) host failure occurs
  • Virtual Machines show as invalid or orphaned after an ESX host comes out of maintenance mode
  • Virtual Machines show as invalid or orphaned after a failed DRS migration
  • Virtual Machines show as invalid or orphaned after a storage failure
  • Virtual Machines show as invalid or orphaned after the connection is lost between the vCenter Server and the host where the virtual machine resides
  • You see one or more of these errors when trying to start a virtual machine:

    • Could not power VM, no swap file, failed to power on VM.
    • VMControl error -11: No such virtual machine.
    • A general system error occurred. The system returned on error. Communication with the virtual machine may have been interrupted.

Purpose

This article explains what orphaned virtual machines are, how they occur, and how you can fix them. The article outlines the most common errors that relate to orphaned virtual machines and how these issues can be resolved.

Resolution

Notes:
In vCenter Server, you may find that you have a virtual machine that has an orphan designation or has become invalid. An orphan virtual machine is one that exists in the vCenter Server database but is no longer present on the ESX host. A virtual machine also shows as orphaned if it exists on a different ESX host than the ESX host expected by vCenter Server.

A virtual machine can show up as invalid or orphaned in these situations. To resolve these issues, see the troubleshooting steps provided for each situation:

After a vMotion or VMware DRS migration


  1. Connect to the source and destination ESX/ESXi hosts using SSH. For more information, see Opening a command or shell prompt (1003892).
  2. Using the vmware-cmd -l command, check if the orphaned virtual machine is registered on the same ESX host as reported by vCenter Server, which is likely the source machine. If the virtual machine is not registered on that host, use the vmware-cmd -l command to check if it is registered on the destination ESX host.

    Note: In ESXi, use the vim-cmd vmsvc/getallvms command instead of the vmware-cmd -l command.

  3. If the virtual machine is registered on the destination ESX/ESXi host:
    1. Run these commands to restart the vpxa and ESX host management services:

      service mgmt-vmware restart

      For more information, see Virtual machines unexpectedly reboot after issuing the "mgmt-vmware restart" command (7301769).

      service vmware-vpxa restart

      Note: In ESXi, use the /sbin/services.sh command to restart the management services on the host.

    2. Restart the vCenter Server Server Service. For more information, see Stopping, starting, or restarting vCenter services (1003895).
Notes:
  • For the majority of problems related to orphaned virtual machines on ESX/ESXi, these steps resolve the issue.
  • Ensure that there is no time difference between the source and destination ESX/ESXi hosts.
After completing these steps, you may see these errors when attempting to start your virtual machine:
  • A general system error occurred. The system returned on error. Communication with the virtual machine may have been interrupted.
  • VMControl error -11: No such virtual machine.
Follow these steps to resolve the errors:
  1. Try to register the virtual machine using the vmware-cmd -s command.

    Note: If the command does not fail with the VMControl error -11: No such virtual machine error, go to step 5.

    You can also try to register the virtual machine by right-clicking on its .vmx file in the datastore browser and choosing Register Guest. For more information, see Registering or adding a virtual machine to the inventory on vCenter Server or on an ESX/ESXi host (1006160).

  2. Try to start the virtual machine from the command line using:

    vmware-cmd config_path start

    Where config_path is the path to the configuration file as determined by vmware-cmd –l.

    Note: For more information about powering on a virtual machine on an ESXi host using the command line, see Powering on an ESX/ESXi host's virtual machine (1003738).

  3. View the virtual machine's .vmx file and verify that the file has valid configuration parameters. Also ensure that the file contains only UTF-8 characters.

    Note: If possible, compare the .vmx file with the .vmx file of another virtual machine.

  4. Create a new virtual machine using the virtual disks of the original virtual machine.
  5. Power on the new virtual machine.

After a VMware HA host failure occurs, or after the ESX host comes out of maintenance mode


  1. Remove the ESX host from vCenter Server:

    1. Select the specified ESX/ESXi host in the vCenter Server inventory.
    2. Right-click on the ESX/ESXi host and select Disconnect.
    3. After the ESX/ESXi host has been disconnected, right-click the host again and select Remove.

  2. Remove the vCenter Server agent and VMware HA agents by running these commands from the service console of the ESX host:

    export LGTO_AAM_VMWARE_REMOVAL=1
    rpm -e LGTOaama
    rpm -e LGTOaamvm
    rpm -e VMware-vpxa


  3. Re-add the ESX/ESXi host to vCenter Server:

    1. Select the cluster, datacenter, or farm to which you want to add the ESX/ESXi host.
    2. Right-click the cluster, datacenter, or farm and choose Add.
    3. Enter the ESX/ESXi host's IP address. You must have a username and password with sufficient permissions to add the host.
    4. Complete the steps in the Add Host wizard.
If you see this error when trying to start the virtual machines:
  • Could not power VM, no swap file, failed to power on VM when trying to start them
Follow these steps:
  1. Run the ps -auxwww | grep -i vm_name command on each ESX host until you find the server host that is running the virtual machine's process and locking its files.
  2. Run the service vmware-vpxa restart command on that ESX host.
  3. Restart the VMware VirtualCenter Server service.
If the issue persists after performing these steps:
  1. Power off the virtual machine.
  2. Access the ESX/ESXi service console using an SSH client.
  3. Open the virtual machine's configuration file (.vmx) in a text editor. The default location is:

    /vmfs/volumes/datastore_name/vm_name/vm_name.vmx

  4. Remove the location of the swap file referenced in the configuration file. It looks similar to:

    sched.swap.derivedName = ""

  5. Save the file.
  6. Rename or delete the existing swap file from the virtual machine directory.
  7. Unregister the virtual machine and re-register it for the changes to take effect. For more information, see Registering or adding a virtual machine to the inventory on vCenter Server or on an ESX/ESXi host (1006160).
  8. Power on the virtual machine.

A virtual machine is deleted outside of vCenter Server


A user can delete a virtual machine through the VMware Management Interface while vCenter Server is down, through the vSphere Client directly connected to an ESX/ESXi host, or by deleting the virtual machine's configuration file through the service console.

Note: If the configuration file was deleted and the virtual disk remains, you can recreate the virtual machine using the VMware Management Interface or the vSphere Client and choosing to attach the existing virtual disk to a newly created .vmx file.

vCenter Server is restarted while a migration is in progress


This is a temporary situation. During startup, vCenter Server reconnects to all hosts. If a migration completed while vCenter Server was down, a virtual machine can be reported as an orphan until vCenter Server establishes a connection to the virtual machine's target host.

Too many virtual machines are scheduled to be relocated at the same time


An ODBC timeout can cause errors in the database. To resolve an ODBC timeout:
  1. Delete the orphans after ensuring the original virtual machines can power on.
  2. Click DeleteVM on the vCenter Server console to delete the virtual machine and its orphan from the vCenter Server database.

Attempting to delete virtual machines when an ESX/ESXi host local disk (particularly the root partition) has become full


The orphaned virtual machine must be removed by right-clicking the virtual machine in the Inventory.

For more information on correcting the host, see Investigating disk space on an ESX or ESXi host (1003564).

Rebooting the host within 1 hour of moving or powering on virtual machines


If the host is rebooted within an hour after the virtual machines are moved or powered on, the vmInventory.xml file does not persist and hostd does not report these virtual machines as registered on the host. In an HA-enabled cluster, this condition impacts only the virtual machines with HA restart disabled.

For more information, see Virtual machines are orphaned after rebooting the ESXi host on which they reside (2013301).

A .vmx file contains special characters or incomplete line item entries


Using a text viewer, view the contents of the .vmx file. If any lines appear incomplete or contain trailing spaces or special characters:
  1. Make a backup copy of the .vmx file.
  2. Using a text editor, delete the partial lines and/or remove any trailing spaces or special characters.
  3. In vCenter, right-click on the virtual machine and click Remove From Inventory.
  4. In vCenter Server, browse the datastore and find the .vmx for the virtual machine.
  5. Right-click on the virtual machine and click Add to Inventory.
After completing these steps, the virtual machine shows normally. If you attempt to power it on and receive a "virtual machine question" prompt, respond with the default and the virtual machine will power on normally.

Reload all invalid virtual machines on a single host at one time

This script reloads all invalid virtual machines on a single host at once:

for a in $(vim-cmd vmsvc/getallvms 2>&1 |grep invalid |awk '{print $4}'|cut -d \' -f2);do vim-cmd vmsvc/reload $a;done


Additional Information

For further information on troubleshooting Orphaned virtual machines, such as recovering orphaned virtual machines in the vSphere Client using a Relocate option, see the vSphere Troubleshooting Guide.

For more troubleshooting information, see Troubleshooting a failure to deploy or undeploy a virtual machine in VMware vCenter Lab Manager (1006336).

Tags

boot-guest-os boot-vm drs-migration-failed ha-agent ha-agent-failure ha-host-failure hostd-agent management-service migrate-vm remove-host-from-maintenance-mode vc-inventory vm-invalid vm-not-registered vm-orphaned vpxa-agent vpxa-agent

See Also

This Article Replaces

Orphaned VM's even though the VM's are still running (1000832)
orphaned virtual machine (1001445
Hosts become orphaned after Reading to inventory. (1000012)
VM Orphaned after VMotion, time out of sync (1000969)
Orphan Virtual Machines (1351)
How to fix and reason why VMS became orphaned.(1000275)
Manually performing a VMotion causes a Virtual Machine getting orphaned in VirtualCenter (1002867) 
VM's showing as orphaned in VirtualCenter (1001099)

Update History

04/22/2011 - Updated to reflect 4.x. 09/21/2011 - Added ESXi 5 and vCenter Server 5 to Products 7/27/2012 - Fixed links and internal anchors. 11/26/2013 - Added ESXi 5.5 and vCenter Server 5.5 to Products

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.

Feedback

  • 59 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.
What can we do to improve this information? (4000 or fewer characters)
  • 59 Ratings
Actions
KB: