记一次处理xenserver虚拟机(VM)黄色图标假死

现象:发现一台运行群机器人的虚拟机服务停止。按照以前的操作方式想重启VM。结果在windows下的xenserver没法处理,强制重启的操作按下后一直是黄色的图标。


于是顺着某度搜索前人的经验。

先是搜到了这个:http://blog.teidc.com/post-12.html  (附录1)

尝试了方法1-3都没有解决问题。跳过4,直接用了5,算是初步成功。看到在xenserver的电脑控制台发现图标正常了,提示的是关闭。

随后在xenserver的电脑控制台尝试启动服务器,失败。提示如下:


此时使用df -h查看了一下磁盘占用。发现/dev/sda1/是100%的,于是乎删除了一部分日志文件。继续尝试启动虚拟机,失败。

现在没办法了,直接想重启xapi,运行命令:

service xapi restart

虽然提示成功,但,电脑上的xenserver软件并不能连接到主机。提示:Error: "xapi dead but pid file exists"

在Citrix思杰官网看到这么一条说明 https://support.citrix.com/article/CTX215887

Solution

1.Remove the xapi.pid file from /var/run directory using "rm -rf /var/run/xapi.pid" (手动删除xapi.pid文件)

2.Restart toolstack using "xe-toolstack-restart"  (重启xapi)

3.Try to reconnect the server in XenCenter   (在PC上重新连接到主机)


这样做以后,再到电脑上的xenserver控制台去启动VM,成功。


本文章也参考了这篇文章,学习了一些xenserver的命令:http://www.wangchao.info/1167.html


文章的结尾,为了避免原文以后丢失这里贴一下附录部分。

附录1

XenCenter中可查看到该虚拟机图标显示黄色状态,通过"右键"执行重启或者关闭操作却只能选择属性,VM不能再进行其它操作。这种现象被称作是VPS挂起情况,通常发生在虚拟机遇到死机或虚拟机遭到其它意外情况。以下是面对这类情况的解决办法,请由上往下逐步使用解决方案。

语法约定:

xe vm-reboot force=true name-label=vps919

xe vm-reboot force=true name-label=vps919

方法一:

xe task-list  #查看当前任务列表和uuid

xe task-cancel uuid= #取消当前任务

方法二:

当虚拟机处于死机状态时尽量使用硬关机、硬重启。

xe vm-reboot force=true name-label=vps919

xe vm-shutdown force=true name-label=vps919

方法三:

销毁卡死VM对应的domain id,迫使VM自动重启。

xe vm-list params=uuid name-label=

#或

xe vm-list name-label= --minimal #获取指定VM的uuid

list_domains |grep #获取VM对应的domain id

/opt/xensource/debug/destroy_domain -domid #销毁VM对应的domain id

方法四:

迫使卡死VM崩溃。

xe vm-list params=actions-after-crash name-label= #查看VM崩溃后的操作,默认为重启

xe vm-list params=uuid name-label= #获取指定VM的uuid

list_domains |grep #获取VM对应的domain id

/usr/lib/xen/bin/crash_guest #触发VM崩溃,VM崩溃后会自动重启

方案五:

如果VM处于脱机状态,而VM在数据库中被标记为运行,则需要VM电源状态为关机。

xe vm-reset-powerstate force=true vm=

方案六:

重启xe工具。

这个方法有一定风险,请注意。

xe-toolstack-restart

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容