Debesų kom­piu­te­ri­jos amžiuje hi­per­vi­zo­riai, tokie kaip KVM ir Xen, tapo svarbesni nei bet kada anksčiau. Tačiau kuo skiriasi šios dvi vir­tu­ali­za­ci­jos tech­no­lo­gi­jos? Pa­ly­gin­da­mi Xen ir KVM, pa­žvelg­si­me į jų panašumus ir skirtumus.

Xen iš pirmo žvilgsnio

Xen yra atviro kodo vir­tu­ali­za­ci­jos prog­ra­mi­nė įranga, lei­džian­ti vienu metu viename pag­rin­di­nia­me kom­piu­te­ry­je paleisti kelias svečių ope­ra­ci­nes sistemas. Xen valdo pag­rin­di­nio kom­piu­te­rio apa­ra­ti­nės įrangos išteklių pa­skirs­ty­mą.

Kokio tipo hi­per­vi­zo­rius yra Xen?

Xen yra 1 tipo (arba „bare metal“) hi­per­vi­zo­rius. Šio tipo hi­per­vi­zo­rius yra įdie­gia­mas tiesiai į fizinę sistemą ir bendrauja su aparatine įranga per savo pačios tvar­kyk­les. Pag­rin­di­nė ir svečio ope­ra­ci­nės sistemos yra įdiegtos virš Xen hi­per­vi­zo­riaus. Siekdamas atskirti skir­tin­gus pri­vi­le­gi­jų lygius, Xen įdiegtas ope­ra­ci­nes sistemas suskirsto į dvi skir­tin­gas sritis: dom0 ir domU. Pag­rin­di­nė operacinė sistema priklauso dom0 sričiai ir turi aukš­čiau­sią pri­vi­le­gi­jų lygį, o visos svečio ope­ra­ci­nės sistemos yra kla­si­fi­kuo­ja­mos kaip ne­pri­vi­le­gi­juo­tos sistemos ir priklauso domU sričiai.

Pag­rin­di­nė operacinė sistema ne­su­si­sie­kia tie­sio­giai su aparatine įranga per jos tvar­kyk­les, bet per hi­per­vi­zo­rių, naudodama spe­cia­li­zuo­tą Xen API. Ši gili in­te­g­ra­ci­ja užtikrina efek­ty­ves­nį apa­ra­ti­nės įrangos naudojimą, mažesnes išlaidas ir sumažintą atakų paviršių.

Kaip Xen naudoja pa­ra­vir­tu­ali­za­ci­ją efek­ty­vu­mui didinti

Xen naudoja vir­tu­ali­za­ci­jos techniką pa­ra­vir­tu­ali­za­ci­ją, kad padidintų efek­ty­vu­mą. Naudojant šią techniką, hi­per­vi­zo­rius ne­e­mu­liuo­ja apa­ra­tū­ros kom­po­nen­tų, o svečių sistemos žino, kad jos veikia vir­tu­a­lio­je aplinkoje. Tai leidžia daug greičiau ko­mu­ni­kuo­ti tarp svečių ope­ra­ci­nių sistemų ir Xen, todėl padidėja našumas.

Tačiau šis metodas priklauso nuo spe­cia­li­zuo­tų tvar­kyk­lių ir konkrečių ope­ra­ci­nės sistemos bran­duo­lio įdiegtų funkcijų. Daugelis plačiai naudojamų ope­ra­ci­nių sistemų bran­duo­lių, pvz., Linux ir BSD, jau kelerius metus palaiko pa­ra­vir­tu­ali­za­ci­ją.

Jei naudojate operacinę sistemą, kurioje pa­ra­vir­tu­ali­za­ci­ja nėra įmanoma arba ne­pa­gei­dau­ja­ma, Xen taip pat palaiko visišką vir­tu­ali­za­ci­ją (kai apa­ra­tū­ros kom­po­nen­tai yra vir­tu­aliai emu­liuo­ja­mi). Nors tai sulėtina vir­tu­ali­za­ci­ją, tačiau užtikrina aukštą su­de­ri­na­mu­mą, lei­džian­tį ope­ra­ci­nėms sistemoms, kurios nepalaiko pa­ra­vir­tu­ali­za­ci­jos, veikti Xen aplinkoje.

Kokios yra pag­rin­di­nės KVM funkcijos?

Kaip ir Xen, KVM (Kernel-based Virtual Machine) taip pat yra atviro kodo hi­per­vi­zo­rius, lei­džian­tis var­to­to­jams viename fiziniame kom­piu­te­ry­je paleisti kelias svečių ope­ra­ci­nes sistemas. Nors abu hi­per­vi­zo­riai atlieka tą pačią pag­rin­di­nę funkciją, jų ar­chi­tek­tū­ra skiriasi, todėl kiek­vie­nas hi­per­vi­zo­rius tinka skir­tin­giems naudojimo atvejams.

Koks yra KVM hi­per­vi­zo­riaus tipas?

Anksčiau KVM dažnai buvo vadinamas 2 tipo hi­per­vi­zo­riu­mi, nes jis galėjo bendrauti su aparatine įranga tik per pag­rin­di­nės ope­ra­ci­nės sistemos tvar­kyk­les. KVM turėjo emuliuoti visus apa­ra­ti­nės įrangos kom­po­nen­tus svečių sistemoms, todėl pa­ra­vir­tu­ali­za­ci­ja buvo neįmanoma.

KVM buvo išplėsta, kad apimtų pa­ra­vir­tu­ali­za­ci­ją. Tačiau jos veikimo principas skiriasi nuo Xen. Skir­tin­gai nuo Xen, KVM nėra įdiegta pag­rin­di­nė­je ope­ra­ci­nė­je sistemoje, bet tie­sio­giai in­te­gruo­ta į Linux branduolį. KVM naudoja Linux sistemos prog­ra­mi­nės įrangos kom­po­nen­tus vir­tu­ali­zuo­tų sistemų ir jų procesų valdymui.

KVM sistemoje kiekviena svečio operacinė sistema turi savo vir­tu­ali­zuo­tą apa­ra­tū­ros rinkinį, įskaitant tinklo sąsajas, disko saugyklą ir kitus apa­ra­tū­ros kom­po­nen­tus. Siekdama pa­grei­tin­ti visišką vir­tu­ali­za­ci­ją, KVM naudoja apa­ra­tū­ros palaikomą vir­tu­ali­za­ci­ją, kuri jau yra įdiegta daugumoje šiuo­lai­ki­nių pro­ce­so­rių.

Ne visi kom­po­nen­tai KVM sistemoje yra visiškai vir­tu­ali­zuo­ti. Siekiant pagerinti vei­kian­čių sistemų ir programų našumą, KVM teikia pa­ra­vir­tu­ali­zuo­tas sąsajas, kurios gali tie­sio­giai bendrauti su hi­per­vi­zo­riu­mi per Virtio API. KVM dau­giau­sia naudoja pa­ra­vir­tu­ali­za­ci­ją įvesties ir išvesties įren­gi­niams, pvz., tinklo sąsajai. Todėl kalbant apie KVM, žmonės dažnai apibūdina ją kaip nau­do­jan­čią dalinę pa­ra­vir­tu­ali­za­ci­ją.

KVM ir Xen, kaip palyginti jų našumą

Pag­rin­di­nis skirtumas tarp šių dviejų hi­per­vi­zo­rių yra tai, kur jie veikia prog­ra­mi­nės įrangos steke. KVM yra in­te­gruo­tas į Linux branduolį ir naudoja apa­ra­tū­ros palaikomą vir­tu­ali­za­ci­ją, kad vir­tu­ali­zuo­tų daugybę apa­ra­tū­ros kom­po­nen­tų be žymių našumo praradimų. Pag­rin­di­nės IO sąsajos yra pa­ra­vir­tu­ali­zuo­tos, o tai daugumai serverių programų yra bene svar­biau­sias aspektas.

Kita vertus, Xen tra­di­ciš­kai įdie­gia­mas ope­ra­ci­nė­je sistemoje kaip 1 tipo hi­per­vi­zo­rius. Tai reiškia , kad hi­per­vi­zo­rius pats valdo apa­ra­tū­ros išteklių pa­skirs­ty­mą. Teoriškai tai leidžia Xen už­tik­rin­ti efek­ty­ves­nį ir našesnį ryšį su aparatūra. Tačiau KVM Virtio tvar­kyk­lės ir apa­ra­tū­ros palaikoma vir­tu­ali­za­ci­ja užtikrina tokį patį našumą kaip ir Xen .

CPU tvir­ti­ni­mas

Nepaisant panašaus našumo lygio, šie du hi­per­vi­zo­riai neveikia vienodai visais atvejais. Kalbant apie CPU pri­sky­ri­mą, KVM savo var­to­to­jams siūlo daugiau galimybių. Nau­do­da­mas CPU pri­sky­ri­mą, KVM gali priskirti fizinį pro­ce­so­rių (arba pro­ce­so­riaus branduolį) vir­tu­ali­zuo­tam pro­ce­so­riui, už­tik­rin­da­mas iš­skir­ti­nį naudojimą tai vir­tu­aliai sistemai. Iš šių dviejų hi­per­vi­zo­rių tik KVM siūlo šią funkciją, kuri yra ypač naudinga CPU in­ten­sy­vioms prog­ra­moms.

Tinklo našumas

Tinklo našumo atžvilgiu Xen yra pir­mau­jan­tis. Nors abu hi­per­vi­zo­riai teikia pa­ra­vir­tu­ali­zuo­tas tinklo sąsajas, kiekviena pagal KVM vir­tu­ali­zuo­ta sistema turi savo tinklo įrenginį. Naudojant Xen, visos svečių sistemos dalijasi viena virtualia tinklo sąsaja, o tai padidina našumą.

Santrauka

Klausimas, kuris hi­per­vi­zo­rius yra geresnis, priklauso nuo jūsų rei­ka­la­vi­mų. Rinkos lyderis KVM yra in­te­gruo­tas į Linux branduolį ir siūlo visiškos vir­tu­ali­za­ci­jos galimybę. Šie aspektai iš esmės pa­leng­vi­na jo naudojimą.

Tačiau Xen visiškos pa­ra­vir­tu­ali­za­ci­jos galimybės reiškia, kad teoriškai jis gali už­tik­rin­ti geresnį našumą. Renkantis hi­per­vi­zo­rių, svar­biau­si veiksniai, į kuriuos reikėtų at­si­žvelg­ti, yra programos, kurias norite vir­tu­ali­zuo­ti, ir jūsų patirtis.

Tip

Ieškote hi­per­vi­zo­riaus al­ter­na­ty­vos, kad ga­lė­tu­mė­te perkelti savo IT inf­rastruk­tū­rą į debesiją? Nau­do­ki­tės IONOS debesų mig­ra­ci­jos paslauga ir mė­gau­ki­tės pri­ei­na­mo­mis ko­ky­biš­ko­mis pa­slau­go­mis bei aukš­čiau­sio lygio saugumu.

Go to Main Menu