Vad är en Virtual Machine Hypervisor?
Hypervisorer är det som gör virtuella maskiner möjliga, och de är inte bara för servrar längre. Du brukar använda en varje dag och vet inte ens den. Om du inte använder en nu, kommer du inom en snar framtid.
En hypervisor är programvara som existerar utanför ett gästoperativsystem för att fånga upp de kommandon som skickas till datorns maskinvara. Termen "hypervisor" kommer från olika nivåer av en operativsystemkärna; Det utför åtgärder med mer auktoritet än "supervisor" -nivå, alltså, hyper-visir.
Bild via striat på Flickr
Hypervisor Basics
En hypervisor är också känd som en Virtual Machine Manager (VMM) och det enda syftet är att tillåta flera "maskiner" att dela en enda hårdvaruplattform. Operativsystem är utformade så att de har ett ett-till-ett-förhållande med hårdvaran som de körs på, men med multi-core, multi-threaded processorer och skrämmande mängder RAM, körs flera på en gång är det en vind.
Hypervisorn separerar operativsystemet (OS) från hårdvaran genom att ta ansvaret för att låta varje kör OS-tid med den underliggande hårdvaran. Det fungerar som trafikpolis för att tillåta tid att använda CPU, minne, GPU och annan hårdvara. Varje operativsystem som styrs av hypervisorn kallas för ett gäst-OS, och hypervisorens operativsystem, om någon, heter värddatorns operativsystem. Eftersom det står mellan gästens operativsystem och maskinvara kan du få så många olika gäst-operativsystem som ditt system kan hantera. du kan även ha olika typer (t.ex. Windows, OS X, Linux).
Att skilja hårdvara och programvara visar sig vara bra för bärbarhet också. Eftersom hypervisorn fungerar som mellanväggen är det mycket lättare att flytta från dator till dator utan att behöva installera nya drivrutiner eller uppdatera din gäst-operativsystem. Du kanske har märkt det här om du tog dina virtuella VM-datorer och lägger dem på en annan dator. Till gäst OS, det finns ingen märkbar förändring någonsin om värdens operativsystem och maskinvara kan vara helt annorlunda.
En annan stor fördel med att virtualisera ett operativsystem är säkerhet. Om du vill testa programvara som kan vara skadlig för din dator rekommenderas det att testa det i en virtuell maskin i stället för ditt värd-operativsystem. Om gäst-operativsystemet blir smittat och spridd med virus, påverkar det inte filerna på värd-operativsystemet, såvida inte delade mappar eller en nätverksbro kopplar de två. De två operativsystemen finns helt separerade från varandra och har ingen kännedom om varandras existens, vilket ger säker databehandling.
Några populära hypervisorer är VMware ESXi, Xen, Microsoft Hyper-V, VMware Workstation, Oracle Virtualbox och Microsoft VirtualPC. Alla dessa tillåter en användare att virtualisera ett eller flera operativsystem på en enda hårdvara.
Olika Hypervisortyper
Hypervisorer kan brytas upp i två huvudtyper:
- Typ 1, a.k.a. barometall, är en hypervisor som installeras direkt på en dator. Det finns inget värd-operativsystem och hypervisorn har direkt tillgång till all maskinvara och funktioner. De främsta anledningarna till att installera en hypervisor av typ 1 är att köra flera operativsystem på samma dator utan överhuvudtaget för ett värd-operativsystem eller att dra fördel av bärbarheten och maskinvaruabstraktionen. Bare metall används oftast för servrar på grund av deras säkerhet och bärbarhet för att flytta från hårdvara till hårdvara i händelse av en krasch. Bra exempel på typ 1 hypervisorer är VMware ESXi, Citrix XenServer och Microsoft Hyper-V.
- Typ 2, a.k.a. värd, är vad de flesta människor förmodligen är bekanta med när det gäller att virtualisera operativsystem. Hosted hypervisorer kräver ett värd-OS och behandlas ofta som installerad programvara inuti värden. Typ 2 kan fortfarande köra flera operativsystem åt gången, men det har inte direkt tillgång till hårdvaran och har därför högre kostnader när man kör en gäst. Det betyder att gästens operativsystem inte kommer att köras med full potential och om din värd kraschar har du inte heller tillgång till dina gäster. Typ 2-hypervisorer är det perfekta sättet att gå när du behöver testa flera operativsystem inom Windows, OS X eller Linux. Bra exempel är VMWare Workstation, VMware Parallels, Oracle Virtualbox och Microsoft VirtualPC.
Framtidens hypervisörer
De flesta hypervisorer idag används antingen för stora serverinstallationer eller för slutanvändare att köra äldre apps eller prova ett annat operativsystem. Det har redan varit en del förändringar i detta tänkande dock med nuvarande versioner av Android och rykten om Windows 8.
Android använder en Linux-kärna för interaktion med hårdvaru- och bakgrundstjänster och använder sedan en virtuell maskin som heter Dalvik för att köra programvara som användaren interagerar med. Trots att inte en användare kan köra flera operativsystem samtidigt, är Android mycket lik en typ 1-hypervisor. Den underliggande Linux-värd är helt transparent för slutanvändaren, såvida du inte roterar din telefon och vill interagera med den.
Windows 8 är ryktet för att köra helt som gäst OS ovanpå Microsofts Hyper-V. Hyper-V tar ansvaret för att hantera hårdvaran och göra bakgrundsuppgifter som säkerhetskopiering och filsystemkontroll. På samma sätt som Android kan du få bättre portabilitet, flexibilitet och säkerhet inom ditt operativsystem. För att inte tala om det skulle göra din Windows 8-installation helt bärbar så att du kan ta den med dig från dator till dator.
Webservrar fortsätter att dra nytta av hypervisorer för att maximera maskinvaruinvändningen och hålla kostnaderna nere. Om du har delat webbhotell via en populär webbhotell du sannolikt är på en typ 1 hypervisor redan och visste inte det. Med bra serverhårdvara kan bare metallhypervisorer trycka gränserna från att bara ha ett operativsystem installerat, till bokstavligen tusentals tillgängliga. Detta sparar inte bara pengar när det handlar om att köpa maskinvara, men även kylning och kraft reduceras till en liten del vad det brukade vara att köra samma mängd maskiner.