Обезличивание гостевых ОС, SysPrep

Когда мы клонируем  уже установленную ОС,  мы можем  получить  проблемы из-за полной идентичности старой и новой операционных систем. Притом  не важно, пользуемся ли мы шаблонами  виртуальных машин  в vCenter или разворачиваем ранее снятые образы на физические серверы. Имя машины, статичный  IP-адрес  и другие идентификаторы (в случае Windows это могут быть SID  или ID клиента  Windows Update) – эти параметры  будут одинаковы  у всех ВМ, развернутых  из одного шаблона. Оказавшись в одной сети и подключаясь к одним серверам, такие ОС создадут проблемы.

Для  предотвращения этих проблем  нам необходимо  давать уникальное имя каждой ОС, задавать адрес IP, если он назначается вручную, и генерировать прочие идентификаторы. Также  в некоторых  случаях  для каждого экземпляра Win dows и другого ПО необходимо указывать собственный  ключ продукта.

Проведем  аналогию с невиртуальной средой. Например, в случае, когда у нас на серверы разворачиваются образы, также необходимо обезличивание. И оно выполняется примерно по следующему плану:

1.    Мы подготавливаем эталонный образ. Устанавливаем на один из серверов ОС,  настраиваем ее, устанавливаем необходимые  драйверы  и приложения.

2.    Удаляем  из ОС  уникальную информацию (обычно  это имя,  сетевые  настройки,  ключ продукта  и т. д.). Microsoft  требует, чтобы при клонировании Windows для этой операции  использовалась утилита System Preparation Tool (SysPrep).

3.    Снимаем образ такой «обезличенной» системы.

4.    При развертывании ОС из такого образа удаленная информация заменяется данными, уникальными для каждой установки.  Это выполняется вручную или автоматически.

В виртуальной среде мы можем (и иногда вынуждены) поступать точно так же.

Только этап № 3 выглядит  так: «преобразуем  ВМ с обезличенной ОС в шаблон».

Однако подобный подход не лишен недостатков. Самый неприятный – сложность обновления образа. Чтобы добавить в образ (или шаблон) что-то новое, например обновления, необходимо:

1)    развернуть  этот образ;

2)    задать уникальную информацию (имя, сетевые настройки и т. д.);

3)    произвести   необходимые  изменения  (установить  обновления,  добавить ПО);

4)    удалить уникальные параметры  (имя, сетевые настройки и т. д.);

5)       заново снять образ.

Для некоторых гостевых операционных систем vCenter реализует более удобный  подход  к обезличиванию, который  лишен  этого  недостатка.  Суть  подхода в следующем: инструмент  для обезличивания устанавливается не в гостевую ОС, а на сервер vCenter.  И само удаление уникальных параметров  происходит  не на эталонной системе перед снятием с нее образа (преобразованием в шаблон), а уже на развернутой  копии.  В таком  случае  последовательность действий  выглядит следующим образом.

1.    Мы создаем эталонный образ. Устанавливаем гостевую ОС, настраиваем ее, устанавливаем необходимые приложения.

2.    Преобразуем эту ВМ в шаблон. Обратите внимание: обезличивания не происходит.

3.    Разворачиваем ВМ из этого шаблона. Мастер развертывания описан в предыдущем разделе.

4.    В шаге № 6 мастера Guest Customization нас спрашивают, надо ли обезличивать разворачиваемую ОС. Если надо, то нас просят указать, на что заменить уникальную информацию.

5.    Файлы шаблона копируются в новую ВМ, ее диск монтируется к серверу vCenter.  Таким  образом ПО для обезличивания получает доступ к удалению из ОС уникальных параметров. После этого в образ помещается файл ответов для мастера мини-установки (Mini-Setup). В файле ответов содержатся данные, указанные нами в мастере развертывания ВМ из шаблона. Благодаря файлу  ответов  мини-установка ОС  проводится  в автоматиче ском режиме, избавляя нас от необходимости указывать  параметры  в мастере при первом запуске ВМ.

Такой подход хорош тем, что для обновления шаблона достаточно конверти ровать его в ВМ, включить ее и, никак не меняя уникальную информацию, внести необходимые изменения,  после чего конвертировать обратно в шаблон, не удаляя  уникальную информацию снова.

Для операционных систем Linux vCenter поддерживает обезличивание ОС из следующего списка:

Q  Red Hat Enterprise Linux AS версий от 2 до 5 (включая 64-битные версии);

Q  Red Hat Application  Server версий от 2 до 5 (включая 64-битные версии);

Q  SUSE LINUX Enterprise Server 8, 9, 10.

Впрочем, список может обновляться, и актуальный стоит смотреть в документации (http://pubs.vmware.com).

Притом  на vCenter не нужно  чего-то  доустанавливать или  настраивать.  Он умеет делать обезличивание этих ОС «из коробки».

Если у вас другие версии *nix, то для их обезличивания VMware не предлагает средств, отличных от стандартных для этих ОС. То есть обезличивать их придется  точно так же, как это делается в случае физических серверов.

В случае Windows vCenter нам поможет со следующими  ОС:

Q  Windows 2000 Server, Advanced Server, или Professional;

Q  Windows XP Professional  (включая 64-битные версии);

Q  Windows Server  2003,  Web,  Standard, или  Enterprise Editions  (включая 64-битные версии);

Q  Windows Vista (включая 64-битные версии);

Q  Windows Server 2008;

Q  Windows 7.

Для обезличивания Windows Vista, Windows 7 и Windows Server 2008 vCenter использует  средства, встроенные  в сами эти ОС. Для  того чтобы vCenter помог нам с обезличиванием ОС более ранних версий, чем Windows Vista, нам необходимо поместить утилиту sysprep на сервер vCenter. Порядок действий следующий.

1.    Находим  эту утилиту  для  нужной  версии  ОС.  Взять  ее можно  из  архива deploy.cab,  который  располагается на диске с дистрибутивом этой ОС (\SUPPORT\TOOLS\deploy.cab), или загрузить с сайта Microsoft  (версия SysPrep должна совпадать с версией ОС вплоть до пакетов обновления, поэтому если мы устанавливали Service  Pack  на операционную систему,  то версия с диска может и не подойти).  Также полезной может оказаться  статья базы знаний VMware http://kb.vmware.com/kb/1005593.

2.    Скопировать файлы Sysprep по адресу %AllUsersProfile%\VMware\VMware VirtualCenter\sysprep\<каталог с нужной версией Windows в названии>.

Распишу мастер обезличивания на примере Windows Server 2003.

0.  Sysprep  скопирован  по нужному  пути  на сервер  vCenter.  Вы  запустили мастер клонирования или разворачивания ВМ из шаблона. На шаге № 6 вы выбрали  «Customize using the Customization Wizard». Запустился отдельный мастер, в котором надо указать уникальную для разворачиваемой копии ОС информацию.

1.    Registration Information – на кого зарегистрирована эта копия.

2.    Computer Name – имя ОС в ВМ. Часто удобно бывает поставить переключатель «Use the virtual machine name». Тогда в качестве имени ОС будет использоваться название  ВМ.  Однако  предварительно  стоит  убедиться  в том, что в имени  ВМ  нет  запрещенных  символов.  Например, когда из прочих  соображений  используются для  названия ВМ  FQDN  (computer. domain.com).  Если  установить   описываемый флажок,  мастер  возражать  не будет, но вот мини-установка закончится ошибкой, потому что в имени компьютера в Windows нельзя использовать точки.

3.    Windows License – надо указать ключ продукта и тип лицензирования.

4.    Administrator Password – пароль  администратора и количество  автоматических  аутентификаций под его учетной  записью. Обратите внимание:

если пароль администратора в гостевой  Windows непустой, то Sysprep  не сможет его поменять.

5.    Time zone – часовой пояс.

6.    Run once – произвольные команды, которые будут выполнены  в гостевой ОС  после  обезличивания. Могут  пригодиться для  выполнения каких-то  специфических настроек.

7.    Network – настройки сети.

8.    Workgroup or Domain – членство в рабочей группе или домене.

9.    Operating System Options – скорее  всего, вам не надо снимать  флажок

Generate New Security ID (SID).

10.     Save Specification – мы можем сохранить эти ответы на вопросы мастера, с тем чтобы не отвечать на те же вопросы при разворачивании однотипных  ВМ. Вводим  имя  и описание  файла ответов  для обезличивания. Однаж ды созданный,  этот файл ответов можно выбирать  в пункте  № 0 данного списка,  выбрав  там настройку  Customize using an existing customization specification.

Обратите  внимание на то, что в интерфейсе  клиента vSphere есть пункт Home

? Management ? Customization Specification Manager. Пройдя туда, вы увидите

все существующие  файлы  ответов для мастера обезличивания, сможете их изме-

нять, удалять и создавать новые. Также есть возможность их импорта и экспорта. Хранятся эти файлы  в БД  vCenter,  пароли  администратора  хранятся в зашиф рованном  виде. Обратите  внимание:  для шифрования используется сертификат vCenter.  Это означает, что при переустановке vCenter доступ к зашифрованным паролям теряется.

Для обезличивания гостевых ОС с помощью vCenter есть некоторые условия:

Q  обезличивание с помощью vCenter невозможно для контроллера домена;

Q  загрузочный диск ВМ должен быть первым диском на первом контроллере, то есть быть подключенным к узлу SCSI 0:0;

Q  в ВМ должны быть установлены VMware tools;

Q  Sysprep должен быть скопирован  в правильный каталог на сервере vCenter (для обезличивания Windows версий более ранних, чем Windows Vista).

Обратите внимание. В эталонной ВМ может быть какое-то ПО,  требующее отдельного обезличивания,  обычно это какие-то агенты,  например  антивируса или системы мониторинга. Для них обезличивание придется производить отдельно, их собственными средствами. VMware не дает каких-то специальных инструментов для решения подобных задач.

Источник: Михеев М. О.  Администрирование VMware vSphere 4.1. – М.: ДМК Пресс, 2011. – 448 с.: ил.

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий