Automazione della creazione di VHD Template

Una delle prime operazioni da eseguire quando si decide di implementare il VDI o di eseguire il deploy di VM custom in Azure è quella di crearsi uno o più VHD template da cui poi creare le VM.

Per le linee guida relative la creazione di un’infrastruttura VDI basata su W8.1 si veda Build Virtual Desktop Templates e in particolare vengono fatte le seguenti raccomandazioni:

  • Configurare il virtual desktop template per l’utilizzo di almeno 1.024 MB di RAM Statica o Dinamica
  • Configurare il virtual desktop template in modo che abbia una connessione di rete verso la rete aziendale
  • Configurare il virtual desktop template in modo che esegua il join a dominio durante la creazione
  • Nel caso di un virtual desktop template per un’infrastruttura VDI basata su WS2012 R2 è supportato solo il formato VHD
  • L’immagine del sistema Windows 8.1 deve essere generalizzata tramite il Windows System Preparation Tool (Sysprep)
  • Il virtual desktop template può essere configurato come un disco differenziale
  • Il virtual desktop template può contenere più partizioni, ma solo un’immagine di sistema operativo

Per una serie di step by step relativi alla gistione del VDI collection in Windows Server 2012 R2 e sulle VM in Azure si vedano:

Per automatizzare la creazione dei template è possibile utilizzare lo script PowerShell Convert-WindowsImage.ps1 suggerito al seguente Deployment–Version 6.3 of Convert-WindowsImage.ps1 released e disponibile al seguente Convert-WindowsImage.ps1 — WIM2VHD for Windows 8 and Windows 8.1:

Convert-WindowsImage is the new version of WIM2VHD designed specifically for Windows 8 and above. Written in PowerShell, this command-line tool allows you to rapidly create sysprepped VHDX and VHDX images from setup media for Windows 7/Server 2008 R2, Windows 8/8.1/Server 2012/R2

Images created by Convert-WindowsImage will boot directly to the Out Of Box Experience, ready for your first-use customizations. You can also use these images for automation by supplying your own unattend.xml file, making the possibilities limitless. Fresh squeezed, organically grown, free-range VHDs – just like Mom used to make – that work with Virtual PC (Windows 7 only), Virtual Server (Windows 7 only), Microsoft Hyper-V, or Windows’ Native VHD-Boot functionality!

Convert-WindowsImage (just like its precessor, WIM2VHD tool) was originally created by Mike Kolitz (http://social.technet.microsoft.com/profile/mike kolitz) while he was a Microsoft Employee and worked on Windows. The tool is now maintained by his friends from Microsoft Consulting Services (MCS)

Per un  approfondimento sul procedimento che sta alla base dello script si veda il post How to Install an Image onto a VHD file.

Volendo è anche possibile utilizzare lo script tramite un’interfaccia grafica avviandolo con il seguente comando:

PowerShell .\Convert-WindowsImage.ps1 -ShowUI

Al momento lo script non supporta Windows 10, ma nelle Q and A alcuni utenti hanno dato indicazioni su come modificare lo script.