Automatisierte Erstellung von Citrix Provisioning Server VHDs/ VHDXs

In einem früheren Artikel habe ich schon mal im Zusammenhang mit Matrix42 Empirum die automatisierte Erstellung eine Citrix Provisioning Server VHD beschrieben, bei der keine Anbindung / dediziertes Mapping einer VHD (Inkl. Boot des Masters) nötig ist, um ein Image zu erzeugen.
In diesem Artikel befasse ich mich mit der neuen Funktion „Create an Image File“ im Imaging Wizard, die ebefalls die Erstellung einer VHD/VHDX in einem beliebigen Share erlaubt, ohne mit dem Provisioning Server verbunden zu sein, oder eine VHD gemappt zu haben.

2017-02-11 18_09_36-skyworker.docx - Word

Leider musste ich bei meinen Tests (mit der Version 7.12 und Windows Server 2012 R2) festsellen, das diese funktion nicht funktioniert. Die erzeugten VHD/VHDX Dateien konnten über den Imaging Wizard erstellt und im Provisioning Server eingebunden werden, aber leider starteten alle VMs mit dieser Disk immer in einen Blue Screen.

Die Option „Create an Image File“ im Imaging Wizard funktionierte nur, wenn das System zuvor einmalig mit einer angehängten VHD gebootet wurde.

Also machte ich mich auf die Suche was der unterschied bei einem frisch aufgesetzten System und einem System, das einmalig mit einer angehängten VHD gebootet wurde, war. Fündig wurde ich in der Registry. Hier wurden diverse Storage und Treiber Einträge erzeugt.

Diese Einträge extrahierte ich und injizierte sie in einem neu aufgesetzten System. Die VMs, die von diesem System ein VHD/VHDX Image nutzten starteten jetzt ohne BlueScreen ganz normal.

Anbei die extrahierten Registry Einstellungen. Diese habe ich mit Windows 7 und Windows Server 2012 R2 erfolgreich testen können.

[ddownload id=“1970″]

 

Verfahren für ein automatisiertes Abziehen, über ein Skript, oder eine Software Deployment Lösung:

Hinweis: Einmalig muss eine initiale VHDX Datei über den Imaging Wizard erzeugt werden (Create a vDisk) ca. 36 MB groß. Diese Datei kann dann immer wieder als Vorlage verwendet werden.

1. Die oben beschriebene VHDX Datei in ein Share kopieren und mit einem entsprechenden Namen versehen

2. Danach die oben beschriebenen Registry Keys dem Mastersystem injizieren

3. Die zuvor kopierte VHDX Datei über den folgenden Befehl verbinden

call „%ProgramFilesDir%\Citrix\Provisioning Services\CVhdMount.exe“ -p 1 „%VM_VHD_PATH%x“

4. Das Image wird dann über den folgenden Befehl erzeugt

call „%ProgramFilesDir%\Citrix\Provisioning Services\p2pvs.exe“ p2pvs C:\ /AutoFit

5. Die zuvor verbundene Platte über den folgenden Befehl wieder trennen

call „%ProgramFilesDir%\Citrix\Provisioning Services\CVhdMount.exe“ -u 1

 

3 Gedanken zu „Automatisierte Erstellung von Citrix Provisioning Server VHDs/ VHDXs“

  1. Hallo Zusammen,

    ich habe das mit Powershell ähnlich gelöst. Gibt es die Möglichkeit oder einen Schwitch, damit ich eine Rückmeldung bekomme, wenn die p2pvs.exe durchgelaufen ist? Also wenn die vDisk fertig ist

    #vDisk abziehen
    Write-Host „vDisk von diesem Master mit der Bezeichnung $vDiskName abziehen.“ -ForegroundColor Green
    Write-Host „Dauer ca. 40 Minuten.“ -ForegroundColor Yellow
    $Bef = „C:\program Files\Citrix\Provisioning Services\p2pvs.exe“
    $arg = “ p2pvs C: /AutoFit /L“
    $Prms1 = $arg.Split(“ „)
    & „$Bef“ $Prms1

    Antworten
    • Hallo SK,

      zum einen kannst du über den Errorlevel prüfen, ob die Erstellung erfolgreich durchgelaufen ist (0 = Success), oder du liest das p2pvs Log unter …\ProgramData\Citrix aus.

      Gruß Marco

      Antworten

Schreibe einen Kommentar