2017 m. liepos 11 d.

Populiariausi visiškos virtualizacijos sprendimai [4 dalis]

Šioje, paskutinėje virtualizacijos apžvalgos straipsnių serijos dalyje, trumpai apžvelgti populiariausi pirmojo tipo {type-1} hipervizoriai visiškai virtualizacijai {full virtualization} realizuoti virš įprastos x86 kompiuterių platformos.

Linux KVM


 

Linux KVM (Linux Kernel-based Virtual Machine) yra vienas populiariausių pirmojo tipo hipervizorius visiškai virtualizacijai realizuoti. Jis plėtojamas nemokamos ir atviros programinės įrangos principais, todėl vartotojams nieko nekainuoja, taip pat turi nemokamu, pakankamai išplėtotų administracinių įrankių, o visiškos virtualizacijos realizacijos našumu ir efektyvumu nenusileidžia brangiems mokamiems produktams. Skirtingai nei kitas itin populiarus visiškos virtualizacijos hipervizorius – VMware ESXi, KVM nesugeba realizuoti visiškos virtualizacijos be aparatinio lygmens palaikymo, tačiau dauguma modernių procesorių jį turi, išskyrus itin apkarpytus mobiliųjų prietaisų procesorių modelius.
KVM, kaip pagrindą savo virtualizacijos sprendimams plėtoti, pasirinko ir Red Hat kompanija, iš pradžių stipriai savų programuotojų galvomis ir rankomis investavusi į Xen projektą vėliau jo visiškai atsisakė savo plėtojamoje Linux operacinėje sistemoje. Todėl šiai dienai Red Hat Enterprise Linux distribucija oficialiai palaiko ir siūlo tik KVM pagrindų realizuojamą virtualizacijos sprendimą (Red Hat Virtualization).
Kaip išduoda skyrelio pavadinimas, KVM virtualizacijos sprendimas gaunamas į Linux operacinės sistemos branduolį įdiegus specialų virtualizaciją palaikantį modulį {kernel module}, taip iš esmės bendro pobūdžio Linux OS paverčiant į pirmosios klasės hipervizorių. Įdomu tai, jog Linux OS su KVM branduolio moduliu {kernel module} išlieka pilnavertė bendro pobūdžio operacinė sistema, kurioje VM operacijos vykdomos lygiagrečiai su kitais procesais. Iš tiesų, KVM modulis pagal nutylėjimą įdiegtas į standartinį Linux branduolį nuo 2007 metų.
Kaip ir daugelyje šiuolaikinių visiškos virtualizacijos sprendimų, kartu su KVM galima naudoti paravirtualizuotas tvarkykles {paravirtualized drivers}, su kuriomis daug našiau vykdomos VM operacinės sistemos prieigos funkcijos prie įvesties/išvesties įtaisų (tinklo plokštės, disko bei kt.). Red Hat virtualizacijos sprendimas kartu su KVM naudoja VirtIO paravirtualizuotas įtaisų tvarkykles, prieinamas visoms populiariausioms serverių sistemoms (Linux, BSD, Windows Server).
Linux KVM palaiko itin platų spektrą OS virtualiose mašinose vykdyti: MS Windows, Linux, BSD, Solaris, Haiku, Android, GNU/Hurd, Minix, ReactOS, OS X bei keletą kitų.

VMware ESXi


 

VMware – virtualizacijos pionierius, kompanija savo veiklą pradėjo 1998 metais, jos produktai virtualizacijai turbūt geriausiai žinomi už techninės srities specialistų. Šiandien VMware, stambi korporacija, siūlo visą spektrą produktų kompiuterio platformos virtualizacijai, bei visai tinklo infrastruktūrai. Populiariausias jos produktas – ESXi, visiškos virtualizacijos savasis hipervizorius.
VMware ESXi realizuoja visišką virtualizaciją su aparatinės įrangos palaikymu, nors gali pakankamai efektyviai realizuoti visišką virtualizaciją ir be aparatinės įrangos palaikymo – tai išskirtinis VMware sprendimų bruožas, ilgą laiką užtikrinęs jai lyderio poziciją. Nūdiena VMware ESXi išnaudoja x86 aparatinio lygmens palaikymą virtualizacijai kartu su paravirtualizuotomis įtaisų tvarkyklėmis {paravirtualized drivers} įvesties/išvesties funkcijoms paspartinti.
VMware ESXi hipervizorius yra nemokamas, kainuoja tik papildomi administraciniai įrankiai ir pažangios funkcijos virtualizuotos infrastruktūros valdymui. Papildomus VMware ESXi hipervizoriaus administravimo įrankius, mokamus ir nemokamus, siūlo ir trečiosios šalys.
Taigi ESXi yra dedikuota virtualizacijos platforma, įdiegiama betarpiškai virš fizinės sistemos, kurios valdymo galimybės priklauso nuo pasirinktų administracinių įrankių.
VMware ESXi palaiko populiariausias Windows OS ir Linux distribucijas virtualiose mašinose vykdyti: Windows/Windows Server, Linux (SLES, RHEL, CentOS, Debian, Ubuntu) ir Oracle Linux.

Xen Project


 

Xen Project, arba tiesiog Xen, yra atvirojo kodo virtualizacijos sprendimas ir siūlantis paravirtualizacijos bei visiškos virtualizacijos metodų realizaciją. Paravirtualizacija tik tam pritaikytoms OS, o visišką virtualizaciją visos įprastoms (nemodifikuotoms) operacinėms sistemoms, jei aparatinė įranga, virš kurios veikia Xen, palaiko virtualizaciją. Taip pat yra vadinamųjų hibridinių variantų, tarp para- ir visiškos virtualizacijos, kai visiška virtualizacija naudoja paravirtualizuotas įtaisų tvarkykles {paravirtualized drivers} įvesties/išvesties funkcijoms paspartinti.
Pirmoji Xen sprendimo versija pasirodė 2003 metais, kai grupė Kembridžo universiteto akademiku po tiriamojo projekto įkūrė XenSource, Inc. organizaciją, kuri globojo Xen kaip atvirojo kodo projektą (Xen Project). Tai vienas iš seniausių ir ilgiausiai plėtojamų hipervizorių, ir kadangi tai atvirojo kodo projektas, šiandien yra ne viena komercinė Xen versija, geriausiai iš jų žinoma Citrix XenServer. Citrix įsigijo XenSource, Inc. 2007 metais ir integravo Xen hipervizorių į savo produktus bei kartu palaikė Xen nemokamos versijos plėtojimą. 2013 metais Xen projektą priglaudė labai svarbus atvirojo kodo katalizatorius – Linux Foundation organizacija, bei globoja iki šiol.
Citrix XenServer tai dedikuota virtualizacijos platforma, plėtojama Citrix kompanijos pelno tikslais. Tačiau Xen hipervizorius plėtojamas atvirojo kodo bendruomenės, ir realizuojamas įvairiose formose. Dažniausiai su Linux (Xen palaikymas integruotas į Linux kodą) ir Unix operacinėmis sistemomis: Debian, FreeBSD, NetBSD, openSUSE, OpenSolaris bei daug kitų Unix tipo OS.
Xen hipervizoriaus palaikymas operacinėms sistemos, vykdyti virtualiose mašinose, itin platus: MS Windows, Linux, GNU/Hurd, NetBSD, NetWare, OpenSolaris, OpenBSD bei keletas kitų.

Microsoft Hyper-V


 

Microsoft, programinės įrangos milžinė, negalėjo sau leisti ignoruoti virtualizacijos tendencijų. Todėl nuosekliai plėtojo savo virtualizacijos sprendimus, pradedant Microsoft Virtual PC ir baigiant 2008 metais pristatytu Hyper-V, turbūt sėkmingiausiu Microsoft virtualizacijos produktu.
Microsoft Hyper-V yra pirmojo tipo hipervizorius integruotas į Microsoft Windows Server OS, bei keliose kitose Microsoft operacinių sistemų distribucijose kaip Windows OS komponentas ir rekomenduojamas visiškos virtualizacijos sprendimas Microsoft programinei įrangai.
Hyper-V hipervizorius siūlomas ir kaip pavienis produktas Microsoft Hyper-V Server vardu. Praktiškai tai dar viena, virtualizacijai specializuota, Windows Server versija kurioje pašalinta kaip galima daugiau kitų Windows Server OS komponentų tiesiogiai nesusijusių su virtualizacija. Taip sukuriant minimalią virtualizacijos platformą, efektyviam fizinės sistemos išteklių panaudojimui virtualizacijoje – nukreipiant visus išteklius į virtualių mašinų operacijas.
Hyper-V palaikomos OS virtualiose mašinose vykdyti: MS Windows, Linux (SUSE, Red Hat, CentOS, Debian, Ubuntu) ir Oracle Linux.


Autoriaus nuomone KVM hipervizorius daugeliu atveju yra tinkamiausias pasirinkimas, dėl plačios atvirojo kodo bendruomenės ir sunkiasvorių verslo kompanijų palaikymo. KVM virtualizacijos našumas ir administraciniai įrankiai gerai išvystyti, be to, tai populiariausias virtualizacijos sprendimas kompiuterijos infrastruktūroje. Kita vertus, visi virtualizacijos sprendimai turi savų privalumų ir savų minusų, pagal kuriuos atitinkamai yra taikomi IKT infrastruktūroje.


Kalbant apie administracinius Linux KVM visiškos virtualizacijos įrankius, sunku neužsiminti apie Proxmox Virtual Environment – virtualios terpės valdymo panelė. Tai aktyviai plėtojamas atvirojo kodo produktas, mėgstamas ir vertinamas sistemų administratorių. Tinkamas realizuoti virtualizaciją tiek smulkių tiek didelių organizacijų kompiuterijos infrastruktūroje. Proxmox VE pasirinktinai realizuoja visus tris anksčiau apžvelgtus virtualizacijos metodus: 
  • Visišką virtualizaciją realizuoja KVM
  • Paravirtualizaciją realizuoja Xen
  • OS lygmens, priklausomai nuo naudojamos versijos, OpenVZ arba LXC (Linux container).
Plačiau Proxmox Virtual Environment funkcijų čia nenagrinėsime, virtualizacijos valdymo ir administracijos įrankių tema verta atskiro rašto darbo.



Straipsnių serija skirta kompiuterių platformos virtualizacijai apžvelgti:

Komentarų nėra:

Rašyti komentarą