Wer den Virtual Machine Manager aus System Center 2012 einsetzt, sollte sich daher sinnvollerweise mit den Templates beschäftigen. Ein Standard VM Template besteht aus folgenden Komponenten:
-
VHD Image
-
Guest OS Profile
-
Hardware Profile
Weitere Details zu den verschiedenen Profilen finden Sie in Beiträgen auf dem Blog Server Talk. Nachfolgend es geht es darum, wie ein VM Template erstellt und mittels Guest OS Profile weiter optimiert werden kann.
Ein VM-Template erstellen
Am einfachsten können Sie ein Template erstellen werden, indem eine existierende VM als Referenz verwendet wird. Das bedeutet, generell erforderliche Installationen, Konfigurationen, Updates werden bereits im Template abgebildet, damit diese nicht für alle Installationen (nochmals) separat durchgeführt werden muss. Was sich generell empfiehlt in einem Master Image abzubilden:
-
Neueste Version der Hyper-V Integration Services;
-
Letzte Windows Updates;
-
Abhängen von ISO-Images (sofern nicht benötigt);
-
Defragmentierung des C:\ Laufwerk;
Sind alle Vorbereitungen getroffen, kann der Prozess, wie folgt, in der Virtual Machine Manager Admin Console angestoßen werden. Da die VM mittels sysprep /generalize zum VM Template "umgewandelt" wird, können einige Benutzerspezifische Einstellungen verloren gehen. Es empfiehlt es sich daher vorher ein "Clone" anzulegen, damit einfach wieder auf das Master Image zurückgegriffen werden kann.
-
In die "VM and Services" Ansicht wechseln;
-
Herunterfahren der Referenz VM;
-
Die Referenz VM selektieren und ein Clone erstellen, Ribbon/Create/Clone;
-
Aus dem neuen Clone das VM Template erzeugen, Ribbon/Create/Create VM Template;
-
Dadurch wird der entsprechende Wizard gestartet;
Wie zuvor erwähnt, führt der "Create Template"-Vorgang ein sysprep /generalize in der VM durch, dazu wird diese VM wieder kurz gestartet. Anschließend wird das VHD Image in die Library verschoben und zum VM Template hinzugefügt. Je nach Größe des VHD Image kann dieser Vorgang etwas länger dauern.
Anpassungen vornehmen
Damit das VM Template flexibel eingesetzt werden kann, also damit die Betriebssystem Installation ohne zusätzliche Eingaben durchgeführt wird, sind noch zwei - drei kleine Anpassungen im OS Profil notwendig:
-
In die "Library" Ansicht wechseln;
-
Die Properties des zuvor erstellten VM Templates öffnen, Templates/VM Template;
-
Im "OS Configuration" Tab die Werte unter General Settings anpassen;
-
Mit Save As kann die Konfiguration als Guest OS Profile gespeichert werden, zum Beispiel für weitere Templates;
Unter "General Settings" werden entsprechende Angaben zum Betriebssystem vorgenommen wie zum Beispiel in folgender Tabelle.
Parameter |
Möglicher Wert |
Operating System |
64-bit edition of Windows Server 2012 Datacenter |
Identity Information |
Computer Name (* generiert ein Zufallsname) |
Admin Password |
Run-As Account für lokales Administrator Passwort |
Product Key |
48HP8-DN98B-MYWDG-T2DCC-8W83P (KMS Setup Key) |
Time Zone |
GMT +01:00 |
Domain |
Domain Name Account für Domain Join |
Die Optionen für Roles" und "Features stehen beim Standard VM Template nicht zur Verfügung. Diese kommen nur bei den Service Templates zum Zuge.
Das VM Template optimieren
Wie kann nun das VM Template noch weiter verbessert werden? Hier kommt wieder das Guest OS Profile ins Spiel. Mit den Optionen Answer File und [GuiRunOnce] können weitere hilfreiche Konfigurationen des Betriebssystems definiert werden. Da nicht sämtliche Optionen im UI abgebildet wurden, kann ein Profil mittels (Standard) Answer File erweitert werden. Ein solches kann zum Beispiel mittels WAIK (oder neu ADK) erstellt werden.
Nachfolgend ein einfaches Beispiel eines solchen XML:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<UserLocale>de-CH</UserLocale>
<InputLocale>de-CH</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UILanguageFallback>en-US</UILanguageFallback>
</component>
</settings>
</unattend>
Solch ein Answer File kann natürlich um viele weitere Funktionen erweitert werden. Damit dies im Profil oder Template eingebunden werden kann, muss das XML File lediglich in der VMM Library abgelegt werden. Ab dem nächsten Library Refresh steht dies bereits zur Verfügung.
Anstelle eines dedizierten XML kann eine solche Erweiterung auch mittels PowerShell direkt dem VM Template hinzugefügt werden:
$MyTemplate = Get-SCVMtemplate "MyWS2012"
$MySettings = $MyTemplate.UnattendSettings
$MySettings.Aadd("oobeSystem/Microsoft-Windows-International-Core/UserLocale","de-CH")
$MySettings.Add("oobeSystem/Microsoft-Windows-International-Core/SystemLocale","en-US")
$MySettings.Add("oobeSystem/Microsoft-Windows-International-Core/UILanguage","en-US")
$MySettings.Add("oobeSystem/Microsoft-Windows-International-Core/InputLocale","de-CH")
Set-SCVMTemplate -VMTemplate $MyTemplate -UnattendSettings $MySettings
Natürlich können viele weitere Anpassungen so vorgenommen werden. Wird ein Answer File geladen, werden die zuvor geladenen Einstellungen allerdings wieder überschrieben. Weitere Informationen zum Thema finden Sie in Microsofts TechNet und zwar bei How sysprep works und How to Create a Virtual Machine Template. (mje)
Dieser Artikel basiert auf einem Beitrag des Blogs Server Talk . Dieses und weitere Blogs finden Sie auch auf Microsofts TechNet .