A nagygépes rendszerek korában el sem tudtuk képzelni a számítástechnikát a virtualizáció nélkül. A PC megjelenésével a hangsúly áttevődött a személyes munkaállomásokra, az elérhető, megfogható gépekre, majd nemrég ismét nagyot fordult a világ: a virtuális gépek megint megjelentek. De miért is jó ez nekünk? A virtualizáció nem más, mint valamilyen operációs környezet megteremtése emuláció vagy a futtató platform erőforrásainak megosztása révén. A gyakorlatban kétféle virtualizációt ismerünk: a nagygépes rendszerek (AS/400, Sun) megoldásait, ahol a hardver és az operációs rendszer, illetve a felügyeleti eszközök lehetőséget nyújtanak a gép erőforrásainak allokálására (pl. a 32 processzorból nyolcat az egyik virtuális géphez, a többit egy másikhoz rendeljük), továbbá az általában PC-kre készült szoftveres alkalmazásokat. Utóbbiak közül néhányan egy teljes hardverkörnyezet emulációját valósítják meg (pl. VMWare), de a legújabb technológia, a Xen ennél is tovább megy.Mielőtt azonban bemutatjuk a Xent, vagyük számba, tulajdonképpen mikor is használható a virtualizáció: - tesztelésnél - hibatűrő rendszerek szükségessége esetén - terhelésmegosztáskor - szerverkonszolidáció során - biztonságos környezet kialakításakor Ugye nem kell különösebben ecsetelni, hogy egy átlagos számítógép működése során teljesítményének mindössze 30%-át használja ki? Milyen jó lenne, ha a gép üzemidejének nagy részét hasznos munkával töltené, csökkentve ezzel a fenntartási és üzemeltetési költségeket! Nos, a virtualizáció erre is megoldás.A Xen a University of Cambridge Computer Laboratory (http://www.cl.cam.ac.uk/Research/SRG/netos/xen/) berkein belül született. Feljesztőinek célja egy nyílt forrású, megbízható, az emulációt teljesen kikerülő virtuális felügyeleti rendszer létrehozása volt az x86-os architektúra alá. Miután működése egy része kernelszinten zajlik, nem foglal felesleges erőforrásokat az operációs rendszerből, nem "lőhető ki" egyszerűen, szemben más megoldásokkal. A Xen Linux alatt fut, 2-s sorozatú verziói jelen pillanatban a Linux, FreeBSD, NetBSD operációs rendszerek virtuális gépben történő futtatását támogatják, a fejlesztői 3-as sorozat azonban bármilyen, az Intel VTX specifikációnak megfelelő rendszert tud majd működtetni. A technológia annyira kiforrott, hogy a speciális alkalmazási területeken kívül megjelent már hazánkban is virtuálisgép-szolgáltató cég, amelytől egy-egy teljes értékű gépet bérelhetünk munkánkhoz. A fejlesztők mellé pedig nem kisebb nevek álltak, mint pl. az IBM és a Red Hat, sőt, utóbbi erősen szorgalmazza a Xen standard Linux kernelbe történő beépítését, a Fedora Core 4 pedig már alapból tartalmazza a virtuális környezet kialakításához szükséges eszközöket!
A fenti ábrán látható, hogy a Xen Virtual Machine Monitor nevű része a hardver és a futtatott operációs rendszer között helyezkedik el. Bizonyára többen meglepődve keresik a "legfőbb" rendszert. Nos, itt ér minket az első meglepetés: a gazdarendszer sem más, mint egy privilegizált virtuális gép.
Mielőtt továbbmennénk, célszerű bizonyos alapfogalmakat tisztáznunk. A Xen terminológiájában a virtuális környezeteket domaineknek hívunk, a gazdarendszert (host) domain 0, a vendégeket (guest) domain U-nak nevezzük, mindegyiket egy-egy sorszámmal jelölve. A kernelszintű hypervisor fogja felügyelni a gépek működését, melyhez a démonként futó xend fog asszisztálni.
(folytatjuk)
Béres László
RHCE
beres.laszlo@sys-admin.hu