Создание специализированного файла ответов ОС
При подготовке к развертыванию экранированных виртуальных машин может потребоваться создать файл ответов на специализацию операционной системы. В Windows это обычно называется файлом unattend.xml. Функция Windows PowerShell New-ShieldingDataAnswerFile помогает сделать это. Затем вы можете использовать файл ответа при создании экранированных виртуальных машин из шаблона с помощью System Center диспетчер виртуальных машин (или любого другого контроллера структуры).
Общие рекомендации по автоматическому использованию файлов для экранированных виртуальных машин см. в статье "Создание файла ответа".
Скачивание функции New-ShieldingDataAnswerFile
Функцию New-ShieldingDataAnswerFile можно получить из коллекция PowerShell. Если компьютер имеет подключение к Интернету, его можно установить из PowerShell с помощью следующей команды:
Install-Module GuardedFabricTools -Repository PSGallery -MinimumVersion 1.0.0
Выходные unattend.xml
данные можно упаковать в экранирование данных вместе с дополнительными артефактами, чтобы их можно было использовать для создания экранированных виртуальных машин из шаблонов.
В следующих разделах показано, как использовать параметры функции для unattend.xml
файла, содержащего различные параметры:
- Базовый файл ответов Windows
- Файл ответов Windows с присоединением к домену
- Файл ответов Windows со статическими IPv4-адресами
- Файл ответов Windows с пользовательским языковым стандартом
- Базовый файл ответов Linux
Базовый файл ответов Windows
Следующие команды создают файл ответов Windows, который просто задает пароль учетной записи администратора и имя узла. Сетевые адаптеры виртуальной машины будут использовать DHCP для получения IP-адресов, и виртуальная машина не будет присоединена к домену Active Directory. При появлении запроса на ввод учетных данных администратора укажите нужное имя пользователя и пароль. Используйте "Администратор" для имени пользователя, если вы хотите настроить встроенную учетную запись администратора.
$adminCred = Get-Credential -Message "Local administrator account"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred
Файл ответов Windows с присоединением к домену
Следующие команды создают файл ответов Windows, который присоединяет экранированную виртуальную машину к домену Active Directory. Сетевые адаптеры виртуальной машины будут использовать DHCP для получения IP-адресов.
Первый запрос учетных данных запрашивает сведения о учетной записи локального администратора. Используйте "Администратор" для имени пользователя, если вы хотите настроить встроенную учетную запись администратора.
Второй запрос учетных данных запрашивает учетные данные, которые имеют право присоединить компьютер к домену Active Directory.
Обязательно измените значение параметра -DomainName на полное доменное имя домена Active Directory.
$adminCred = Get-Credential -Message "Local administrator account"
$domainCred = Get-Credential -Message "Domain join credentials"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -DomainName 'my.contoso.com' -DomainJoinCredentials $domainCred
Файл ответов Windows со статическими IPv4-адресами
В следующих командах создается файл ответов Windows, использующий статические IP-адреса, предоставляемые диспетчером структуры, например System Center диспетчер виртуальных машин.
диспетчер виртуальных машин предоставляет три компонента статического IP-адреса с помощью пула IP-адресов: IPv4-адрес, IPv6-адрес, адрес шлюза и DNS-адрес. Если требуется включить или требовать настраиваемую конфигурацию сети, необходимо вручную изменить файл ответа, созданный скриптом.
На следующих снимках экрана показаны пулы IP-адресов, которые можно настроить в диспетчер виртуальных машин. Эти пулы необходимы, если вы хотите использовать статический IP-адрес.
В настоящее время функция поддерживает только один DNS-сервер. Вот как выглядят параметры DNS:
Ниже приведена сводка по созданию пула статических IP-адресов. Короче говоря, у вас должен быть только один сетевой маршрут, один шлюз и один DNS-сервер, и необходимо указать IP-адрес.
Необходимо настроить сетевой адаптер для виртуальной машины. На следующем снимку экрана показано, где задать конфигурацию и как переключить ее на статический IP-адрес.
Затем можно использовать -StaticIPPool
параметр для включения статических IP-элементов в файл ответа. Затем параметры @IPAddr-1@
@NextHop-1-1@
и @DNSAddr-1-1@
в файле ответа будут заменены реальными значениями, указанными в диспетчер виртуальных машин во время развертывания.
$adminCred = Get-Credential -Message "Local administrator account"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -StaticIPPool IPv4Address
Файл ответов Windows с пользовательским языковым стандартом
Следующие команды создают файл ответов Windows с пользовательским языковым стандартом.
При появлении запроса на ввод учетных данных администратора укажите нужное имя пользователя и пароль. Используйте "Администратор" для имени пользователя, если вы хотите настроить встроенную учетную запись администратора.
$adminCred = Get-Credential -Message "Local administrator account"
$domainCred = Get-Credential -Message "Domain join credentials"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -Locale es-ES
Базовый файл ответов Linux
Начиная с Windows Server версии 1709, вы можете запускать определенные гостевые оси Linux на экранированных виртуальных машинах. Если вы используете агент System Center диспетчер виртуальных машин Linux для специализации этих виртуальных машин, командлет New-ShieldingDataAnswerFile может создавать совместимые файлы ответов для него.
В файле ответов Linux обычно будут включены корневой пароль, корневой ключ SSH и при необходимости статические сведения пула IP-адресов. Замените путь к общедоступной половине ключа SSH перед выполнением скрипта ниже.
$rootPassword = Read-Host -Prompt "Root password" -AsSecureString
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -RootPassword $rootPassword -RootSshKey '~\.ssh\id_rsa.pub'