Kaj je KVM?

What Is Kvm



Virtualizacija se nanaša na ustvarjanje simuliranega računalniškega vira, ki posnema vedenje ustreznega resničnega ali fizičnega vira. Virtualizirati je mogoče številne vrste virov, od programske opreme do posameznih strojnih naprav do popolnih strojnih platform. Ta objava se osredotoča na virtualne stroje, ki vsebujejo naprave, kot so CPU, pomnilnik, omrežna kartica, disk, grafični adapter in operacijski sistem. Programska oprema, ki ustvarja in izvaja virtualne stroje, se imenuje hipervizor. Spodaj bomo obravnavali lastnosti hipervizorja z imenom KVM .

Prednosti virtualizacije

V preteklosti je bil homogeni način delovanja v podatkovnih centrih, razvojnih hišah in doma. Praktično bi vsi stroji izvajali isto izdajo enega samega operacijskega sistema, pa naj gre za Linux, Windows ali FreeBSD. Časi so se spremenili.







Danes bi pričakovali, da se različni operacijski sistemi, kot sta Linux in Windows, in celo različne različice operacijskega sistema (npr. Windows XP in 10) locirajo v istem računalniškem okolju. Brez navideznih strojev je treba za zagon aplikacij na več operacijskih platformah uvesti in vzdrževati več fizičnih strojev. Virtualizacija omogoča izvajanje več virtualnih strojev, od katerih ima vsak potencialno drugačen operacijski sistem, na enem fizičnem stroju.



Prednosti virtualnih strojev pred fizičnimi stroji vključujejo:



  1. Učinkovitejša uporaba računalniških virov.
    Cena strojne opreme nenehno pada, njihova procesorska moč pa narašča. V tej realnosti je danes veliko velikih zmogljivih strojev premalo izkoriščenih, merjeno s cikli mirovanja procesorja, neporabljenim pomnilnikom itd. Konsolidacija virtualnih strojev na manj fizičnih strojev povzroči manj fizičnih virov in s tem večjo učinkovitost.
  1. Izboljšan I.T. odzivnost in produktivnost.
    Zagotavljanje nove fizične strojne opreme zahteva dolgo čakalno dobo na pridobitev, ki ji sledi dolgo obdobje namestitve in uvajanja po njenem prihodu. V nasprotju s tem je nabavo navideznih strojev mogoče avtomatizirati in dati na voljo v nekaj minutah in ne v dneh ali celo tednih, kar včasih traja tradicionalna pridobitev stroja.
  1. Zmanjšati stroške.
    Veliki podatkovni centri bodo prihranili denar zaradi nižjih operativnih stroškov. Prihranki so v obliki zmanjšanih računov za energijo zaradi nižjih potreb po hlajenju in moči.

Predstavljamo KVM

Navidezni stroj na osnovi jedra, oz KVM skratka, je brezplačna in odprtokodna rešitev hipervizorja. V zreli industriji tekmuje z odprtokodnimi alternativami, kot so Xen , VirtualBox , pa tudi lastniških izdelkov, kot so VMware vSphere , Citrix XenServer , Microsoft Hyper-V .





Pred letom 2005 so takratne rešitve hipervizorjev, kot sta Xen in VirtualBox, temeljile na programski opremi. Arhitektura x86 preprosto ni imela možnosti za podporo virtualizacije. Leta 2005 je uvedba razširitev nabora navodil Intel VT in AMD-V trajno spremenila pokrajino virtualizacije. KVM je svojo prvo različico izdal leta 2006 in je bil eden prvih hipervizorjev, ki je izkoristil novo ponudbo strojne opreme za optimizacijo zmogljivosti virtualizacije.

KVM lahko namestite na kateri koli 32-bitni ali 64-bitni računalnik x86, 'gostiteljski stroj' v hipervizorskem jeziku, ki podpira razširitev Intel VT ali AMD-V. Danes sodobni hipervizorji običajno podpirajo hibridno virtualizacijo: po možnosti strojno podprto in preklop na programsko opremo samo za starejše nabore čipov.



KVM je kategoriziran kot hipervizor tipa 2, kar pomeni, da deluje v gostiteljskem operacijskem sistemu. Kot že ime pove, KVM temelji na jedru in natančneje gre za jedro Linuxa. Zato ni presenetljivo, da KVM podpira samo Linux kot svoj gostiteljski OS. (KVM je bil nato prenesen na FreeBSD.) Če želite odprtokodni večplatformni hipervizor tipa 2, je VirtualBox dober kandidat. VirtualBox lahko deluje izvorno v sistemih Windows, Linux, Mac OS X in Solaris.

Nasprotno pa je Xen hipervizor tipa 1, znan tudi kot goli kovinski hipervizor, ki deluje neposredno kot vdelana programska oprema na gostiteljskem stroju. Prednost tipa 1 pred tipom 2 je učinkovitost, pridobljena zaradi delovanja hipervizorja neposredno na osnovni strojni opremi. Pomanjkljivost je, da hipervizor tipa 1 morda ne podpira tako širokega nabora gostiteljskih naprav kot gostiteljski operacijski sistem hipervizorja tipa 2.

Medtem ko se lahko hipervizorji razlikujejo glede tega, ali potrebujejo gostiteljski OS in katere, so si zelo podobni glede na to, katere gostujoče OS podpirajo, tj. OS, ki ga lahko izvaja navidezni stroj. KVM podpira virtualizacijo naslednjih gostujočih OS:

  • Distribucije Linuxa, vključno z Debian, Ubuntu, Centos, Fedora, RedHat Enterprise Linux
  • BSD, kot so OpenBSD, FreeBSD, NetBSD
  • Solaris
  • Windows

KVM lahko izvaja nespremenjene podobe gostujočih OS. Ta funkcija je znana kot popolna virtualizacija, v nasprotju s para-virtualizacijo, kjer je gostujoči OS spremenjen za posebno ravnanje z operacijami, ki jih je na virtualnem stroju bistveno težje izvajati kot na gostiteljskem stroju.


Kako deluje KVM

KVM je sestavljen iz dveh tehnoloških komponent: jedra in uporabniškega prostora. Komponenta jedra je sestavljena iz dveh nakladljivih modulov jedra: kvm.ko in kvm-intel.ko ali kvm-amd.ko. Modul kvm.ko zagotavlja osrednjo arhitekturo neodvisno obdelavo virtualizacije. Modula kvm-intel.ko in kvm-amd.ko ustrezata modulom, specifičnim za procesor Intel in AMD. Ti moduli so bili združeni v jedro Linuxa od različice jedra 2.6.20.

Tesna integracija KVM z jedrom Linuxa ima svoje prednosti. KVM se lahko prenese na Linux za opravljanje sistemskega dela, medtem ko se osredotoča na ravnanje z novimi navodili za virtualizacijo, ki jih razkrije strojna oprema. KVM koristi tudi tako, da podeduje od kakršnega koli stalnega izboljšanja sistema od navzgor v večji skupnosti Linux.

Pomembno je, da so moduli jedra, da ne posnemajo strojne opreme navideznega stroja, na katerem deluje gostujoči OS. To delo spada v uporabniški prostor. Uporablja KVM QEMU , ki se izvaja v uporabniškem prostoru, za izdelavo navideznih strojev, ki delujejo z gostujočimi OS. Vsak virtualni stroj je preprosto običajen proces Linuxa. Ena velika prednost je, da lahko za spremljanje in upravljanje navideznih strojev uporabite znane ukaze Linuxa, kot je top in kill.


Povzetek in zaključek

KVM je odlična odprtokodna rešitev za popolno virtualizacijo na gostiteljski platformi Linux. Po več kot 10 letih aktivnega razvoja je KVM postal dejansko standardno orodje za virtualizacijo na ravni stroja v mnogih distribucijah Linuxa.