Автоматизация VMWare или VirtualPC
В настоящее время я экспериментирую со сценарием сборки, и, поскольку у меня есть веб-часть ASP.net под контролем версий, мой сценарий сборки должен сделать это в конце:
- Получите "голый" образ Windows 2003 IIS VMWare или Virtual PC из сети
- Загрузите это
- Скопируйте файлы из папки сборки на сервер
- Установите это
- Делай все, что нужно
Я никогда не пробовал автоматизировать виртуальную машину, но заметил, что и VMWare, и виртуальный сервер предлагают средства автоматизации. Хотя я не могу использовать Virtual Server (Windows XP Home :-(), Virtual PC работает.
Есть ли у кого-нибудь здесь опыт работы с VMWare Server или Virtual PC 2007 SP1 с точки зрения автоматизации?
Какой из них лучше подходит (я запускаю окна, поэтому независимость от платформы VMWare не в счет) и легче автоматизировать?
Ответов (5)5
В VMWare есть API-интерфейсы автоматизации виртуальных машин (VIX API) . Вы можете найти справочное руководство здесь . Он работает с VMWare Server и WorkStation, но, AFAIK, он недоступен для ESX Server.
С главной страницы VIX:
VIX API позволяет писать сценарии и программы, автоматизирующие операции виртуальных машин. API высокоуровневый, простой в использовании и практичный как для авторов сценариев, так и для программистов приложений. Он работает на продуктах VMware Server и Workstation, как Windows, так и Linux. Привязки предоставляются для C, Perl и COM (Visual Basic, VBscript, C#).
В дополнение к @Chris, ESX чрезвычайно поддерживает сценарии. Клиент, с которым я недавно работал, создал веб-службу, которая запускает сценарий VMware для создания необходимой им виртуальной машины, а затем запускает виртуальную машину с пользовательским загрузочным ISO. Этот ISO включает всю информацию о kickstart или unattend.txt, необходимую для создания полностью самостоятельной сборки ОС.
Используйте https://github.com/dblock/vmwaretasks, а не необработанный API VixCOM, если вы собираетесь делать это на C#.