Virtualizáció

A virtualizáció a hardveres megvalósítástól elvonatkoztatott számítási erőforrások  halmazának vagy logikai kombinációjának biztosítása, ugyanakkor az ugyanazon a fizikai erőforráson futó számítási folyamatok egymástól való logikai elkülönítése.

A virtualizáció alkalmazására példa az a lehetőség, hogy több operációs rendszert futtathatunk egy számítógépen: míg az ilyen vendég operációs rendszerek mindegyik példánya saját logikai erőforráskészlettel (processzor, RAM, tárolóeszközök) működik, amelyek biztosítása a hardver szinten elérhető közös készletből a gazdagép operációs rendszer - hypervisor vezérli . Adathálózatok , tárolóhálózatok , platform- és alkalmazásszoftverek ( emuláció ) is virtualizálhatók .

A virtualizáció típusai

Felszerelés Operációs rendszer Szoftver memória Tárolórendszerek Adatbázis Háló

Operációs rendszer virtualizáció

Az operációs rendszerek virtualizálására egy sor megközelítést alkalmaznak, amelyek a megvalósítás típusa szerint szoftverre és hardverre oszlanak [3] .

Szoftvervirtualizáció

Dinamikus fordítás

Dinamikus ( bináris ) fordítás esetén a vendég operációs rendszer problémás parancsait a hypervisor elfogja . Miután ezeket a parancsokat biztonságosakra cserélték, az irányítás visszakerül a vendégrendszerhez.

Paravirtualizáció

A paravirtualizáció egy virtualizációs technika, amelyben a vendég operációs rendszereket felkészítik a virtualizált környezetben való futásra, amelyhez a kernel kissé módosul. Az operációs rendszer kölcsönhatásba lép a hypervisor programmal, amely vendég API -t biztosít számára , ahelyett, hogy közvetlenül használná az erőforrásokat, például a memórialaptáblázatot.

A paravirtualizációs módszer nagyobb teljesítmény elérését teszi lehetővé, mint a dinamikus fordítási módszer.

A paravirtualizációs módszer csak akkor alkalmazható, ha a vendég operációs rendszerek licenc szerint módosítható nyílt forráskódokkal rendelkeznek, vagy a hypervisor és a vendég operációs rendszert ugyanaz a gyártó fejleszti, figyelembe véve a vendégrendszer paravirtualizálásának lehetőségét ( bár feltéve, hogy a hypervisor alatt alacsonyabb szintű hipervizor fut, akkor magának a hipervizornak a paravirtualizálása).

A kifejezés először a Denali projektben jelent meg .

Beépített virtualizáció

Előnyök:

  • Erőforrások megosztása több vendég operációs rendszer között (könyvtárak, nyomtatók stb.).
  • Kényelmes interfész a különböző rendszerek alkalmazásablakaihoz (átfedő alkalmazásablakok, az ablakok ugyanolyan minimalizálása, mint a gazdarendszerben).
  • A hardverplatformra finomhangolva a teljesítmény alig tér el az eredeti operációs rendszertől. Gyors váltás a rendszerek között (kevesebb, mint egy másodperc).
  • Egy egyszerű eljárás a vendég operációs rendszer frissítéséhez.
  • Kétirányú virtualizáció (az egyik rendszerből származó alkalmazások futnak egy másik rendszeren és fordítva).

Megvalósítások:

Hardver virtualizáció

Előnyök:

  • Egyszerűsítse a virtualizációs szoftverplatformok fejlesztését azáltal, hogy hardveralapú kezelőfelületeket és támogatást biztosít a virtualizált vendégek számára. Ez csökkenti a virtualizációs rendszerek fejlesztésének bonyolultságát és idejét.
  • A virtualizációs platformok teljesítményének növelése. A virtuális vendégrendszereket közvetlenül egy kis szoftveres köztes szoftverréteg, a hypervisor kezeli, ami teljesítménynövekedést eredményez.
  • Javul a biztonság, lehetővé válik a több futó, független virtualizációs platform közötti váltás hardver szinten. A virtuális gépek mindegyike önállóan, a saját hardvererőforrás-terében, egymástól teljesen elszigetelve működhet. Ez lehetővé teszi a teljesítményveszteségek kiküszöbölését a gazdagép platform karbantartása és a biztonság növelése érdekében.
  • A vendégrendszer nincs kötve a gazdagép platform architektúrájához és a virtualizációs platform megvalósításához. A hardveres virtualizációs technológia lehetővé teszi a 64 bites vendégek futtatását 32 bites gazdarendszereken (32 bites gazdavirtualizációs környezetekkel).

Technológia:

Hardveres virtualizációt használó platformok:

Tárolóvirtualizáció

A  tárolóvirtualizáció – az operációs rendszer szintű virtualizáció – lehetővé teszi elszigetelt virtuális rendszerek futtatását egyetlen fizikai gazdagépen, de nem teszi lehetővé az operációs rendszerek futtatását olyan kernelekkel, amelyek eltérnek az alapul szolgáló operációs rendszer kerneltípusától. Ezzel a megközelítéssel nincs külön hypervisor réteg, hanem maga a gazdagép operációs rendszer felelős a hardver erőforrások több vendégrendszer (konténer) közötti megosztásáért, és biztosítja azok függetlenségét. Egyes megvalósítások a FreeBSD Jail (2000), Virtuozzo Containers (2000), Solaris Containers (2005), Linux-VServer , OpenVZ (2005), LXC (2008), iCore Virtual Accounts (2008), Docker (2013).

A virtualizáció alkalmazásai

Virtuális gépek

A virtuális gép egy olyan környezet, amely hardverként jelenik meg a „vendég” operációs rendszer számára. Valójában azonban ez egy szoftverkörnyezet, amelyet a gazdagép rendszerszoftver emulál. Ennek az emulációnak elég robusztusnak kell lennie ahhoz, hogy a vendég illesztőprogramok stabilan működjenek. Paravirtualizáció használatakor a virtuális gép nem emulálja a hardvert, hanem felajánlja egy speciális API használatát .

Alkalmazási példák:

  • Tesztlaborok és képzés: A virtuális gépeken végzett tesztelés hasznos az operációs rendszer beállításait befolyásoló alkalmazások, például a telepítő alkalmazások teszteléséhez. A virtuális gépek telepítésének egyszerűsége miatt gyakran használják új termékek és technológiák betanítására.
  • Előre telepített szoftverek terjesztése: Sok szoftverfejlesztő kész virtuálisgép-képeket készít előre telepített termékekkel, és ingyenesen vagy kereskedelmi forgalomba bocsátja. Ezeket a szolgáltatásokat a Vmware VMTN vagy a Parallels PTN biztosítja .

Erőforrás virtualizáció

Az erőforrás-virtualizáció (vagy erőforrás-megosztás , eng.  particionálás ) egy fizikai csomópont több részre osztásaként ábrázolható, amelyek mindegyike külön szerverként látható a tulajdonos számára. Ez nem egy virtuális gép technológia, az operációs rendszer kernel szintjén valósul meg.

A 2-es típusú hipervizorral rendelkező rendszereken mind a vendég, mind a hypervisor operációs rendszer fizikai erőforrásokat foglal el, és külön licencelést igényel. Az operációs rendszer kernel szintjén működő virtuális szerverek szinte soha nem veszítenek sebességből, ami lehetővé teszi több száz virtuális szerver futtatását egy fizikai szerveren, amelyekhez nincs szükség további licencekre.

A lemezterület vagy a hálózati sávszélesség több kisebb komponensre oszlik, így könnyebben használhatóak az azonos típusú erőforrások.

Például az erőforrás-megosztás megvalósítása az OpenSolaris Network Virtualization and Resource Control (Project Crossbow) programhoz köthető , amely lehetővé teszi több virtuális hálózati interfész létrehozását egy fizikai alapon.

Sok erőforrás összevonása, elosztása vagy összeadása nagy erőforrásokká, vagy erőforrások összevonása. Például a szimmetrikus többprocesszoros rendszerek több processzort kombinálnak; A RAID- és lemezkezelők sok lemezt egyetlen nagy logikai lemezre egyesítenek; A RAID és a hálózat több csatornát használ, amelyek egy szélessávú csatornaként jelennek meg. Meta szinten a számítógép-fürtök a fentiek mindegyikét elvégzik. Néha ez magában foglalja azokat a hálózati fájlrendszereket is, amelyek azoktól az adattárolóktól származnak, amelyekre épülnek, például Vmware VMFS , Solaris / OpenSolaris ZFS , NetApp WAFL .

Alkalmazásvirtualizáció

Az  alkalmazásvirtualizáció egy olyan alkalmazás használatának folyamata, amely az operációs rendszerre telepítést igénylő helyett telepítést nem igénylővé (csak a futtatáshoz szükséges) lett átalakítva. Az alkalmazásvirtualizáláshoz a virtualizáló szoftver meghatározza, hogy a virtualizálandó alkalmazás telepítésekor mely operációs rendszer összetevőkre van szükség, és emulálja azokat. Így létrejön a szükséges speciális környezet az adott virtualizált alkalmazás számára, és ezáltal biztosított az alkalmazás működésének elszigetelése. Virtuális alkalmazás létrehozásához a virtualizáltat egy tárolóba kell helyezni, amelyet általában mappaként terveztek. Egy virtuális alkalmazás indításakor elindul a virtualizálandó alkalmazás és a munkakörnyezetét képező tároló. A futtatókörnyezet elindítja és közzéteszi a korábban létrehozott helyi erőforrásokat, amelyek magukban foglalják a rendszerleíró kulcsokat, fájlokat és az alkalmazás indításához és futtatásához szükséges egyéb összetevőket. Ez a virtuális környezet rétegként működik az alkalmazás és az operációs rendszer között, így elkerülhető az alkalmazások közötti konfliktus. Az alkalmazásvirtualizációt például a Citrix XenApp [6] , a SoftGrid [7] és a VMware ThinApp programok biztosítják .

Előnyök:

  • az alkalmazás végrehajtásának elkülönítése: inkompatibilitások és konfliktusok hiánya;
  • minden alkalommal eredeti formájában: a rendszerleíró adatbázis nincs zsúfolt, nincsenek konfigurációs fájlok - ez szükséges a szerver számára;
  • alacsonyabb erőforrásköltségek a teljes operációs rendszer emulálásához képest.

Jegyzetek

  1. Enterprise Systems Group fehér könyv, 5. oldal (a hivatkozás nem elérhető) . Az Enterprise Strategy Group fehér könyve, amelyet Mark Peters írt és 2011. augusztus 20-án tett közzé. Az eredetiből archiválva : 2012. március 30. 
  2. dataWerks – innovatív adatvirtualizációs megoldások, amelyek radikálisan új megközelítést kínálnak a valós idejű üzleti betekintések biztosításához  (  hozzáférhetetlen hivatkozás) . www.datawerks.com. Letöltve: 2017. december 12. Az eredetiből archiválva : 2017. december 12..
  3. Natalia Elmanova, Sergey Pakhomov Virtual Machines 2007. Archiválva : 2011. október 7. a Wayback Machine ComputerPress 9'2007-ben
  4. www.bluestacks.com/technology.html . Letöltve: 2011. május 31. Az eredetiből archiválva : 2011. május 28..
  5. Képernyőképek a BlueStacksről  (lefelé mutató link)
  6. Citrix News (www.citrixnews.ru) - 2008.09.30 . (hozzáférhetetlen link) . Letöltve: 2011. június 20. Az eredetiből archiválva : 2014. február 2.. 
  7. John Saville – SoftGrid virtuális alkalmazások. - 25.12.07 . Letöltve: 2010. június 13. Az eredetiből archiválva : 2010. szeptember 19..

Linkek