Articles

Hyper-V VM-ek telepítésének lépései VMware ESXi szerveren

A mai modern hypervisor-rendszerek tetején számos nagyszerű dologra van lehetőség, amelyek nagyszerű lehetőséget nyújtanak az üzleti problémák és technikai kihívások megoldására. Az egyik igazán szép dolog, amit a mai hypervisorokkal, például a VMware vSphere-rel megtehet, az az, hogy beágyazott virtualizációt konfigurálhat. Ez számos különböző lehetőséget nyit meg a VMware vSphere-en belüli hipervizorok tesztelésére és futtatására.

A VMware vSphere-en belüli egymásba ágyazott virtualizáció futtatásának gyakori felhasználási esete sokak szerint a Microsoft Hyper-V hipervizorának futtatása tesztelési és tanulási célokra.

Ebben a bejegyzésben megnézzük az egymásba ágyazott Hyper-V VM-ek konfigurálását egy VMware ESXi szerveren, és megnézzük, hogyan konfigurálható ez laboratóriumi vagy egyéb környezetben való használatra.

Mi az a beágyazott virtualizáció

Mielőtt belemerülnénk abba, hogyan konfigurálhatjuk a VMware vSphere-t a Hyper-V beágyazott virtualizációjának ESXi szerveren belüli engedélyezéséhez, nézzük meg, mi is pontosan az a beágyazott virtualizáció. Amikor az egymásba ágyazott virtualizációra gondolunk, akkor egy hipervizornak egy hipervizoron belüli futtatásáról beszélünk. Ez azt jelenti, hogy az 1. típusú hipervizorokat, például a VMware vSphere ESXi-t és a Hyper-V-t futtathatjuk egy VM-en belül, jelen esetben a VMware vSphere ESXi tetején.

A VMware vSphere ESXi kiszolgáló tetején lévő VM-ben futó hypervisor egyszerűen a VM hardverét tekinti a fizikai gazdahardverének, amelyen vendég virtuális gépeket futtathat. Ez lehetővé tesz néhány nagyon érdekes forgatókönyvet, amikor a VMware vSphere környezetet más hypervisorok, például a Microsoft Hyper-V fogadására használja.

A VMware vSphere kapcsán fontos megjegyezni, hogy más hypervisorok, például a Hyper-V beágyazott virtualizálása a vSphere VM-en belül nem támogatott forgatókönyv. Nem csak a VMware vSphere-en kívüli más hypervisorokról van szó. Még a fizikai ESXi host környezeten belül beágyazott ESXi futtatása sem támogatott. Ezt a VMware hivatalosan is megjegyzi a KB cikkben Support for running ESXi/ESX as a nested virtualization solution (2009916).

A következő konfigurációk technikailag lehetségesek, amikor a VMware ESXi más VMware hypervisor termékeken belül fut, de nem támogatott. Ide tartoznak a következők.

  • VMware ESXi/ESX futtatása VMware Workstationben vagy VMware Fusionben
  • VMware ESXi/ESX futtatása VMware ESXi/ESXben
  • VMware ESXi/ESX futtatása más, harmadik féltől származó hypervisor megoldásokban

A Hyper-V futtatása természetesen ugyanilyen típusú támogatási kizárás alá esik. Egyetlen olyan helyzet van, amikor a beágyazott virtualizáció támogatott, és ez a beágyazott vSAN Witness Appliance.

A vSAN Witness Appliance ezen támogatott felhasználási esetén kívül a beágyazott virtualizáció nem támogatott a termelési környezetben. Más szóval, ha problémákba ütközik a beágyazott virtualizáció használatával, akkor a támogatással magára marad.

Ha megérti az egymásba ágyazott virtualizációval kapcsolatos támogatási forgatókönyvet, akkor ez egy nagyszerű funkció, amelyet más célokra is felhasználhat. Nagyon hatékonyan használható laboratóriumi környezetek, fejlesztői, tesztelési és más hasonló típusú forgatókönyvek esetén.

Miért futtatjuk a Hyper-V-t a VMware-en belül

Miért akarunk egy hipervizort egy másik hipervizoron belül futtatni? Pontosabban, miért szeretné a Hyper-V-t egy VMware ESXi VM-en belül futtatni? Mint már említettük, ez nem támogatott konfiguráció a termelési használathoz. A Hyper-V VMware-en belüli futtatása számos nagy előnnyel jár. Nézzük meg a következőket:

  • Labor környezetek
  • Nincs szükség további hardverre vagy hálózati eszközökre
  • Egyszerű Hyper-V hosztok üzembe helyezése és leszerelése

Labor környezetek

Ez vitathatatlanul a leggyakoribb felhasználási eset a Hyper-V hoszt VMware virtuális gépen belüli üzembe helyezésére. A beágyazott virtualizáció lehetővé teszi a laboratóriumi környezetek, a dev, a teszt és más lehetséges felhasználási esetek nagyon egyszerű provisionálását. A Hyper-V laborok felhasználhatók:

  • Tanulás
  • szoftvertesztelés
  • POC’ing Hyper-V az infrastruktúra különböző részeihez vagy helyettesítésére
  • Hyper-V környezet utánzása az infrastruktúra egy másik részében
  • Patch tesztelés

Sok kis és közepes méretű környezetben előfordulhat, hogy csak egy VMware vSphere környezet áll rendelkezésre, Hyper-V hostok nem. Ha a rendszergazdák a VMware ESXi hypervisoron kívül szeretnének egy Hyper-V állomáshoz jutni, hogy megtanulják és fejlesszék képességeiket, a VMware vSphere-ben található beágyazott virtualizációs képességek tökéletes lehetőséget nyújtanak egy Hyper-V állomás VMware vSphere-környezeten belüli rendelkezésre bocsátására.

Nem szükséges további hardver vagy hálózati eszközök

A Hyper-V VMware vSphere-en belüli beágyazásának ezen képességével nem szükséges további hardvert találni egy laboratóriumi környezethez vagy egyfajta POC-hoz. Mindez a vSphere-en belül biztosítható. A vSphere-ben található robusztus virtuális hálózati képességek lehetővé teszik az összes olyan speciális hálózat rendelkezésre bocsátását is, amelyre szüksége lesz, ha úgy dönt, hogy Hyper-V fürtöt hoz létre. Ezek közé tartozhatnak a Live Migration, a Storage és a Cluster hálózatok, hogy csak néhányat említsünk. A virtuális kapcsolóport-csoportok használatával könnyedén szimulálhatja azokat a konfigurációkat, amelyeket egyébként fizikai hálózati eszközökkel valósítana meg.

Egyszerű Hyper-V hosztok üzembe helyezése és leszerelése

Ez az előny nem csak az egymásba ágyazott virtualizációra jellemző, hanem általában a VMware vSphere virtualizációra. A VMware nagyon gazdag automatizálási eszközkészlettel rendelkezik, beleértve a PowerCLI-t is. Ez lehetővé teszi a VM-ek egyszerű felpörgetését és megsemmisítését szükség szerint. Egész laboratóriumi konstrukciókat lehet automatizálni a provisionáláshoz és a deprovisionáláshoz. Ez azt szolgálja, hogy a beágyazott virtualizáció még hasznosabbá váljon az infrastruktúra automatizálásának egyszerű lehetőségeivel.

A beágyazott Hyper-V VM-ek VMware ESXi szerveren való használatának követelményei

Amikor úgy döntött, hogy kihasználja a beágyazott virtualizációt, egyszerűen csak létrehozhat egy új VM-et a vSphere ESXi-ben, és elkezdheti betölteni a Hyper-V VM-et? Nos, nem egészen, azonban a folyamat még mindig nagyon könnyen használható, ha belegondolunk, hogy milyen hatalmas komplexitás szükséges a “motorháztető” alatt ahhoz, hogy a beágyazott virtualizáció valóban működjön. Igazából két fő területet kell figyelembe venni az egymásba ágyazott Hyper-V VM-ek VMware ESXi szerveren történő futtatásának követelményeivel kapcsolatban. Ezek közé tartozik:

  • A hardverrel támogatott virtualizáció feltárása a vendég operációs rendszer előtt
  • A MAC-cím hamisított átvitelének engedélyezése

Nézzük meg ezeket és jelentőségüket az egymásba ágyazott Hyper-V VM-ek VMware ESXi szerveren történő futtatása szempontjából.

A hardveres virtualizáció feltárása a vendég operációs rendszer előtt

Ezt az első követelményt feltétlenül szükségesnek fogja találni. Ez egy olyan beállítás, amely a Hyper-V telepítésnek otthont adó egyedi VM beállításai alatt található. Szerkessze a Beállítások szerkesztését a beágyazott Hyper-V VM-jén, bontsa ki a CPU-t, és tegyen egy jelölőnégyzetet az Expose hardware-assisted virtualization to the guest OS mellé.

Enabling hardware assisted virtualization in VMware for a Hyper-V VM

A hardverrel támogatott virtualizáció engedélyezése a VMware-ben egy Hyper-V VM számára

Mi történik, ha nem engedélyezi ezt a jelzőt a hardverrel támogatott virtualizációra a VMware-ben a Hyper-V VM számára? Nem fog hibát látni, ha egyszerűen telepíti a Windows Server operációs rendszert, mivel ez ugyanúgy fog működni, mint bármely más VM telepítése. Amikor azonban eljut a Hyper-V szerepkör telepítéséhez, hibát fog látni, ha ez a beállítás nincs engedélyezve a virtuális géphez. Vegye észre az alábbi hibát: “A Hyper-V nem telepíthető: A processzor nem rendelkezik a szükséges virtualizációs képességekkel”.

Mellékesen megjegyezzük, hogy ezt a jelzőt vagy a Hyper-V Core telepítéseknél, vagy a Windows Serverben telepített Hyper-V szerepkörrel és az Asztali élmény telepítésével kell beállítani. Ez a képesség a Hyper-V szerepkör VMware vSphere-en belüli bármilyen beágyazott telepítésénél szükséges.

Error installing the Hyper-V role when hardware virtualization flag is not set on the VMware VM

Error installationing the Hyper-V role when hardware virtualization flag is not set on the VMware VM

Erre a flagre egy kis PowerCLI kóddal is beállítható, amely lehetővé teszi a flag egyszerű beállítását a megadott VM-en.

$vmName = ‘MyHyperVVM’

$vm = Get-VM -Name $vmName

$spec = New-Object VMware.Vim.VirtualMachineConfigSpec

$spec.nestedHVEnabled = $true

$vm.ExtensionData.ReconfigVM($spec)

Promiscuous Mode és MAC Address Forged Transmits engedélyezése

Nagy valószínűséggel, ha egy Hyper-V beágyazott telepítést konfigurál a VMware vSphere-en belül, nem csak egy kiszolgálót szeretne telepíteni Hyper-V szerepkörrel, hanem egy beágyazott Hyper-V VM-et is szeretne futtatni a futtatott Hyper-V szerver tetején.

Elképzelhető, hogy nem érdekli a Hyper-V VM-hez való hálózati kapcsolódás képessége, azonban azt szeretné, ha a VMware virtuális gépben a beágyazott Hyper-V állomáson futtatott beágyazott virtuális gép tetején futó beágyazott virtuális géphez valódi hálózati kapcsolatot tudna létrehozni.

Ha ezt a funkciót szeretné, van néhány olyan hálózati konfigurációs beállítás, amelyet a VMware vSwitch-en, amelyhez a beágyazott Hyper-V állomás csatlakozik, el kell végeznie.

Ezekre azért lehet szükség, mert a VMware vSwitch technológiában és a beágyazott virtualizációban a VMware vSphere 6.7 kiadása óta új fejlesztés történt. A VMware vSphere ESXi 6.7 kiadása előtt a VMware nem valósította meg a MAC-tanulást a vSwitch-en úgy, ahogy az egy valódi fizikai kapcsolónál megtalálható. Ez sem a vSphere Standard Switchre, sem a vSphere Distributed Switchre nem volt igaz.

Mivel a vSphere 6.7 előtti VMware vSwitch esetében ez a helyzet, amikor egy virtuális kapcsoló olyan csomagokat kap, amelyek MAC-címe nem egyezik a beágyazott hypervisor hosztok vmnic pNIC MAC-címével (egy beágyazott ESXi host esetében), a csomagokat a rendszer eldobja.

Ez a korlátozás megkerülése érdekében két beállítást kell engedélyezni a vSwitch-en, a promiscuous mode-ot és a forged transmits-t.

Configuring Promiscuous mode and Forged transmits on a VMware vSwitch

Promiscuous mode és Forged transmits beállítása egy VMware vSwitch-en

Mi a helyzet a vSphere 6.7 és újabb verziókkal? A vSphere ESX 6.7 kiadása előtt a VMware megkezdte a munkát az egymásba ágyazott virtualizáció és a MAC-tanulási funkciók terén a virtuális kapcsolókkal kapcsolatban. Megjelent a “MAC Learning Fling”, amely bevezette a MAC learning funkciót, hogy ne kelljen engedélyezni a promiscuous módot és a hamisított átviteli beállításokat.

Ez a beállítás a VMware vSphere 6.7 ESXi kiadásával került bevezetésre.

Melyek az ESXi 6.7 új MAC-tanulási funkciójának követelményei?

Van néhány követelmény, amelyeknek teljesülniük kell ahhoz, hogy kihasználhassa a vSphere 6.7 új MAC-tanulási funkciójának előnyeit. Ezek a következők:

  • A vCenter Server és az ESXi kiszolgálók frissítése a vSphere 6.7-re
  • A vSphere Distributed Switch (vDS)
  • A vDS frissítése a legújabb verzióra (6.7.6)
  • Kezelés vSphere Distributed Switch portcsoportonként
  • A vSphere API-val

Egy dolgot kell megjegyezni: a vSphere 6.7 és a vDS 6.6 vSwitch új MAC Learning funkciója alapértelmezés szerint nincs engedélyezve. A zászlókat az API segítségével kell megfelelően beállítani.

Azért, hogy ez a folyamat sokkal egyszerűbb legyen, William Lam, a Staff Solution Architecture munkatársa írt néhány PowerCLI-funkciót, amelyekkel rendkívül egyszerűvé válik a MAC Learning állapotának ellenőrzése és a MAC Learning beállítása a vSphere-környezetben. Töltse le William PowerCLI szkriptjét a Github tárolójából itt:

https://github.com/lamw/vghetto-scripts/blob/master/powershell/MacLearn.ps1

A vSphere Distributed Switch Port Groupot ellenőrző Get-MacLearn funkció kimenete például az alábbiak szerint néz ki. Figyelje meg a mezőket:

  • MacLearning
  • NewAllowPrimiscuous
  • NewForged Transmits
  • NewMacChanges
  • Limit
  • LimitPolicy

Egy vDS 6.7 vSwitch portcsoport így néz ki alapértelmezett beállításokkal.

Checking the state of MAC Learning on a vSphere 6.7 vDS switch

A MAC Learning állapotának ellenőrzése egy vSphere 6.7 vDS switchen

A beágyazott ESXi telepítések, és ezen keresztül a vSphere ESXi hypervisoron belül futó Hyper-V VM-ek esetében a következő beállításokat kell megadnia:

  • MAC Learning: true
  • Promiscuous mode:
  • MAC Changes: True
  • MAC Changes: True
  • MAC Changes: False
  • Limit: 4096 (beállíthatja, vagy hagyhatja az alapértelmezett értéket)
  • Limit Policy: 4096 (beállíthatja, vagy hagyhatja az alapértelmezett értéket)
  • Limit Policy: 4096 (beállíthatja, vagy hagyhatja az alapértelmezett értéket)
  • Limit Policy: 4096 (beállíthatja):

A fenti ajánlások a következő PowerCLI kóddal állíthatók be:

  • Set-MacLearn -DVPortgroupName @(“DPG-Servers”) -EnableMacLearn $true -EnablePromiscuous $false -EnableForgedTransmit $true -EnableMacChange $false

Amint most várható, ahogy fentebb látható, a Promiscuous mód beállítása False-ra van konfigurálva. A Forged Transmit még a MAC Learning engedélyezése mellett is True értékre van állítva.

A vSphere 6.7-ben található MAC Learning funkció lehetővé teszi a vSphere 6.7 környezeten belül egy beágyazott VM futtatásának néhány biztonsági következményének elkerülését, mivel nem szükséges engedélyezni a Promiscuous mode-ot.

Elhelyezett környezetek biztonsági mentése?

Még ha a VMware vSphere csak a vSAN Witness appliance esetében támogatja a VMware vSphere által támogatott fektetett virtualizációt, ha a VMware vSphere ESXi rendszeren belül futtat fektetett Hyper-V VM-eket, érdemes biztonsági mentést készíteni a fektetett környezetről. Meg lehet ezt tenni?

Igen, feltétlenül.

Egy modern biztonsági mentési megoldás, például a Vembu BDR Suite használata lehetővé teszi, hogy ne csak a VMware vSphere vagy Microsoft Hyper-V termelési környezetéről készítsen biztonsági mentést, hanem a környezetében lévő ESXi vagy Hyper-V beágyazott telepítésekről is.

Összefoglalva

A VMware ESXi szerveren beágyazott Hyper-V VM-ek lehetőséget biztosítanak a Hyper-V-vel való játékra, még akkor is, ha csak VMware vSphere környezettel rendelkezik. Mint látható, az egymásba ágyazott virtualizációnak számos nagyszerű felhasználási esete van. Ide tartozik a tanulás, a szoftvertesztelés, a POC’ing és a Hyper-V hosztok foltozása.

Milyen erőteljes is az egymásba ágyazott virtualizáció a VMware vSphere-ben, azt várhatná, hogy a folyamat, amely lehetővé teszi, rendkívül bonyolult. Azonban csak néhány megfontolást igényel az Ön részéről a Hyper-V telepítést tartalmazó VMware vSphere VM rendelkezésre bocsátásakor. Ide tartozik a Hyper-V VM virtuális CPU-ján a hardveres virtualizációs jelző kitétele, valamint a promiscuous mód vagy a MAC Learning megvalósítása az esetlegesen beágyazott Hyper-V VM-ek hálózathoz való csatlakoztatásához.

Összességében a VMware ESXi kiszolgálón lévő, egymásba ágyazott Hyper-V VM-ek rendkívül hatékony képességet jelentenek, és lehetővé teszik a Hyper-V kipróbálását és megismerését a Hyper-V hipervizor futtatásához szükséges fizikai eszközök nélkül.

Kövesse Twitter- és Facebook-csatornánkat az új kiadásokért, frissítésekért, tanulságos bejegyzésekért és még sok másért.

Tetszik, amit olvas? Értékeljen minket