"Сердце" PDT - Variable.xml (часть 2)

Продолжим изучение Variable.xml.

В комплекте PDT идут 2 Variable.xml файла, один для установки в существующее AD, другой для создания разворачивания с нуля.

На практике, чтобы превратить один в другой достаточно добавить (или убрать) кусок xml файла где описывается домен:

contoso.com Users Groups

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

Если какую-то машину необходимо сделать машиной первого поколения внутри тега машины необходимо вставить “1”. Не забудьте указать ему отдельный родительский диск (тк виртуальные машины первого поколения не могут грузиться с iSCSI):

Имя 1 путь до vhd(x) Differencing Как разместить виртуальную машину на другом хосте: имя хоста Словом \_все\_ что идет внутри тега можно изменить для каждой конкретной виртуальной машины. **Немного мыслей про SQL:** Если Вы хотите развернуть какую-то роль на существующем SQL сервере: Если Installer.ps1 или VMCreator.ps1 при проверке ругаются, что порт не задан, его можно задать добавив Port="number" в описание инстанса: <Instance Server="SQL-01.contoso.com" Instance="MSSQLSERVER" Version="SQL Server 2012″ Port="number"> Если Вы хотите развернуть какую-то роль на кластере SQL Вам необходимо добавить к описанию роли SQLCluster="True": И соответственно заполнить описание компонентов роли SQL: <Cluster Cluster="SQL-01.contoso.com" Version="SQL Server 2012″ - и поправить эти пути на кластерные <Variable Name="SQLClusterIPAddress" <Variable Name="SQLClusterIPAddress" Value=""IP /> <Variable Name="SQLClusterNetwork" Value="Cluster Network 1″ /> <Variable Name="SQLClusterSubnet" Value="Subnet"/> <Node Server="FQDN" Preferred "1"></Node> <Node Server="FQDN" Preferred "2"></Node> Но это только пол пути 😉 После создания виртуальных машин, Вам нужно остановить Installer.ps1 на домен контроллере,создать руками Failover Cluster, создать сетевые шары для него, настроить file share witness, дать кластерному аккаунту доступ Full Control в OU кластера и объекты в этом OU (или Full Control на OU и VCOCNO), дать ему и аккаунту инсталлера полный доступ на сетевые и кластерные "шары" и после этого запустить Installer.ps1 заново. В случае установки SCOM DB и SCOM DW DB на кластер необходимо устанавливать их на одну и ту же ноду кластера (это ограничение SCOM), а для установки репортинга на этот же SCOM, необходимо ставить его на ту же ноду где уже находится SCOM Management сервер. Те указать просто тот же сервер (не ноду и не кластер): **Несколько случайных мыслей:** - Ключ "WindowsAzurePack2013ConfigStorePassphrase", который используется для задания фразы пароля в Windows Azure Pack, не понимает символа _; - SCCM не может быть установлен на SQL с включенными динамическими портами; - В случае если при валидации конфигурации выдается ошибка можно проверить Variable.xml загрузив его в Powershell $Variable = \[XML\] (Get-Content .Variable.xml). Powershell сообщит на какой строке ошибка; - При указании NETBIOS имени домена для добавления машин, машины могут не проходить фазу Specialize бесконечно пытаясь вступить в домен; - В случае проблем с unattend.xml проще всего искать причины на самой виртуалке нажав Shift+F10, и далее через блокнот. %windir%Panther и %windir%PantherUnnatendGC файлы setupact.log и setuperr.log. Unnattend.xml в папке %windir%Panther; - При создании виртуальных машин из файла Variable.xml с не доменной рабочей станции и без создания домена виртуальные машины могут не проходить фазу OOBE из-за того, что в unnattend.xml, в качестве одного из администраторов операционной системы, будет указан пользователь запустивший скрипт, и, естественн,о он не будет добавлен, так как не будет найден. Workaround - затереть кусок кода, который добавляет это в unattend.xml в скрипте VMCreator.ps1 (1437 строка, кусок после $env:UserDomain -ne $InstallerServiceAccountDomain, необходимо стереть все после @" и до "@): If ($env:UserDomain -ne $InstallerServiceAccountDomain) { @" "@ | Out-File "$Drive\`:unattend.xml" -Append -Encoding ASCII В последнем из запланированных постов я расскажу в общем о процессе развертывания и подкину еще пару мыслей на тему PDT. ПС. Наткнулся тут на интересный пост о PDT. [Создание среды для лабораторных работ](http://social.technet.microsoft.com/wiki/contents/articles/22048.creating-system-center-vms-using-pdt-for-hybrid-scenario.aspx) по гибридному облаку (http://aka.ms/hybridlabs).
Written on June 20, 2014