Een overzicht van Hyper-V (Jaap Wesselius) - IT-professional Community Blog
Zoeken binnen blogs.microsoft.nl

IT-professional Community Blog

Een overzicht van Hyper-V (Jaap Wesselius)

May 18 2008, 12:49 PM

De geschiedenis van virtualisatie binnen Microsoft gaat terug naar begin 2003 als Microsoft Connectix Virtual PC overneemt. Al snel wordt dit product Microsoft Virtual PC en in juli 2004 komt Microsoft met Virtual Server 2005. Beiden producten worden doorontwikkeld tot Virtual PC 2007 en Virtual Server 2005 R2. Zowel Virtual PC als Virtual Server zijn een emulatieproduct. De Virtual Machines die beide varianten bedienen maken 100% gebruik van emulatie hetgeen beide producten minder geschikt maar voor een zware workload.

Met de komst van Windows Server 2008 heeft Microsoft ook een Hypervisor Virtualisatie pakket genaamd Windows Server 2008 Hyper-V. Een Hypervisor is een dunne laag software die tussen de fysieke hardware en het besturingssysteem wordt geïnstalleerd. De omvang van de Hypervisor is niet groot, in het geval van Hyper-V is dit zelfs minder dan 1 MB. De Hypervisor zorgt voor de verdeling van de resources over de verschillende Virtual Machines op de betreffende server.

Als eerste wordt Windows geïnstalleerd op “Designed for Windows” hardware. Deze hardware moet aan een aantal eisen voldoen:

· De hardware moet 64-bits zijn (X64, geen Itanium);

· De processor moet of Intel VT of AMD-V enabled zijn;

· NoExecute bit moet in BIOS enabled worden;

Een volledige lijst kan gevonden worden op de Windows Server Catalog

Daarnaast moet de X64 versie van Windows Server 2008 gebruikt worden, een X86 (32-bits) versie van Hyper-V is niet beschikbaar.

Zodra Windows Server 2008 volledig is geconfigureerd kan Hyper-V geïnstalleerd worden. Hyper-V is binnen Windows Server 2008 een role. Deze wordt derhalve via de Server Manager via de optie “Add Role” geïnstalleerd. Aangezien Hyper-V tussen het besturingssysteem en de hardware wordt geïnstalleerd is een reboot van Windows Server 2008 noodzakelijk.

Na de reboot zijn er een aantal zaken wezenlijk veranderd. De reeds geïnstalleerde versie van Windows Server 2008 is nu ook een Virtual Machine geworden. Deze Virtual Machine wordt de “parent partition” genoemd. Vanuit deze Parent Partition worden de overige Virtual Machines aangestuurd, deze worden “child partition” genoemd. Het moge duidelijk zijn dat de Parent Partition extra beveiliging nodig heeft door deze verandering. Het beste is om op de Parent Partition geen applicaties te installeren, maar de Parent Partition moet bijvoorbeeld ook niet voor Internet browsen gebruikt worden. Het beste alternatief is om voor de Parent Partition Windows Server 2008 Server Core te gebruiken. Dit is een “uitgeklede” versie van Windows Server 2008 waarop ook de Hyper-V role geïnstalleerd kan worden. Omdat deze versie van Windows Server 2008 veel minder functionaliteit heeft is de attack surface ook veel kleiner geworden en het risico op besmetting van buitenaf ook veel minder.

Binnen de Parent Partition wordt bij de installatie van Hyper-V ook een Virtual Storage Provider of VSP geïnstalleerd. Dit is als het ware een multiplexer die de communicatie tussen de Child Partitions en de fysieke hardware coördineert. Een Child Partition met Windows Server 2008 of met Windows Server 2003 SP2 maakt gebruikt van een Virtual Storage Client ofwel VSC. De VSC communiceert met de VSP over de nieuwe VMBus. Dit is een point-to-point in memory bus waarmee een Child Partition met een Parent Partition communiceert. Hiervoor zijn nieuwe “synthetic drivers” door Microsoft geschreven. Zowel de VSP, de VSC als de VMBus draaien in de kernel mode van Windows Server 2008 waardoor deze opzet extreem snel is.

Oudere besturingssystemen als Windows Server 2000 en Windows NT4 maken geen gebruik van deze VMBus techniek. Om deze toch goed te laten functioneren wordt standaard hardware geëmuleerd zoals een 440-chipset moederbord, een Adaptec SCSI Controller card en een DEC Ethernet controller. Deze hardware wordt door 95% van de beschikbare besturingssystemen herkend en er zijn ook voldoende drivers voor beschikbaar.

Deze hardware wordt geëmuleerd door de VMWorker processes in de Parent Partition. Voor elke Virtual Machine draait een apart VMWorker process. De VMWorker processen draaien echter in User Mode op Windows Server 2008. Dus naast het emuleren van de hardware zal er bij communicatie tussen het betreffende Child Partition en de VMWorker process ook “context switching” (communicatie tussen kernel en user mode) plaats moeten vinden en dat kost relatief veel processor kracht. Dit is de reden dat emulatie veel minder effectief is dan de nieuwe VMBus structuur.

Hyper-V werkt niet alleen goed met Windows Child Partitions, ook Linux wordt geschikt gemaakt voor Hyper-V. Een Xen-enabled Linux kernel kan gebruik maken van nieuwe Integration Components welke door Microsoft beschikbaar zijn gemaakt. Met deze Integration Components kan ook de Linux Child Partition gebruiken maken van een de VSC’s en de VMBus structuur. Voorlopig is dit echter alleen te gebruiken voor SUSE Linux. Andere Linux Virtual Machines zullen gebruik moeten maken van de emulatietechniek.

Windows Server 2008 Hyper-V is uitermate geschikt om in een high-available omgeving te draaien. Voor een High Available omgeving wordt gebruik gemaakt van de fail-over cluster mogelijkheden van Windows Server 2008. De Virtual Machine bestanden worden in een fail-over cluster op een shared storage geplaatst. Dit kan een iSCSI of een fiber channel oplossing zijn. Bij een fail-over wordt de Virtual Machine tijdelijk opgeslagen (save) en wordt het .VHD bestand afgesloten. Dit wordt naar de andere node gebracht en vervolgens opnieuw opgestart. Dit proces duurt van enkele seconden tot een halve minuut, afhankelijk van de hoeveelheid geheugen van de Virtual Machine en de snelheid van de storage backbone. Dit gehele process wordt “quick migration” genoemd.

Windows Server 2008 Hyper-V is een onderdeel van de virtualisatielijn van Microsoft. System Center Virtual Machine Manager 2008 is de applicatie die samen met Hyper-V ingezet kan worden. Met VMM 2008 is het mogelijk om

· Een library met VM images te maken;

· Host configuratie te doen;

· P2V en V2V te doen;

· Powershell scripting toe te passen (erg krachtig!);

· “Delegation of Control” toe te passen.

De meest krachtige optie van VMM 2008 is om naast Hyper-V servers en fail-over clusters ook VMWare VI3 server volledig te beheren!

Zowel Windows Server 2008 Hyper-V als Virtual Machine Manager 2008 zullen in de tweede helft van 2008 op de markt gaan komen. Ga gerust eens aan de slag in een test omgeving met Hyper-V en kom zelf achter de bijzonder krachtige mogelijkheden van Hyper-V.

Meer informative over Hyper-V:

· Windows Virtualization Team Blog: http://blogs.technet.com/virtualization/

· Microsoft Virtualzation: http://www.microsoft.com/virtualization

· Nederlandse Virtualisatie site: http://www.hyper-v.nu

 

Jaap Wesselius is een MCSE, MCT en MVP (Exchange Server). Hij is werkzaam bij DM consultants (www.dm-consultants.nl)

Commentaar:

Michiel zei:

Helemaal eens met Grimson!

Goed en duidelijk stuk, en ja, ook ik ben er nog niet aan toegekomen, dus komt mooi uit. :)

# May 28, 2008 6:01 PM

Erik zei:

Begrijp ik goed dat Hyper-V geen mogelijkheid kent om een VM van de ene fysieke server naar de andere te verplaatsen **zonder downtime** van de VM. VMware HA Clusters, wat volgens mij lijkt op "quick migration" maar VMware kent ook VMotion, waarbij dit **zonder downtime** van de VM's gaat.

# June 5, 2008 2:04 PM

Jaap Wesselius zei:

@Erik,

ja, Hyper-V kent voorlopig niet de mogelijkheid van een "live migration". Dit zal in de toekomst ook wel komen, in de nieuwe Virtual Machine Management 2008 zit bijvoorbeeld "inteligent placement" van VM's, als je deze lijn doorhaalt dan zie je vrij snel hoe het er uit gaat zien.

Groetjes

Jaap Wesselius

# June 23, 2008 7:08 AM

Janno Hordijk zei:

Geachte heer Wesselius,

ik heb uw emailadres gekregen van mijn neef Michiel Hordijk die mij heeft geadviseerd u te benaderen.

Het gaat om het volgende probleem, ik heb een Xeon server met Windows 2008 server die draait met Hyper-V. Daarbinnen twee virtuele servers, ééntje met SBS 2003 R2 en de andere met Windows 2003 Server met Terminal Server.

Deze configuratie draait op zich naar behoren maar eens in de paar dagen crasht de spoolsvc (windows print spooler). Ondanks vele pogingen dit probleem op te lossen krijg ik deze bottleneck niet opgelost. Ik ben bij met alle Windows Updates, de printer

drivers zijn allemaal digitaal ondertekend en met up to date printerdrivers.

Heeft u wellicht een hint die me de juiste richting op zou kunnen sturen?

Alvast hartelijk dank voor uw eventuele hulp in deze.

--

Met hartelijke groet,

Janno Hordijk

# July 8, 2008 1:36 PM

IT-Professional Community Blog zei:

Mijn vorige blogpost over het installeren van Microsoft’s Hyper-V Server 2008 was een lap tekst met plaatjes

# November 18, 2008 10:55 PM
Wat denkt u?

(Verplicht) 

(Verplicht) 

(Optioneel)

(Verplicht) 
CaptchaCube Vraag:


Antwoord: