Blog (65)
Komentarze (4.7k)
Recenzje (2)

Matrioszka, czyli Hyper-V pracujący pod kontrolą VMware Workstation

Strona główna@bachusMatrioszka, czyli Hyper-V pracujący pod kontrolą VMware Workstation
05.10.2015 03:03

[img=Matrioszka]

Dzisiejszy wpis będzie dość hermetyczny, ale może kogoś zainteresuje - dotyczy on konfigurowania domowych "labów" i jednego z problemów z którym można się spotkać. Nie będę tu opowiadać, jak ważnym dla administratorów jest zagadnienie wirtualizacji - wszystko jest teraz do obrzydzenia "chmurą" i już nawet firmowa serwerownia to "private cloud" - sorry, taki mamy klimat... Z ostatnich tego typu smaczków językowych z jakim się spotkałem jest ten wymyślony przez CISCO w postaci "fog computing". Prawie tak dobre, jak ich akronimy technologii, które powstają od akronimów innych technologii... czapki z głów.

Zdaję sobie sprawę, że większość z czytelników doskonale zna wirtualizację i wpisy z tym związane to dla nich nuda i prościzna - po około 15 latach doświadczenia z ESX i Workstation (VMware), oraz po kilku latach pracy z Hyper-V (Microsoft) i liźnięcie AIX (IBM) jeszcze sporo mnie potrafi zaskoczyć. Wiedzę zdobywa się najlepiej praktykując - nie każdy ma takie możliwości, aby oddelegować dedykowany komputer na serwer wirtualizacji, szczególnie gdy czasem ich trzeba posiadać kilka sztuk - np. w celu przećwiczenia konfiguracji klastrów:

[Klaster Hyper-V - źródło: Microsoft]
[Klaster Hyper-V - źródło: Microsoft]

W domu głównie korzystam z VMware Workstation. Używam tego hypervizora z kilku powodów:

bDYKTMcD

[item]uruchamia się na zwykłym OS (Windows/Linux) i nie trzeba dedykować dodatkowego komputera,[/item][item]przeogromne doświadczenie VMware w tym temacie,[/item][item]elastyczna konfiguracja hypervizora i maszyn wirtualnych,[/item][item]świetne opcje związane z migawkami, pracą z szablonami,[/item][item]opcje, których ciężko uświadczyć w desktopowym Hyper-V, albo np. VirtualBox,[/item][item]jest to po prostu dopracowany produkt i przy całym szacunku dla np. VirtualBox nie przejdzie tam np. "nested virtualization" (flaga VMX nie zostanie "przepuszczona do gościa), która jest tematem tego wpisu.[/item] W przypadku Microsoft i Hyper-V jest jeszcze ciekawiej - firma stara się wmówić, że jest inaczej, ale na dzień dzisiejszy raczej się nie da zmusić Redmontowego hypervizora do instalacji w nim np. drugiego Hyper-V:

[Microsoft: bajeczki z partner network]
[Microsoft: bajeczki z partner network]

Instalacja Hyper-V w VMware Workstaton

Podczas tworzenia nowej maszyny wirtualnej może już dać do myślenia wyraźne zaznaczenie w opcjach, że nie ma docelowo wsparcia dla Hyper-V, co jednak w teorii nie przeszkadza zainstalować zamiast tego Windows 2012 i dodać rolę hypervizora:

568147

Ten wpis nie jest poświęcony zarówno optymalizacji i konfiguracji VMWare, jak i Windows 2012, więc szczegóły samej instalacji ograniczę do minimum:

bDYKTMcJ

[item]Wybór miejsca składowania danych VM[/item][img=2_folderInstalacji]

[item]vHDD 120GB[/item](nie ma się co martwić o wielkość samego pliku, nie będzie zajmował więcej, niż 12-15GB):

568151
568152

Co do samego "sprzętu" maszyny wirtualnej: [item]x2 vCPU (można dać więcej, ale w tym przypadku nie ma uzasadnionej potrzeby,[/item][item]pamięc ustawiona na 6GB (też nie zajmie fizycznie 6GB hosta),[/item][item]CD-ROM: podmapowany obraz system opearcyjnego (instalacja z ISO),[/item]Można też usunąć zbędne składniki: wsparcie dla karty dźwiękowej i drukarki.

568154

[item]Instalacja Windows 2012R2 z GUI:[/item]

568156

[item]Po 4-5 minutach (tyle trwa instalacja Windows 2012 na dysku SSD) instalacja VMware tools:[/item][img=5_VMTools]

568158

Po instalacji aktualizacji (Windows Update) przyszedł czas na dodanie roli Hyper-V:

568160
568161

No i tu właśnie zaczyna się cały problem: system operacyjny dostał sygnał od hypervisora, że działa w środowisku wirtualnym. Jest to to dla zwirtualizowanego OS dość przydatna wiedza, ponieważ pozwala na inne zachowanie i optymalizację działania / licencjonowania w środowisku wirtualnym:

568163

Systeminfo (CMD -> systeminfo) w dwóch miejscach podaje tą informację:

568165

Nas bardziej interesuje ta na samym końcu wyniku polecenia:

bDYKTMcK
A hypervisor has been detected. Features for Hyper-V will not be displayed."
568168

Trzeba więc spróbować "wmówić" wirtualnej maszynie, że jednak można zrobić "Matrioszkę ". Najpierw przekazanie do gościa (systemu zwirtualizowanego), że jest zainstalowany na "fizycznej" maszynie i że to "wcale nie są vCPU". Tego nie wyklika się z GUI, trzeba dodać komendę do pliku konfiguracji. Szukamy pliku o rozszerzeniu .VMX - informację o jego położeniu można uzyskać w kilku miejscach panelu VMWare, np. po najechaniu na samą maszynę:

568170
568171

Plik zawiera szczegółowe informacje dotyczące konfiguracji. Na końcu wystarczy dopisać dodatkową zmienną:

bDYKTMcL
code=hypervisor.cpuid.v0 = "FALSE"
568174

Dodatkowo należy dodać opcję: "Virtualize Intel VT-x/EPT or AMD-V/RVI" :

vhv.enable = "TRUE"
bDYKTMcM

Odpowiada ona zaznaczeniu w GUI przy opcjach związanych z vCPU:

568178

Po ponowym uruchomieniu wirtualnej maszyny z Windows 2012 i wydaniu polecenia systeminfo zaczyna to już wyglądać trochę lepiej:

568180

Ponowna próba instalacji roli Hyper-V powinna nie sprawiać już problememów:

568182

Po restarcie systemu pozostaje nam tylko testowa instalacja maszyny wirtualnej, której hypervizorem jest zwirtualizowany Hyper-V pracujący pod kontrolą WMware Workstation uruchomionego na Windows 7 :-)

568184

Podsumowanie

Niektórzy może uznają taką konfigurację za herezje i sztukę dla sztuki, jednak jak wspomniałem na początku może mieć to większy sens. Idąc tym schematem można zamiast Hyper-V zainstalować np. VMware vSphere 6.0, Xen, czy inne środowisko wymagające w teorii środowiska maszyny fizycznej.

568187

W sytuacji, gdy temat wirtualizacji - np. optymalizacji VMware Workstation, organizacja labu, praca z szablonami i klonami może ułatwić życie ("linked-clone"), oraz jak np. zbudować działający klaster składający się z Hyper-V, kontrolera domeny i FreeNAS robiącego za CSVFS (iSCSI) jest dla Was ciekawy dajcie znać w komentarzach, chętnie o tym napiszę:

[Klaster Hyper-V - źródło: TechNet]
[Klaster Hyper-V - źródło: TechNet]

Wycinek z jednego z moich labów (mając przygotowany wcześniej szablok W2012 do zrobienia w godzinę:

568191
568192
568193
bDYKTMdz