Wat is KVM?


KVM (Kernel-based Virtual Machine) is een type virtualisatie-oplossing die direct in de Linux-kernel is ingebouwd. Het maakt gebruik van het bestaande besturingssysteem om te functioneren als een hypervisor, de softwarelaag die virtuele machines (VM's) maakt en beheert.

In tegenstelling tot sommige andere platforms die een apart, dedicated hypervisor OS vereisen, maakt de nauwe integratie met Linux het zeer efficiënt en krachtig.

KVM verandert een Linux-host in een type 1-hypervisor, waardoor u meerdere gastbesturingssystemen (zoals Windows of andere Linux-distributies) gelijktijdig kunt uitvoeren op dezelfde fysieke hardware.

usecase_virtualisation.png

Hoe werkt KVM?

Het werkt door gebruik te maken van de extensies die zijn ingebouwd in moderne CPU's (zoals Intel VT-x of AMD-V). Met deze extensies kan de processor meerdere besturingssystemen ondersteunen die tegelijkertijd op zichzelf worden uitgevoerd.

Wanneer het op een Linux-host wordt geïnstalleerd, verandert de kernel van die host in een hypervisor. Dit kan vervolgens VM's maken en beheren, en het proces ziet er ongeveer als volgt uit:

  • CPU virtualisatie extensies : Met de virtualisatie-extensies van de CPU kan de machine onderscheid maken tussen het host-OS en het gast-OS dat in VM's wordt uitgevoerd.
     
  • Linux kernel als hypervisor : KVM gebruikt deze extensies om een gevirtualiseerde omgeving te creëren, direct binnen de Linux kernel. De kernel zelf fungeert als de hypervisor, beheert de VM's en wijst resources toe zoals CPU, geheugen en opslag.
     
  • Guest operating systems : Elke VM heeft zijn eigen gastbesturingssysteem, dat is afgeschermd van de host en elkaar, wat een veilige en stabiele omgeving biedt.
     
  • Virtual devices : Het configureert virtuele apparaten naar het gastbesturingssysteem, zoals virtuele netwerkkaarten, harde schijven en USB-controllers. Virtuele apparaten zorgen er op hun beurt voor dat deze besturingssystemen kunnen communiceren met de onderliggende hardware.
     
  • QEMU for emulation : Hoewel het de core infrastructuur mogelijk maakt, werkt het vaak samen met QEMU (Quick Emulator). QEMU emuleert de hardware voor de virtual machines, waardoor KVM een breed scala aan opties kan ondersteunen. QEMU biedt ook een gebruikersinterface voor het beheer ervan.

Het netto effect van de software is dat het gebruik maakt van de hardware server virtualisatie mogelijkheden van een CPU en de flexibiliteit van de Linux kernel om een zeer efficiënt en geïntegreerd platform te creëren.

Wat zijn de functies van KVM?

KVM biedt een reeks aantrekkelijke functies, te beginnen met de native integratie binnen de Linux-kernel. Native integratie biedt toegang tot de stabiliteit, prestaties en robuuste beveiliging van het Linux-besturingssysteem.

Bovendien maakt het gebruik van hardwareversnelde virtualisatie door gebruik te maken van processorextensies (Intel VT-x of AMD-V) om vrijwel native prestaties te bereiken, overhead te minimaliseren en efficiëntie te maximaliseren.

Het maakt het mogelijk om een breed scala aan besturingssystemen naast elkaar te laten bestaan, waaronder verschillende Linux-distributies, Windows en nog veel meer. Livemigratie is een belangrijke mogelijkheid, waardoor deze zonder enige downtime tussen fysieke hosts kunnen worden verplaatst. Dit is essentieel voor onderhoud, het balanceren van resources en het garanderen van hoge beschikbaarheid.

Er is ook flexibiliteit in opslagopties, die alles ondersteunen, van lokale schijven tot netwerkopslag zoals NFS en iSCSI, evenals gedeelde opslag. Dit omvat ondersteuning voor Network-Attached Storage (NAS). Geavanceerde geheugenfuncties, zoals dynamische geheugentoewijzing en 'ballooning' van geheugen, dragen verder bij aan efficiënt gebruik van bronnen.

Voordelen van KVM-virtualisatie

KVM biedt een reeks aantrekkelijke voordelen die het tot een sterke keuze maken voor behoeften op het gebied van virtualisatiebeheer. Deze voordelen omvatten schaalbaarheid, kosteneffectiviteit en de inherente voordelen van de open-source aard.

Schaalbaarheid en flexibiliteit voor IT-omgevingen

Het biedt schaalbaarheid en flexibiliteit voor IT-omgevingen. Of u nu een klein bedrijf runt of een groot datacenter beheert, KVM kan zich aan uw behoeften aanpassen. Hiermee kunt u uw gevirtualiseerde infrastructuur eenvoudig op- of afbouwen naarmate de vraag verandert.

Nieuwe VM's kunnen snel worden ingericht en bestaande VM's kunnen met een minimale onderbreking worden gemigreerd of van grootte worden veranderd. Deze flexibiliteit geldt ook voor de keuze van hardware en software, omdat het compatibel is met een breed scala aan systemen en diverse besturingssystemen ondersteunt. Dit aanpassingsvermogen maakt van KVM een ideale oplossing voor dynamische IT-scenario's waarbij de resourcebehoeften fluctueren.

Voordelige virtualisatieoplossing

KVM biedt een zeer kosteneffectieve virtualisatieoplossing. Omdat het direct in de kernel is geïntegreerd, zijn er geen aparte licentiekosten voor de hypervisor zelf. Dit reduceert de totale eigendomskosten aanzienlijk in vergelijking met bedrijfseigen oplossingsplatforms.

Het verhoogt ook de beveiliging van de public cloud en de private cloud. In public cloud-implementaties helpen de isolatiemogelijkheden van KVM tenant workloads tegen elkaar te beschermen, een kritieke component van het handhaven van de publieke veiligheid. Binnen de private cloud biedt KVM vergelijkbare voordelen, waardoor organisaties veilige, afgeschermde omgevingen kunnen creëren voor gevoelige gegevens en applicaties.

Bovendien kunt u door de open-source aard van deze software vendor lock-in voorkomen en krijgt u meer controle over uw virtualisatie-omgeving. U kunt de support- en onderhoudsopties kiezen die het beste bij uw behoeften en budget passen. Deze kosteneffectiviteit maakt KVM bijzonder aantrekkelijk voor bedrijven die hun IT-uitgaven willen optimaliseren.

Open-sourcevoordelen voor ondernemingen

De open-source aard van KVM is gunstig voor bedrijven omdat het een levendige gemeenschap van ontwikkelaars en gebruikers bevordert, wat leidt tot voortdurende verbetering, snelle bugfixes en een schat aan beschikbare resources.

Deze community-gedreven ontwikkeling zorgt ervoor dat de software up-to-date blijft met de nieuwste technologieën en best practices voor beveiliging. Ondernemingen profiteren ook van de transparantie en flexibiliteit van opensourcesoftware. Bedrijven kunnen de code inspecteren, aanpassen aan hun specifieke eisen en bijdragen aan de community. Dit niveau van controle en samenwerking maakt KVM tot een krachtige en aanpasbare oplossing voor ondernemingen.

KVM use cases en applicaties

De veelzijdigheid van KVM maakt het geschikt voor een breed scala aan applicaties, van het managen van private en public clouds tot het vereenvoudigen van de implementatie van virtuele machines en het optimaliseren van complexe multi-cloudomgevingen.

Het beheren van Private en Public Clouds

Het is een essentieel onderdeel van veel private en public cloud infrastructuren. De mogelijkheid om efficiënt te managen, gecombineerd met de integratie met platforms zoals OpenStack, maakt het tot een ideale keuze voor bouwen en managen.
 

In privéclouds kunnen organisaties hun serverresources consolideren, het hardwaregebruik verbeteren en een IT-infrastructuur voor selfservice creëren.
 

Voor public clouds maakt KVM gebruik van de door providers geboden infrastructuur, waardoor ze hun klanten schaalbare en on-demand computing resources kunnen bieden. Het open source-karakter en het gebrek aan licentiekosten maken het tot een bijzonder aantrekkelijke optie voor providers.

Virtuele machines implementeren met KVM

Het implementeren van virtuele machines met deze tool is een eenvoudig proces, vooral bij het gebruik van beheertools zoals virt-manager of de opdrachtregelinterface. Met KVM kunt u eenvoudig VM's maken, configureren en beheren.
 

U kunt de resources definiëren die zijn toegewezen aan virtuele machines (VM's), zoals CPU, geheugen en opslag, en het gewenste besturingssysteem installeren. KVM ondersteunt ook sjablonen en snapshots, die het implementatieproces van meerdere machines met vergelijkbare configuraties vereenvoudigen. Dit implementatiegemak maakt het tot een waardevol hulpmiddel voor ontwikkelaars, testers en IT-beheerders.

Multi-cloudomgevingen optimaliseren

Organisaties die privacybewust zijn, implementeren tegenwoordig multi-cloudstrategieën met een combinatie van private en public clouds. Het kan een cruciale rol spelen bij het optimaliseren van deze meerdere omgevingen.
 

Dankzij de compatibiliteit met verschillende cloudplatforms en de mogelijkheid om meerdere besturingssystemen te draaien, kunt u workloads naadloos tussen verschillende omgevingen verplaatsen. Deze flexibiliteit stelt u in staat om het beste platform voor elke toepassing te kiezen, kosten te optimaliseren en vendor lock-in te voorkomen. De open-source aard van KVM maakt ook meer maatwerk en integratie met bestaande tools mogelijk.

KVM-architectuur en hoe het werkt

De architectuur van KVM is uniek door zijn nauwe integratie met de Linux kernel, waardoor het kan functioneren als een krachtig en efficiënt platform.

Rol van de Hypervisor in KVM

In KVM, de Linux kernel zelf fungeert als de hypervisor. Dit is een belangrijk verschil met sommige andere opties die een apart, dedicated besturingssysteem gebruiken. De hypervisor is de softwarelaag die virtuele machines maakt en beheert. In KVM maakt de kernel gebruik van CPU-extensies (Intel VT-x of AMD-V) om een gevirtualiseerde omgeving te creëren.

De kernel wijst resources toe, zoals CPU, geheugen en opslag, aan de gastbesturingssystemen die op de virtuele machines draaien. Omdat het direct in de kernel is geïntegreerd, profiteert KVM van de snelheid, stabiliteit en beveiligingsfuncties van het besturingssysteem. Deze strakke integratie minimaliseert ook overhead, wat resulteert in vrijwel perfecte prestaties voor de machines.

KVM versus andere virtualisatieoplossingen

De architectuur van KVM verschilt aanzienlijk van andere oplossingen. Sommige platforms, zoals VMware ESXi, gebruiken een type 1 hypervisor (ook wel een bare-metal hypervisor genoemd). Een Type 1 draait direct op de machine zonder een onderliggend OS.

KVM is daarentegen een type 2 (of gehost), omdat het bovenop een bestaand besturingssysteem draait. Hoewel type 1-hypervisors in sommige gevallen iets betere resultaten kunnen bieden, biedt de nauwe integratie met Linux zijn eigen snelheidsvoordelen en meer flexibiliteit.

Vergeleken met andere Type 2's, zoals VirtualBox of VMware Workstation, bieden de integratie van KVM met de kernel en het gebruik van CPU-extensies aanzienlijk betere snelheden en schaalbaarheid.

KVM vergelijken met andere virtualisatietechnologieën

KVM wordt vaak vergeleken met andere populaire virtualisatietechnologieën die voor cloud computing worden gebruikt, elk met zijn eigen sterke en zwakke punten. Het begrijpen van deze verschillen is essentieel om het juiste platform voor uw behoeften te kiezen.

KVM versus VMware

VMware biedt een uitgebreide suite van virtualisatieproducten, waaronder ESXi (een type 1-hypervisor) en vSphere. Een belangrijk verschil met VMware ligt in hun licentiemodellen. Omdat KVM open source is, worden er geen licentiekosten aangerekend voor de hypervisor zelf, terwijl voor VMware-producten doorgaans commerciële licenties nodig zijn.
 

Het uitgekristalliseerde ecosysteem en de uitgebreide functieset van VMware, inclusief geavanceerde beheertools, kunnen voordelig zijn voor grote ondernemingen met complexe virtualisatiebehoeften. Dit heeft echter wel een prijs.
 

KVM, met zijn groeiende functieset en sterke prestaties, is een aantrekkelijk alternatief, vooral voor organisaties die op zoek zijn naar een kosteneffectieve en flexibele oplossing. De keuze hangt vaak af van het budget, de vereiste functies en het benodigde supportniveau.

KVM versus Hyper-V

Hyper-V is het virtualisatieplatform van Microsoft, dat nauw is geïntegreerd met het Windows Server-besturingssysteem. Net als KVM is Hyper-V een type 2. Een belangrijk verschil is het besturingssysteem: KVM draait op Linux, terwijl Hyper-V op Windows draait. Dit maakt Hyper-V tot een natuurlijke keuze voor organisaties die zwaar in het Microsoft-ecosysteem hebben geïnvesteerd.
 

KVM daarentegen biedt grotere flexibiliteit wat betreft gastbesturingssystemen en profiteert van de open-source community. Wat de prestaties betreft, kunnen beide platforms goede resultaten opleveren, hoewel specifieke benchmarks afhankelijk van de werklast kunnen variëren.

Het juiste virtualisatieplatform kiezen

Kosten zijn altijd een belangrijke factor, en door de open-source aard ervan is het een zeer kosteneffectieve optie. De specifieke vereiste functies, zoals live migratie, opslagbeheer en hoge beschikbaarheid, moeten ook worden geëvalueerd.
 

Prestatiekenmerken en de manier waarop deze zijn afgestemd op de werklastvereisten zijn belangrijk. De rijpheid van het ecosysteem, de beschikbaarheid van ondersteunende middelen en de omvang van de gemeenschap moeten worden beoordeeld. Integratie met bestaande IT-infrastructuur en beheertoolset is een andere cruciale overweging.

Aan de slag met KVM

Aan de slag gaan met KVM omvat een paar belangrijke stappen, van de installatie tot het beheer van virtuele machines en het migreren van bestaande workloads.

KVM installeren op Linux

Het installeren van KVM op Linux impliceert meestal het gebruik van de package manager van uw distributie. Op Debian/Ubuntu-systemen zou u bijvoorbeeld apt-get gebruiken om de benodigde pakketten te installeren, zoals qemu-kvm, libvirt en aanverwante tools.

U moet er ook voor zorgen dat CPU-virtualisatie-uitbreidingen zijn ingeschakeld in uw BIOS/UEFI-instellingen. Na de installatie kunt u de installatie verifiëren en de libvirtd daemon starten.

Virtual Machines beheren met KVM

Het beheer van virtuele machines kan worden gedaan met behulp van verschillende tools. virt-manager biedt een grafische interface voor het maken, configureren en beheren van VM's.

De command-line interface biedt meer controle en is ideaal voor het uitvoeren van scripts. U kunt ook beheerplatforms zoals OpenStack gebruiken om deze software op grote schaal te managen. De basistaken voor het beheer omvatten het starten, stoppen, onderbreken en verwijderen van VM's en het configureren van bronnen en netwerken.

Migreren naar een KVM-gebaseerd virtualisatieplatform

Migreren naar IT kan verschillende benaderingen inhouden, afhankelijk van het platform. Voor VM's die op andere virtualisatieoplossingen draaien, kunnen tools zoals virt-v2v images van virtuele schijven converteren.

Voor fysieke servers kunt u een proces gebruiken dat "fysiek-naar-virtueel" (P2V)-conversie wordt genoemd. Het migratieproces zorgvuldig plannen, grondig testen en uitvaltijd overwegen is cruciaal voor een soepele overgang.

OVHcloud en KVM

Data Platform Icon Data Governance

OVHcloud VPS biedt een reeks Virtual Private Servers die KVM-virtualisatie ondersteunen. Dit betekent dat u over dedicated servers beschikt en volledige controle over uw serveromgeving, waardoor het perfect is voor alles, van het hosten van websites en applicaties tot ontwikkeling en testen.
 

Profiteer van de flexibiliteit van het kiezen van het besturingssysteem van uw voorkeur, het opschalen naar gelang uw behoeften en het beheren van uw server op uw manier.
 

Met OVHcloud VPS profiteert u van hoge prestaties dankzij hun robuuste infrastructuur, die ervoor zorgt dat uw projecten soepel verlopen. Met een focus op beveiliging en competitieve prijzen is het een geweldige oplossing voor zowel bedrijven als individuen. Ga aan de slag met OVHcloud VPS en ervaar de kracht en flexibiliteit van een virtual private server die op uw behoeften is afgestemd.