Автоматизируйте установку CentOS с помощью VMware для тестирования - PullRequest
4 голосов
/ 16 июля 2009

Можно ли автоматизировать установку ОС с помощью VMware или любого другого продукта виртуализации?

Один из наших продуктов состоит из настроенной версии CentOS, которая устанавливает ОС и наше приложение на сервер. Это очень похоже на любую установку CentOS / RHEL, в которой вы выбираете режим, соответствующий различным параметрам кикстарта, а затем выбираете тип клавиатуры. В остальном установка автоматическая.

Я хотел бы иметь автоматизированную систему, которая создаст новую гостевую виртуальную машину, загрузит ее с ISO-образом нашего продукта, начнет установку (включая выбор клавиатуры), дождется перезагрузки и затем запустит набор автоматизированных тестов.

Я знаю, что существует множество способов автоматизировать создание новых гостей виртуальных машин из существующих шаблонов / образов, и я знаю, что вы можете использовать API VIX для взаимодействия с виртуальными машинами, но API VIX, кажется, требует, чтобы инструменты VMware уже запущен (что не будет иметь место при загрузке с установочного диска CentOS).

Этот ответ ( Автоматизация VMWare или VirtualPC ) указывает, что вы можете написать скрипт VMware для загрузки с ISO, который выполняет автоматическую установку, но я действительно хотел бы протестировать тот же процесс, который будут использовать наши клиенты ,

Другой вариант может состоять в том, чтобы использовать полностью виртуализированный режим Xen и посмотреть, будет ли работать сценарий через последовательный порт.

ТИА, Джейсон

Ответы [ 3 ]

1 голос
/ 09 сентября 2009

У меня очень очень похожий вопрос, он на суперпользователе:

https://superuser.com/questions/36047/moving-vmware-os-image-as-primary-os-on-a-system

1 голос
/ 09 сентября 2009

Вы также можете использовать VirtualBox вместо VMWare. VirtualBox SDK позволяет напрямую управлять клавиатурой, мышью, последовательным портом и параллельным портом гостя без установленных гостевых инструментов virtualbox.

К сожалению, он не предлагает интерфейс текстовой консоли, но последовательный порт может быть подключен к локальному файлу канала, и с этим, вероятно, можно работать также.

0 голосов
/ 10 августа 2009

Возможно, это не то, что вам нужно:

Я сделал нечто подобное с установкой на основе Ubuntu. Мы использовали preseeding (форма кикстарта Debian), чтобы ответить на все вопросы во время установки - предоставив файл preseed и установщик через tftp. В дополнение к официальному зеркалу Ubuntu мы добавили apt-сервер с нашими собственными пакетами в файл preseed. Мы поместили версию .deb vmware-tools на apt-сервер и добавили ее в устанавливаемые пакеты.

.deb инструментов vmware просто содержит .tar.gz и скрипт postinstall, который извлекает его в / tmp и запускает скрипт установки vmware (в котором есть параметр, который нужно запускать без присмотра, поэтому он не задает никаких вопросов ).

Итак, после перезагрузки vmware-tools были запущены и работали, и мы могли использовать vix для написания сценария для остальных (что было не очень надежно). Если у вас возникнут проблемы с запуском vmware-config.pl во время загрузки, вы можете создать специальный пакет, который просто извлекает инструменты и сценарий инициализации, который устанавливает их при первой загрузке, отключает сам себя и перезагружается.

Возможно, вы можете использовать эту стратегию (заменив apt на yum, preseed - kickstart, а tftp - на обновленный iso). Если вам действительно нужно проверить, что ваши пользователи выбирают клавиатуру в установщике (которая не сильно отличается от кикстарта), это, очевидно, не будет работать для вас ..

...