Xen Stuff

Troubleshoot a Hung VM

The issue is that the iSCSI storage was lost due to loss of connectivity to the SAN from XenServer.

Gather Information from VM’s:

xe vm-list

This returns all of the VMs in the XenServer cluster. Specifically this will give you the UUID and Name of the VM. If this was just a power down issue, we could easily reset the power state with the following command:

xe vm-reset-powerstate force=true vm=VMNAME or xe vm-reset-powerstate force=true uuid=UUID

This will move the VM to a shutdown state and can be started via XenConsole. Because of the type of failure that caused these VMs to become unreachable, we need to dig in a bit further and reset a few more pieces of XenServer to allow us to boot the servers once again. We’ll need to gather information again (note the UUID of the server in question):

xe vm-list

Then find the control domain ID for that VM:

list_domains | grep "UUID of VM"

This will list the control domain for that VM in a format similar to 78 | UUID. In this case, the domain ID is 78. Now, run this command:

/opt/xensource/debug/xenops destroy_domain -domid 78

Replace 78 with whatever control domain ID is listed for the VM. Once the command is run, in XenConsole, it won’t appear to have done anything so we’ll need to give it one extra nudge. Whatever server that VM was running on, you’ll need to run:

xe-toolstack-restart

The server will show a yellow triangle for a few minutes then will return to normal. The VM in question will also appear in a shutdown state and will be bootable once again.

Query Dell Service Tag from a Xen Host

SSH to the host and run:

dmidecode -s system-serial-number