Запуск виртуальных машин VMware Workstation в качестве служб

Мне всегда казалось очевидным, что пользователям VMware было бы удобно завершать сеанс работы с компьютером, сохраняя функционирующие виртуальные машины (Virtual Machines, VM). А еще неплохо было бы запускать выбранные VM в процессе начальной загрузки системы, чтобы хост-машина зарегистрировалась на контроллере домена (DC), работая внутри одной из виртуальных машин хост-компьютера. Но я не был готов поверить в реальность таких возможностей, полагая, что нельзя завершить сеанс компьютера, сохранив VM активными. Тем не менее оказалось, что можно без труда запустить и настроить конфигурацию виртуальных машин в качестве служб.

Инструменты для организации служб

В VMware нет встроенного механизма для запуска программы как службы, но настроить виртуальные машины VMware Workstation 4.0 на работу в качестве служб на самом деле так же просто, как завязать шнурки. Все, что нужно, — это два проверенных инструмента из набора ресурсов Windows: instsrv.exe и srvany.exe. Обе утилиты можно бесплатно загрузить из сети. Достаточно обратиться по адресу http://www.microsoft.com/downloads, ввести Windows 2003 Resource Kit Tools в поле Keywords и щелкнуть на кнопке Go. Затем следует щелкнуть на кнопке Windows Server 2003 Resource Kit Tools Download на Web-странице Windows Server 2003 Resource Kit Tools, чтобы загрузить файл rktools.exe, в котором содержатся новейшие версии Instsrv и Srvany. Для установки инструментов на машине достаточно запустить исполняемый файл.

Инструменты набора ресурсов Windows 2003 можно разворачивать на машинах Windows 2003 и Windows XP. Если хост-компьютер работает с Windows 2000 или Windows NT, то Instsrv и Srvany можно загрузить с компакт-диска набора ресурсов Windows 2000 или NT либо установить инструменты набора ресурсов Windows 2003 на машине XP, а затем просто скопировать Instsrv и Srvany с машины XP в папку %windir% на хост-компьютере Windows 2000 или NT. Версии Instsrv и Srvany совместимы и с более старыми операционными системами.

Приступаем к работе

В процессе установки комплекта ресурсов в системе задается путь к папке комплекта ресурсов. Чтобы система использовала новый путь, после установки комплекта ресурсов компьютер требуется перезагрузить. Другой способ — скопировать Instsrv и Srvany в папку, путь к которой уже известен системе, например C:windowssystem32.

Получив файлы из комплекта ресурсов, можно приступить к следующей задаче — определить местоположение файла vmware.exe программы VMware. Я применял стандартные параметры при установке VMware, поэтому путь к файлу на моем компьютере — C:program filesvmwarevmware workstationvmware.exe.

Последний фрагмент информации, необходимый для того, чтобы приступить к настройке новой службы, — путь к файлу конфигурации виртуальной машины, которую требуется преобразовать в службу. Этот файл находится в папке, в которой была создана VM, и имеет расширение .vmx. Все мои виртуальные машины хранятся на диске E, поэтому путь к .vmx-файлу VM, запускаемой в качестве службы, выглядит следующим образом: E:vmsw2k1w2k1.vmx. Имея информацию о путях к файлам vmware.exe и .vmx, можно создать службу.

Создание службы

Сначала необходимо дать службе имя. Чтобы составить его, я дополняю имя виртуальной машины префиксом VM_. Например, службе виртуальной машины с именем W2K1 будет присвоено имя VM_W2K1. Выбрав имя, можно организовать службу с помощью следующей синтаксической конструкции:

instsrv 

Таким образом, в моем примере следует ввести команду:

instsrv VM_W2K1
c:windowssrvany.exe

Затем необходимо изменить параметры службы с помощью редактора реестра и оснастки Windows Services консоли управления Microsoft Management Console (MMC). В редакторе реестра следует перейти в раздел HKEY_LOCAL_MACHINESYSTEM CurrentControlSet Services. Щелкнув правой кнопкой мыши на имени службы VM, нужно выбрать пункт New и щелкнуть на Key. Новому разделу следует присвоить имя Parameters.

Затем требуется щелкнуть правой кнопкой мыши на разделе Parameters, выбрать пункт New и щелкнуть на String Value. Новое значение следует назвать Application. Дважды щелкнув на параметре Application, необходимо ввести путь к файлу vmware.exe на хост-компьютере (имя пути должно быть заключено в двойные кавычки), затем указать ключ -x и путь к файлу .vmx виртуальной машины (в двойных кавычках). Для моей конфигурации строка имеет вид «C:program filesvmwarevmware workstationvmware.exe» -x «e:vmsw2k1w2k1.vmx». После этого редактор реестра можно закрыть.

Для дальнейших действий необходимо открыть оснастку Windows Services. Следует щелкнуть правой кнопкой мыши на только что созданной службе VM и выбрать пункт Properties. В диалоговом окне Properties службы требуется щелкнуть на вкладке Log On. Важно убедиться, что выбрана учетная запись Local System, а затем установить флажок Allow service to interact with desktop (экран 1). Чтобы закрыть диалоговое окно Properties, нужно щелкнуть на кнопке OK. Теперь можно запустить службу VM с помощью оснастки Windows Services. По умолчанию служба настраивается на автоматическую работу, поэтому VM будет запускаться при начальной загрузке системы. Каждая VM, настроенная на работу в качестве службы, будет появляться в собственном окне на «рабочем столе». Поскольку VM работает как служба, можно завершить сеанс, а виртуальная машина останется активной.

Экран 1. Настройка параметров службы VM

Настройка VMware

Этапы настройки, выполненные до сих пор, позволяют запустить любое количество виртуальных машин в качестве служб. Однако некоторые встроенные характеристики VMware затрудняют совместное функционирование виртуальных машин. Например, если несколько служб VM пытаются задействовать один флоппи-дисковод, VMware выводит сообщение, что дисковод отключен, во всех VM, кроме единственной, запущенной раньше остальных. Процесс загрузки VM будет продолжен только после щелчка на кнопке OK, подтверждающего сообщение. Чтобы не пришлось вмешиваться в процесс загрузки, необходимо настроить параметры каждой VM на хост-компьютере так, чтобы их флоппи-дисководы при включении питания не подключались.

Чтобы VM начинала работу с отключенным дисководом, следует открыть VM в VMware, дважды щелкнуть на пиктограмме дисковода, сбросить флажок Connect at Power On и щелкнуть на кнопке OK в диалоговом окне Settings НГМД. Другой способ отключения флоппи при начальной загрузке — открыть файл конфигурации .vmx виртуальной машины в редакторе Notepad и присвоить параметру floppy0.startConnected значение false.

Процесс начальной загрузки может быть нарушен и подсказками VMware. Можно запретить вывод всех подсказок для любой конкретной VM. Для этого нужно открыть и отредактировать файл .vmx виртуальной машины в Notepad. Чтобы отменить все подсказки, следует дополнить файл строкой

hints.hideAll = «true»

как показано на экране 2.

Экран 2. Отключение подсказок VM в файле настроек

С помощью виртуальных машин, настроенных в качестве служб, можно решать самые разнообразные задачи. В частности, можно настроить VM на работу в качестве контроллера домена (DC), на котором будут регистрироваться операционные системы хост-компьютера.

Крис Вольф (http://www.chriswolf.com) — консультант в CommVault Systems. Специализируется на кластерах, системах хранения и диагностике сетевых проблем, имеет сертификаты MCT, MCSE, CCNA.


WEB-УЗЛЫ

VMware
http://vmware.com

Инструментальный комплект Windows Server 2003 Resource Kit Tools
http://www.microsoft.com/downloads