Hva er KVM?

What Is Kvm



Virtualisering refererer til opprettelsen av en simulert databehandlingsressurs som etterligner oppførselen til den tilsvarende virkelige eller fysiske ressursen. Mange typer ressurser kan virtualiseres, fra programvare til individuelle maskinvareenheter til komplette maskinvareplattformer. Dette innlegget fokuserer på virtuelle maskiner som består av enheter som CPU, minne, nettverkskort, disk, grafikkort og operativsystem. Programvare som lager og kjører virtuelle maskiner kalles en hypervisor. Nedenfor vil vi diskutere funksjonene til en hypervisor ved navn KVM .

Fordeler med virtualisering

Tidligere var det å være homogent modus operandi i datasentre, utviklingshus og hjemme. Praktisk talt ville alle maskiner kjøre den samme versjonen av et enkelt operativsystem, enten det er Linux, Windows eller FreeBSD. Tidene har endret seg.







I dag forventer vi at forskjellige operativsystemer som Linux og Windows og til og med forskjellige versjoner av et operativsystem (f.eks. Windows XP og 10) samlokaliseres i det samme datamaskinmiljøet. Uten virtuelle maskiner må flere fysiske maskiner distribueres og vedlikeholdes for å kjøre applikasjoner på flere operasjonsplattformer. Virtualisering driver driften av flere virtuelle maskiner, hver potensielt med et annet operativsystem, på en enkelt fysisk maskin.



Fordelene med virtuelle maskiner fremfor fysiske maskiner inkluderer:



  1. Mer effektiv bruk av datamaskinressurser.
    Prisen på maskinvare fortsetter å falle mens prosessorkraften fortsetter å stige. Under denne virkeligheten har mange store kraftige maskiner i dag en tendens til å være underutnyttet, målt ved inaktive CPU-sykluser, ubrukt minne, etc. Konsolidering av virtuelle maskiner på færre fysiske maskiner resulterer i mindre fysiske ressurser og derfor bedre effektivitet.
  1. Forbedret I.T. lydhørhet og produktivitet.
    Tilførsel av ny fysisk maskinvare innebærer en lang oppkjøps -ventetid fulgt av en lang installasjons- og distribusjonsperiode etter ankomst. I kontrast kan tilrettelegging av virtuelle maskiner automatiseres og gjøres tilgjengelig på minutter i stedet for dager eller til og med uker som tradisjonell maskininnsamling noen ganger tar.
  1. Kostnadsbesparende.
    Store datasentre vil spare penger på grunn av lavere driftskostnader. Besparelsen kommer i form av reduserte energiregninger som følge av lavere kjøle- og effektbehov.

Vi presenterer KVM

Kjernebasert virtuell maskin, eller KVM kort sagt, er en gratis og åpen kildekode-hypervisor-løsning. Den konkurrerer i en moden industri med alternativer med åpen kildekode som f.eks Xen , VirtualBox , så vel som proprietære produkter som VMware vSphere , Citrix XenServer , Microsoft Hyper-V .





Før 2005 var hypervisorløsninger på den tiden, for eksempel Xen og VirtualBox, alle programvarebaserte. X86 -arkitekturen hadde rett og slett ikke muligheter for å støtte virtualisering. I 2005 endret introduksjonen av instruksjonsutvidelsene Intel VT og AMD-V permanent virtualiseringslandskapet. KVM ga ut sin første versjon i 2006, og var en av de første hypervisorene som utnyttet den nye maskinvaretilførselen for å optimalisere virtualiseringsytelsen.

Du kan installere KVM på en hvilken som helst 32-biters eller 64-biters x86-datamaskin, 'vertsmaskinen' i hypervisory lingo, som støtter utvidelsen Intel VT eller AMD-V. I dag støtter moderne hypervisorer vanligvis hybrid virtualisering: maskinvareassistert når det er mulig og en failover til kun programvare for eldre brikkesett.



KVM er kategorisert som en type 2 hypervisor, noe som betyr at den kjører i et vertsoperativsystem. Som navnet antyder, er KVM kjernebasert, og for å være mer presis er det Linux -kjernen. Så det er ikke overraskende at KVM bare støtter Linux som verts -operativsystem. (KVM ble deretter portet til FreeBSD.) Hvis du vil ha en åpen kildekode multi-plattform type 2 hypervisor, er VirtualBox en god kandidat. VirtualBox kan kjøres på Windows, Linux, Mac OS X og Solaris.

Xen, derimot, er en type-1 hypervisor, også kjent som bare metal hypervisor, som kjører direkte som fastvare på vertsmaskinen. Fordelen med type 1 fremfor type 2 er effektiviteten som oppnås på grunn av at hypervisoren kjører direkte på den underliggende maskinvaren. Ulempen er at en type-1 hypervisor kanskje ikke støtter et så stort utvalg av vertsenheter som vertsoperativsystemet til en type-2 hypervisor.

Selv om hypervisorer kan variere i om de krever et verts -operativsystem og hvilke, er de veldig like når det gjelder hvilke gjest -operativsystemer de støtter, dvs. operativsystemet som en virtuell maskin kan kjøre. KVM støtter virtualisering av følgende gjest -operativsystemer:

  • Linux -distribusjoner inkludert Debian, Ubuntu, Centos, Fedora, RedHat Enterprise Linux
  • BSD som OpenBSD, FreeBSD, NetBSD
  • Solaris
  • Windows

KVM er i stand til å kjøre umodifiserte gjest OS -bilder. Denne funksjonen er kjent som full virtualisering, i motsetning til para-virtualisering der gjest-operativsystemet er modifisert for spesiell håndtering av operasjoner som er vesentlig vanskeligere å kjøre på den virtuelle maskinen enn på vertsmaskinen.


Hvordan KVM fungerer

KVM består av 2 teknologikomponenter: kjerne og brukerplass. Kjernekomponenten består av 2 lastbare kjernemoduler: kvm.ko, og enten kvm-intel.ko eller kvm-amd.ko. Kvm.ko-modulen gir kjernearkitekturuavhengig virtualiseringsbehandling. Modulene kvm-intel.ko og kvm-amd.ko tilsvarer Intel- og AMD-prosessorspesifikke moduler. Disse modulene ble slått sammen til Linux -kjernen fra kjerneversjon 2.6.20.

Den tette integrasjonen av KVM med Linux -kjernen har sine fordeler. KVM er i stand til å delegere til Linux for å gjøre systemgrunt -arbeidet, mens det fokuserer på å håndtere de nye virtualiseringsinstruksjonene som avsløres av maskinvaren. KVM drar også fordeler ved å arve fra enhver kontinuerlig systemforbedring oppstrøms i det større Linux -fellesskapet.

Viktig at kjernemodulene er, de etterligner ikke maskinvare for virtuell maskin som gjest -operativsystemet kjører på. Den jobben hører hjemme i brukerområdet. KVM bruker QEMU , som kjører i brukerområdet, for å bygge de virtuelle maskinene som samhandler med gjeste-operativsystemene. Hver virtuell maskin er ganske enkelt en vanlig Linux -prosess. En stor fordel er at du kan bruke kjente Linux -kommandoer som topp og drep for å overvåke og administrere virtuelle maskiner.


Oppsummering og konklusjon

KVM er en utmerket åpen kildekode-løsning for full virtualisering på Linux-vertsplattformen. Etter 10+ års aktiv utvikling har KVM blitt det virtuelle standardiseringsverktøyet på maskinnivå i mange Linux-distribusjoner.