Hypervisors maken virtuele machines mogelijk, en ze zijn niet alleen meer voor servers. U gebruikt er waarschijnlijk elke dag een en weet het niet eens. Als u er nu geen gebruikt, doet u dat in de nabije toekomst.
Een hypervisor is software die buiten een gastbesturingssysteem bestaat om de opdrachten die naar de computerhardware worden gestuurd, te onderscheppen. De term “hypervisor” komt van de verschillende niveaus van de kernel van een besturingssysteem; het voert acties uit met meer autoriteit dan het “supervisorniveau”, dus hyper-vizier.
Afbeelding via striatic op Flickr
Hypervisor Basics
Een hypervisor is ook bekend als een Virtual Machine Manager (VMM) en het enige doel is om meerdere “machines” een enkel hardwareplatform te laten delen. Besturingssystemen zijn zo ontworpen dat ze een één-op-één-relatie hebben met de hardware waarop ze draaien, maar met multi-core, multi-threaded processors en belachelijke hoeveelheden RAM is het een fluitje van een cent om meerdere tegelijk te draaien.
De hypervisor scheidt het besturingssysteem (OS) van de hardware door de verantwoordelijkheid te nemen om elk draaiend besturingssysteem tijd te geven met de onderliggende hardware. Het fungeert als een verkeersagent om tijd te geven om de CPU, het geheugen, de GPU en andere hardware te gebruiken. Elk besturingssysteem dat door de hypervisor wordt bestuurd, wordt een gast-besturingssysteem genoemd en het besturingssysteem van de hypervisor, indien aanwezig, wordt het host-besturingssysteem genoemd. Omdat het tussen het gast-besturingssysteem en de hardware staat, kunt u zoveel verschillende gast-besturingssystemen hebben als uw systeem aankan; je kunt zelfs verschillende typen hebben (bijv. Windows, OS X, Linux).
Het scheiden van hardware en software blijkt ook goed te zijn voor de draagbaarheid. Omdat de hypervisor als tussenpersoon fungeert, is het veel gemakkelijker om van computer naar computer te gaan zonder dat u nieuwe stuurprogramma’s hoeft te installeren of uw gastbesturingssysteem moet bijwerken. Je hebt dit misschien opgemerkt als je je Virtualbox VM’s nam en ze op een andere computer zette. Voor het gast-besturingssysteem is er geen merkbare verandering, hoewel het host-besturingssysteem en de hardware totaal verschillend kunnen zijn.
Een ander groot voordeel van het virtualiseren van een besturingssysteem is beveiliging. Als u software wilt testen die mogelijk schadelijk is voor uw computer, is het raadzaam om deze op een virtuele machine te testen in plaats van op uw host-besturingssysteem. Als het gast-besturingssysteem geïnfecteerd raakt en vol virussen zit, heeft dit geen invloed op de bestanden op het host-besturingssysteem, tenzij gedeelde mappen of een netwerkbrug de twee met elkaar verbinden. De twee besturingssystemen bestaan volledig van elkaar gescheiden en hebben geen kennis van elkaars bestaan, wat zorgt voor veilig computergebruik.
Enkele populaire hypervisors zijn VMware ESXi, Xen, Microsoft Hyper-V, VMware Workstation, Oracle Virtualbox en Microsoft VirtualPC. Al deze stellen een gebruiker in staat om een of meer besturingssystemen op één stuk hardware te virtualiseren.
Verschillende typen hypervisors
Hypervisors kunnen worden opgesplitst in twee hoofdtypen:
- Type 1, ook bekend als bare metal, is een hypervisor die rechtstreeks op een computer wordt geïnstalleerd. Er is geen host-besturingssysteem en de hypervisor heeft directe toegang tot alle hardware en functies. De belangrijkste redenen om een type 1 hypervisor te installeren, zijn om meerdere besturingssystemen op dezelfde computer te laten draaien zonder de overhead van een host-besturingssysteem of om te profiteren van de draagbaarheid en hardware-abstractie. Bare metal wordt meestal gebruikt voor servers vanwege hun veiligheid en draagbaarheid om van hardware naar hardware te gaan in geval van een crash. Goede voorbeelden van type 1 hypervisors zijn VMware ESXi, Citrix XenServer en Microsoft Hyper-V.
- Type 2, oftewel gehost, is waar de meeste mensen waarschijnlijk bekend mee zijn als het gaat om het virtualiseren van besturingssystemen. Gehoste hypervisors vereisen een host-besturingssysteem en worden vaak behandeld als geïnstalleerde software in de host. Type 2 kan nog steeds meerdere besturingssystemen tegelijk uitvoeren, maar heeft geen directe toegang tot de hardware en heeft daarom meer overhead bij het draaien van een gast. Dit betekent dat het gast-besturingssysteem niet optimaal werkt en als je host crasht, heb je ook geen toegang tot je gasten. Type 2 hypervisors zijn de ideale manier om te gaan als u meerdere besturingssystemen binnen Windows, OS X of Linux moet testen. Goede voorbeelden zijn VMWare Workstation, VMware Parallels, Oracle Virtualbox en Microsoft VirtualPC.
Hypervisors van de toekomst
De meeste hypervisors worden tegenwoordig ofwel gebruikt voor grootschalige serverimplementaties of voor eindgebruikers om legacy-apps uit te voeren of een ander besturingssysteem uit te proberen. Dit denken is echter al enigszins veranderd met de huidige versies van Android en geruchten over Windows 8.
Android gebruikt een Linux-kernel voor interactie met hardware en achtergrondservices en gebruikt vervolgens een virtuele machine genaamd Dalvik om software uit te voeren waarmee de gebruiker interactie heeft. Ondanks dat een gebruiker niet meerdere besturingssystemen tegelijk kan gebruiken, lijkt Android sterk op een type 1 hypervisor. De onderliggende Linux-host is volledig transparant voor de eindgebruiker, tenzij je je telefoon root en ermee wilt communiceren.
Het gerucht gaat dat Windows 8 volledig draait als gast-besturingssysteem bovenop Microsoft’s Hyper-V. Hyper-V neemt de verantwoordelijkheid voor het beheer van uw hardware en voert achtergrondtaken uit, zoals back-ups en controles van het bestandssysteem. Net als bij Android, zou dit u in staat stellen om een betere draagbaarheid, flexibiliteit en beveiliging binnen uw besturingssysteem te hebben. Om nog maar te zwijgen, het zou uw Windows 8-installatie volledig draagbaar maken, zodat u hem van computer naar computer kunt meenemen.
Webservers zullen blijven profiteren van hypervisors om hun hardwaregebruik te maximaliseren en de kosten laag te houden. Als je webhosting hebt gedeeld via een populaire webhost, ben je waarschijnlijk al op een type 1 hypervisor en wist je dat niet. Met goede serverhardware kunnen bare metal hypervisors de grenzen verleggen, van het hebben van slechts één besturingssysteem tot letterlijk duizenden beschikbaar. Dit bespaart niet alleen geld als het gaat om het kopen van hardware, maar ook koeling en stroom worden teruggebracht tot een fractie van wat het was om hetzelfde aantal machines te laten draaien.