虚拟机无缘无故假死,是件比较头疼的事情。关机也关不了,重启也不行。有时需要关物理机才行。如果XenServer上有比较重要应用,肿么办?

   造成虚拟机假死的原因很多,有的是本身虚拟机系统的原因、有的是XenServer底层XAPI接口有问题。

   XAPI就是XenServer中的一组管理接口的统称,是XenServer管理的核心,由一系列的toolstack组成。XenCenter通过XAPI来读取XenServer的配置、管理、License的管理、数据库的维护等等,同时也包括如存储(SR)、虚机、虚拟网卡、HA等等所有的功能控制。简而言之,XAPI就是个和底层通信的中间层、接口层。

   系统的原因一般强制重启就可以解决;但是xapi有问题,强制重启方法有时是行不通的。

一般假死的解决方法:

把xapi重启即可解决;在XenServer中输入: xe-toolstack-restart 或者 service  xapi restrat

上述命令无效的话,可以使用下面的方法:

I've found the resolution through my other thread. Here's what you need to do.


1 - "xe vm-list" to get the uuid of the VM that is hung


2 - "list_domains" to list the domain uuid's so you can determine
the domain # of the VM above by matching the uuids from this output with
the uuid for your VM from the previous command.


3 - "/opt/xensource/debug/destroy_domain -domid XX" where XX is the domain number from the previous command

执行到最后一步,有可能时间比较长。需要等。。。。。