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