Чтобы Cloud Assembly удалось инициализировать компьютер Windows, развернутый в vSphere, в основе образа должен лежать шаблон vSphere с установленной и настроенной службой Cloudbase-Init.

Создание образа

  1. Для создания и включения виртуальной машины Windows используйте vSphere.
  2. Войдите в Windows на виртуальной машине.
  3. Загрузите Cloudbase-Init.

    https://cloudbase.it/cloudbase-init/#download

  4. Запустите файл setup.msi для Cloudbase-Init.

    Во время установки введите Администратор в качестве имени пользователя и выберите вариант запуска LocalSystem.

    Страница учетной записи мастера установки Cloudbase-Init

    Для других параметров настройки можно оставить значения по умолчанию.

  5. Разрешите установку, но не закрывайте последнюю страницу «Завершено» в мастере установки.
    Важно!: Не закрывайте последнюю страницу мастера установки.
  6. При открытой странице «Завершено» мастера установки перейдите в Windows в папку установки Cloudbase-Init и откройте в текстовом редакторе следующий файл.

    conf\cloudbase-init-unattend.conf

  7. Установите для параметра metadata_services значение OvfService, как показано ниже. Добавьте параметр, если он еще не существует.

    metadata_services=cloudbaseinit.metadata.services.ovfservice.OvfService

  8. Сохраните и закройте cloudbase-init-unattend.conf
  9. В той же папке откройте следующий файл в текстовом редакторе.

    conf\cloudbase-init.conf

  10. Настройте first_logon_behaviour, metadata_services и plugins, как показано ниже. Добавьте параметры, если они еще не существуют.
    first_logon_behaviour=always
    . . .
    metadata_services=cloudbaseinit.metadata.services.ovfservice.OvfService
    . . . 
    plugins=cloudbaseinit.plugins.windows.createuser.CreateUserPlugin,cloudbaseinit.plugins.windows.setuserpassword.SetUserPasswordPlugin,cloudbaseinit.plugins.common.sshpublickeys.SetUserSSHPublicKeysPlugin,cloudbaseinit.plugins.common.userdata.UserDataPlugin
    . . .
  11. Сохраните и закройте cloudbase-init.conf
  12. На странице «Завершено» мастера установки выберите необходимые параметры, чтобы запустить программу Sysprep и завершить работу по окончании выполнения этой программы, а затем нажмите кнопку Готово.
    Примечание: Специалисты VMware сталкивались с ситуациями, когда запуск программы Sysprep препятствовал нормальному развертыванию образа.

    В ходе развертывания служба Cloud Assembly применяет динамически создаваемую спецификацию настройки, которая отключает сетевой интерфейс. Состояние ожидания Sysprep в образе может привести к сбою спецификации настройки и отключению развертывания.

    Если вы подозреваете, что это происходит в вашей среде, попробуйте не активировать параметры Sysprep при создании образа.
    Последняя страница мастера установки Cloudbase-Init
  13. После завершения работы виртуальной машины используйте vSphere, чтобы преобразовать ее в шаблон.

Дополнительные сведения

В следующей таблице подробно описываются записи конфигурации, созданные во время настройки.

Параметр конфигурации Назначение
Username, CreateUserPlugin и SetUserPasswordPlugin После завершения работы программы Sysprep при первом запуске используется параметр CreateUserPlugin, чтобы создать учетную запись с именем пользователя «Администратор» и пустым паролем. Параметр SetUserPasswordPlugin позволяет команде Cloudbase-Init заменить пустой пароль на пароль для удаленного доступа, который будет добавлен в облачный шаблон.
Действия при первом входе в систему Этот параметр предлагает пользователю изменить пароль при первом входе в систему.
Службы метаданных Если задано только значение OvfService, Cloudbase-Init не будет искать другие службы метаданных, которые не поддерживаются в vCenter. Это уменьшит объем информации в файлах журнала, так как в противном случае в журналах будут создаваться записи об ошибках при поиске таких служб.
Подключаемые модули Если указаны только подключаемые модули с возможностями, которые поддерживаются значением OvfService, количество записей в журналах также уменьшается. Cloudbase-Init выполняет подключаемые модули в указанном порядке.
Запустить как LocalSystem Этот параметр поддерживает любые расширенные команды инициализации, которые могут потребовать запуска Cloudbase-Init в рамках выделенной учетной записи администратора.