Tworzenie dysków wirtualnych VHD i VHDX przy wykorzystaniu narzędzia Convert-WindowsImage.ps1

Ostatnio miałem przyjemność korzystać z najnowszej wersji skryptu Convert-WindowsImage.ps1 którego wersja 6.3 została udostępniona 26 grudnia 2013 roku w Microsoft Script Center.

W najnowszej wersji dodano możliwość utworzenia dysków wirtualnych wykorzystywanych przez maszyny drugiej generacji (Generation 2 VMs).
Więcej o maszynach wirtualnych drugiej generacji można przeczytać na blogu produktowym pod adresem:

http://blogs.technet.com/b/jhoward/archive/2013/10/24/hyper-v-generation-2-virtual-machines-part-1.aspx

Dzięki skryptowi możemy utworzyć dyski VHD oraz VHDX z gotowymi do użycia systemami operacyjnymi.
Dodano obsługę nowych systemów, takich jak:

  • Windows 8
  • Windows 8.1
  • Windows Server 2012
  • Windows Server 2012 R2

Dysk tworzymy na podstawie pliku źródłowego którym może być plik ISO lub WIM z jednym z w/w systemów operacyjnych lub z Windows 7/2008/2008R2.

Uruchamianie skryptu

Aby uruchomić skrypt należy upewnić się, czy w PowerShell mamy ustawioną “ExecutionPolicy” na “RemoteSigned”, w przeciwnym razie należy ustawić ją na taką wartość.

image

Skrypt uruchamiamy z poziomu klasycznej konsoli PowerShell. Dla osób mniej obytych z językiem PowerShell dostępne jest proste graficzne okno. Z jego poziomu możemy utworzyć dysk tylko dla pierwszej wersji maszyny wirtualnej.

Interfejs graficzny

Do uruchomienia graficznej konsoli służy przełącznik –ShowUI

image

W oknie mamy możliwość wskazania pliku źródłowego oraz wersji systemu operacyjnego jaki znajduje się źródle:

image

Oraz parametrów obrazu:

image

Nazwa obrazu jak i wskazanie pliku instalacji nienadzorowanej jest jak widać opcjonalne. W przypadku nie podania nazwy obrazu, nazwa zostanie wygenerowana automatycznie a dysk utworzony we wskazanym “Working Directory”. Jeśli chcemy wskazać nazwę obrazu, należy użyć nazwy oraz pełnej ścieżki np.: D:TestWindows.vhdx. Po podaniu ścieżki do pliku, parametr “Working Directory” zostanie pominięty. Jeśli podamy samą nazwę obrazu bez ścieżki, dysk zostanie utworzony w katalogu z poziomu którego uruchamiany jest skrypt.
Na koniec zostaje już tylko wciśnięcie przycisku i oczekiwanie na zakończenie działania skryptu:

image

Po kliknięciu przycisku okno zniknie a postęp pracy skryptu należy obserwować w konsoli PowerShell.

Poniżej podsumowanie wyżej opisanej operacji:

image

Uruchomienie z PowerShell

Skrypt oczywiście możemy uruchomić “klasycznie” podając odpowiednie parametry w konsoli PowerShell.

Poniższa komenda utworzy dysk VHDX z systemem operacyjnym gotowym do wykorzystania w drugiej generacji maszynie wirtualnej. Dodatkowo zostanie włączony dostęp RDP, ale UWAGA! konfiguracja Firewall nie zostanie zmieniona.

.Convert-WindowsImage.ps1 -SourcePath .en_windows_server_2012_r2_x64_dvd_2707946.iso '

-VHDPath "D:TestWindows_Server_2012_R2_v2.vhdx" -SizeBytes 60GB '

-VHDFormat VHDX -VHDType Dynamic -Edition ServerDatacenter '

-VHDPartitionStyle GPT -RemoteDesktopEnable -Verbose

Poniżej log z tworzenia powyższego dysku VHDX:

image

Skrypt zawiera rozbudowaną pomoc, aby z niej skorzystać wystarczy użyć polecenia Get-Help:

image

Podsumowanie

Tak utworzone dyski wirtualne możemy podpiąć bezpośrednio do maszyny wirtualnej, bądź też, wykorzystać je jako dyski wzorcowe i do nich odwoływać się przy tworzeniu obrazów dyferencyjnych.

Więcej informacji o skrypcie i sam skrypt znajduje się pod poniższym adresem:

http://gallery.technet.microsoft.com/scriptcenter/Convert-WindowsImageps1-0fe23a8f

It's only fair to share...Share on Facebook
Facebook
0Share on Google+
Google+
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin