我有一台运行 ESXi4 的 Dell T610、一台 APC Smart UPS 1000VA 和一台运行 Vista 和 vSphere 4 Essentials 包的本地“控制台”计算机。T610 和 Vista 计算机之间有一个专用的管理网络。UPS 有一个 USB 和串行端口。目前它通过 USB 连接到控制台计算机。
我们有 4 台虚拟机:SBS 2003、运行终端服务的 Server 2003 和两台 XP 机器。
理想情况下,当 UPS 被迫使用电池供电 [持续一定分钟] 时,我希望正常关闭所有虚拟机,然后是 ESXi,然后是控制台计算机。后两者并不是严格意义上的优先级,但 ESXi 中的虚拟机是。
Google 提供了许多已弃用的脚本,用过的可以在 ESXi 3.x 或类似版本上运行,但是我无法找到它们被弃用的原因。
- 我需要做什么才能做到这一点?我有随 UPS 提供的 Powerchute Express,但如果需要的话,我愿意为软件付费。
答案1
UPS 软件能够在切换到电池后在您选择的时间点启动脚本。只需使用该脚本发送适当的命令即可。您可以告诉 VMWare 保存客户端的当前系统状态,而不是关闭客户端。或者,让脚本使用诸如 shutdown.exe 或 psshutdown.exe 之类的程序向客户端发送远程关机命令。一旦这些命令被触发,让脚本休眠一段适当的时间(sleep.exe),然后再关闭主机。
答案2
正如 John 指出的那样,我还会使用 Vista Client 和 Powerchute 来触发脚本。您可能需要查看Vmware Power CLI。我想说的是,保存状态或关闭虚拟机取决于你……