我目前正在尝试构建脚本,因为我在源代码管理下有一个ASP.net Web部件,我的构建脚本最后应该这样做:
我从未尝试过自动化虚拟机,但我看到VMWare和Virtual Server都提供自动化设施。虽然我无法使用虚拟服务器(Windows XP Home :-(),但虚拟PC可以工作。
有没有人在自动化方面有VMWare Server或Virtual PC 2007 SP1的经验?
哪一个更适合(我运行Windows,因此VMWare的平台独立性不计算)并且更容易自动化?
答案 0 :(得分:20)
使用VMWare,有Virtual Machine Automation APIs (VIX API)。您可以找到参考指南here。它适用于VMWare Server和WorkStation,但AFAIK不适用于ESX Server。
来自VIX的主页:
VIX API允许您编写 自动化的脚本和程序 虚拟机操作。 API是 高级,易用,实用 对于脚本编写者和 应用程序员。它继续运行 VMware Server和Workstation 产品,包括Windows和Linux。 为C,Perl和。提供绑定 COM(Visual Basic,VBscript,C#)。
答案 1 :(得分:6)
如果要在C#中执行此操作,请使用https://github.com/dblock/vmwaretasks而不是原始VixCOM API。
答案 2 :(得分:3)
我同意克里斯的观点。 虚拟机自动化API非常适合虚拟机操作的自动化。 VIX API版本1.6.2也可用于自动执行ESX来宾操作。
答案 3 :(得分:2)
VirtualBox还有用于自动化VM的API。
答案 4 :(得分:2)
为了跟进@Chris,ESX具有极强的可编写脚本。我最近一直在使用的客户已经构建了一个Web服务,该服务启动VMware脚本以创建他们需要的VM,然后使用自定义引导ISO启动VM。 ISO包含了完全无助的操作系统构建所需的所有kickstart或unattend.txt信息。