计划VMWare ESXi 4.1 VM重新启动

我们有一台虚拟机在Windows Server 2003上的VMWare Server主机上运行。

本机使用非永久磁盘进行设置。

我们设置了一个Windows任务计划,它运行一个batch file,每周重置机器,使其恢复到原始状态。

我们运行的batch file是:

"C:\Program Files\VMware\VMware Server\vmware-cmd" "C:\Virtual Machines\VirtualMachineName\VirtualMachineName.vmx" stop hard "C:\Program Files\VMware\VMware Server\vmware-cmd" "C:\Virtual Machines\VirtualMachineName\VirtualMachineName1.vmx" start 

此后,我们将此机器迁移到免费版本的ESXi 4.1。

任何人都可以让我知道如何以及如何安排这样的重新启动?

  • 启用ssh访问您的ESXi
  • 将cron作业添加到根crontab(/ var / spool / cron / crontabs / root)

您可以使用vmware-cmd启动,重新引导,停止和挂起虚拟机:

 vmware-cmd -H <vc_system> -U <user> -P <password> --vihost <esx_host> /vmfs/volumes/Storage2/testvm/testvm.vmx stop soft vmware-cmd -H <vc_system> -U <user> -P <password> --vihost <esx_host> /vmfs/volumes/Storage2/testvm/testvm.vmx start soft 

如果您尚未完成,则需要在ESXi主机上启用ssh访问权限 。

一旦你完成了,你可以把vmware-cmd命令放到一个脚本中,然后从cron运行它们

 #!/bin/bash /usr/bin/vmware-cmd "Centos 5" stop hard sleep 30 /usr/bin/vmware-cmd "Centos 5" start 

将停止,然后在当前主机上启动机器“Centos 5”。

把这个放在根crontab中

 30 1 * * 0 /path/to/restart-script 

你应该很好走。

编辑:

由于chopper3注意到crontab在重启时不是持久的,所以你需要编辑/ etc / local文件并添加命令来重新创buildroot crontab

 /bin/kill $(cat /var/run/crond.pid) /bin/echo "30 1 * * 0 /path/to/restart-script" >>/var/spool/cron/crontabs/root /bin/busybox crond 

你可能也可能安排在虚拟机本身重新启动? 无论是Linux还是Windows VM,您都可以在guest虚拟机中使用cron或Task Scheduler来执行定时重新启动。