Моя компания работает над проектом, в котором мы поставляем устройство (виртуальную машину CentOS), на котором работает несколько сервисов.
В настоящее время это устройство регенерируется каждый раз «вручную», но я хотел бы улучшить этот процесс и сделать его менее подверженным ошибкам за счет автоматизации большей части.
Можно ли автоматизировать создание виртуальной машины (возможно, с помощью VMWare)? Если да, то до какой степени может идти эта автоматизация и какие инструменты мне нужно для этого использовать?
На рабочей станции VMWare есть API, которые можно использовать для автоматизации этого процесса. Они называются API VMWare VIX. Посмотри на http://communities.vmware.com/community/vmtn/developer/forums/automationapi?tstart=0
Привязки предоставляются для C, Perl и COM (Visual Basic, VBscript, C #), но есть также неофициальные модули для других языков, таких как Python.
Взгляните на Vagrant, он может помочь с автоматизацией создания виртуальных машин.
Поскольку вы используете CentOS, вы можете автоматизировать его с помощью файла KVM + Kickstart через загрузку PXE.
Я знаю, что это не связано с VMWare, но весь ваш процесс можно автоматизировать таким образом, используя собственные решения.
Кроме того, у вас могут быть разные файлы кикстарта, отвечающие на конкретный запрос клиента для вашего приложения.
Ты можешь использовать Ганети и Изображение экземпляра Ганети где вы можете создать образ уже созданной виртуальной машины и в качестве основы для новых виртуальных машин. Чтобы привыкнуть к этому, нужно немного времени, но после этого создание виртуальной машины находится на расстоянии одной команды.