Hvad er en Virtual Machine Hypervisor?
Hypervisorer er, hvad der gør virtuelle maskiner mulige, og de er ikke kun for servere længere. Du bruger sikkert en hver dag og ved ikke engang det. Hvis du ikke bruger en nu, vil du i den nærmeste fremtid.
En hypervisor er software, der eksisterer uden for et gæstesystem for at aflytte kommandoerne, der sendes til computerens hardware. Udtrykket "hypervisor" kommer fra de forskellige niveauer af en operativsystemkerne; det udfører handlinger med mere autoritet end niveauet "supervisor", hyper-visir.
Billede via striatic på Flickr
Hypervisor Basics
En hypervisor er også kendt som en Virtual Machine Manager (VMM), og det eneste formål er at tillade flere "maskiner" at dele en enkelt hardware platform. Operativsystemer er designet, så de har et et-til-et-forhold til den hardware, de kører på, men med multi-core, multi-threaded processorer og latterlige mængder RAM, kører flere på én gang er det en leg.
Hypervisoren adskiller operativsystemet (OS) fra hardwaren ved at tage ansvaret for at tillade, at hver kører OS-tid med den underliggende hardware. Det fungerer som trafikpolitiker for at tillade tid at bruge CPU'en, hukommelsen, GPU'en og anden hardware. Hvert operativsystem styret af hypervisor kaldes en gæst OS, og hypervisorens operativsystem kaldes som værts OS. Fordi det står mellem gæstens OS og hardware, kan du have så mange forskellige gæst-operativsystemer som dit system kan håndtere; du kan endda have forskellige typer (fx Windows, OS X, Linux).
Separation af hardware og software viser sig også at være godt til bærbarhed. Fordi hypervisoren fungerer som den mellemliggende, er det meget nemmere at flytte fra computer til computer uden at skulle installere nye drivere eller opdatere din gæst OS. Du har muligvis bemærket dette, hvis du tog dine Virtualbox VM'er og sætte dem på en anden computer. Til gæsten OS er der ingen mærkbar ændring, selvom værts-operativsystemet og hardware kunne være helt forskellige.
En anden stor fordel ved virtualisering af et operativsystem er sikkerhed. Hvis du vil teste software, der kan være skadelig for din computer, anbefales det at teste det i en virtuel maskine i stedet for dit vært OS. Hvis gæstens OS bliver inficeret og hærget med virus, påvirker det ikke filerne på værts-operativsystemet, medmindre delte mapper eller en netbro forbinder de to. De to operativsystemer eksisterer fuldstændigt adskilt fra hinanden og har ingen kendskab til hinandens eksistens, hvilket sikrer sikker databehandling.
Nogle populære hypervisorer er VMware ESXi, Xen, Microsoft Hyper-V, VMware Workstation, Oracle Virtualbox og Microsoft VirtualPC. Alle disse giver en bruger mulighed for at virtualisere et eller flere operativsystemer på et enkelt hardware.
Forskellige typer af hypervisortyper
Hypervisorer kan opdeles i to hovedtyper:
- Type 1, a.k.a. bare metal, er en hypervisor, der installerer direkte på en computer. Der er ingen host OS, og hypervisor har direkte adgang til al hardware og funktioner. Hovedårsagerne til at installere en type 1 hypervisor er at køre flere operativsystemer på den samme computer uden overhead for et værts-operativsystem eller at drage fordel af bærbarhed og hardwareabstraktion. Bare metal bruges oftest til servere på grund af deres sikkerhed og bærbarhed til at flytte fra hardware til hardware i tilfælde af et nedbrud. Gode eksempler på type 1 hypervisorer er VMware ESXi, Citrix XenServer og Microsoft Hyper-V.
- Type 2, a.k.a. vært, er, hvad de fleste mennesker formentlig er bekendt med, når det kommer til virtualisering af operativsystemer. Hosted hypervisors kræver et værts OS og behandles ofte som installeret software inde i værten. Type 2 kan stadig køre flere operativsystemer ad gangen, men det har ikke direkte adgang til hardware og har derfor mere overhead, når man kører en gæst. Dette betyder, at gæstens OS ikke løber fuldt ud, og hvis din vært går i stykker, har du heller ikke adgang til dine gæster. Type 2 hypervisorer er den ideelle måde at gå, når du skal teste flere operativsystemer i Windows, OS X eller Linux. Gode eksempler er VMWare Workstation, VMware Parallels, Oracle Virtualbox og Microsoft VirtualPC.
Fremtidens hypervisorer
De fleste hypervisorer i dag bruges enten til servere i stor skala eller til slutbrugere at køre legacy apps eller prøve et andet operativsystem. Der har allerede været en vis ændring i denne tænkning dog med de nuværende versioner af Android og rygter om Windows 8.
Android bruger en Linux-kerne til interaktion med hardware- og baggrundstjenester og bruger derefter en virtuel maskine kaldet Dalvik til at køre software, som brugeren interagerer med. På trods af ikke at lade en bruger køre flere operativsystemer på en gang, ligner Android meget på en type 1 hypervisor. Den underliggende Linux-vært er fuldstændig gennemsigtig for slutbrugeren, medmindre du roterer din telefon og vil interagere med den.
Windows 8 er rygter om at køre helt som gæst OS oven på Microsofts Hyper-V. Hyper-V tager ansvaret for at styre din hardware og lave baggrundsopgaver som sikkerhedskopiering og filsystemkontrol. På samme måde som Android, vil dette give dig mulighed for at få bedre overførbarhed, fleksibilitet og sikkerhed i dit operativsystem. For ikke at nævne, ville det gøre din Windows 8-installation helt bærbar, så du kan tage den med dig fra computer til computer.
Webservere vil fortsat udnytte hypervisorer for at maksimere deres hardwareudnyttelse og holde omkostningerne nede. Hvis du har delt webhosting via en populær webhost du sandsynligvis er på en type 1 hypervisor allerede og ikke vidste det. Med god serverhardware kan blanke metalhypervisorer skubbe grænserne fra typisk bare at have et operativsystem installeret, til bogstaveligt talt tusinder tilgængelige. Dette sparer ikke kun penge, når det handler om at købe hardware, men også køling og strøm reduceres til en lille smule, hvad det plejede at være at køre samme antal maskiner.