Virtualizcis technolgik s alkalmazsaik Kiszolgl oldali virtualizci Tth

  • Slides: 45
Download presentation
Virtualizációs technológiák és alkalmazásaik Kiszolgáló oldali virtualizáció Tóth Dániel, Micskei Zoltán, Szatmári Zoltán Budapesti

Virtualizációs technológiák és alkalmazásaik Kiszolgáló oldali virtualizáció Tóth Dániel, Micskei Zoltán, Szatmári Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi szerver architektúrája Microsoft Hyper-V architektúra Erőforrás gazdálkodás 2

Szerver virtualizáció § Miben más, mint a desktop virtualizáció? o „Konszolidáció” – sok virtuális

Szerver virtualizáció § Miben más, mint a desktop virtualizáció? o „Konszolidáció” – sok virtuális gép együttes futtatása, erőforrás hatékonyság, takarékosság o Hangsúlyos a távoli elérés, helyi hozzáférés teljesen háttérbe szorul o Az előző következménye: kevesebb fajta hardvert kell támogatni, nincs „multimédiás” igény o Karbantartási feladatok egyszerűsítése, automatizálhatóság o Menedzsment: monitorozás, távoli beavatkozás, terhelés és teljesítményadatok figyelése o „Integráció” – a virtualizált szerverek egy nagyobb infrastruktúra részei o Hozzáférés vezérlés, biztonság, a rendszernek sok (nem feltétlenül megbízható) felhasználója lehet egyszerre o Megbízható, hibatűrő működés 3

Emlékeztető – a két fő architektúra § Kétféle megközelítés: App. OS Virt. App. Menedzsment

Emlékeztető – a két fő architektúra § Kétféle megközelítés: App. OS Virt. App. Menedzsment App. OS OS Menedzsment OS OS OS Virt. szoftver Hardver Bare-metal virtualizáció Hosted virtualizáció Jellemzően kliens megoldások: VMware Workstation, Server, Player, Sun Virtual. Box, MS Virtual. PC, KVM, UML Jellemzően szerver megoldások: VMware ESX Server, Xen Enterprise, MS Hyper-V 4

Emlékeztető – a két fő architektúra Hosted § Interaktív alkalmazásnál előnyös Bare-metal § Interaktív

Emlékeztető – a két fő architektúra Hosted § Interaktív alkalmazásnál előnyös Bare-metal § Interaktív alkalmazások nehézkesek § Jellemzően kevés virtuális gép fut egyszerre § Jó skálázhatóság o távoli hozzáférés kell (lokális gépen megjelenítésnél is!) o teljesen speciális saját környezet, csak virtuális gépek futtatására o nincsenek finomított OS erőforrások o Hardver támogatást külön meg kell oldani o helyi hozzáférés, gyors grafika, hang stb. o OS szintű erőforrások biztosítása o Integráció asztali munkakörnyezetbe o Hardver meghajtókat a hoszt OS kezeli o Nincs hoszt OS, ami erőforrást fogyasztana o Saját, VM-ek számára optimalizált ütemezők, erőforrás -elosztók o sok virtuális gépnél már rossz skálázódás o Jellemzően az OS alkalmazásokhoz kitalált ütemezőit próbálja VM-ek erőforrásgazdálkodására használni 5

Szerver virtualizáció § Platform virtualizáción alapuló megoldások: o VMware ESX Server, ESXi – bare

Szerver virtualizáció § Platform virtualizáción alapuló megoldások: o VMware ESX Server, ESXi – bare metal o Xen – bare metal • Xen. org – bare metal • Citrix Xen. Server – bare metal • Oracle VM Server (Xen alapú) – bare metal o Microsoft Hyper-V – bare metal o IBM LPAR, DLPAR – bare metal o… 6

Minimális konzolos beállítási lehetőségek 7

Minimális konzolos beállítási lehetőségek 7

Távoli hozzáférés megvalósítási lehetőségek Beépített távoli menedzsment hardver Távoli elérés Ethernet hálózaton keresztül (IPMI,

Távoli hozzáférés megvalósítási lehetőségek Beépített távoli menedzsment hardver Távoli elérés Ethernet hálózaton keresztül (IPMI, Intel AMT) Hálózat • Távolság: TCP/IP felett akárhova eljuttatható • Több gép elérése: külön IP címek egy hálózaton • Lehet közös az üzemi hálózattal, lehet dedikált menedzsment hálózat • Biztonság fontos kérdéssé válik • Többnyire csak szöveges felület (BIOS is) • Grafikus kép továbbító külön opció Alkalmazások Operációs rendszer Billentyűzet, egér, video BIOS Távoli elérés hardver Hardver Dedikált kliensprogram Hálózati interfész 8

Példa: SUN ILO 9

Példa: SUN ILO 9

SUN ILO működés közben 10

SUN ILO működés közben 10

Távoli hozzáférés megvalósítási lehetőségek Virtuális gép virtuális konzolja Alkalmazások Operációs rendszer Virtuális gép Virtualizációs

Távoli hozzáférés megvalósítási lehetőségek Virtuális gép virtuális konzolja Alkalmazások Operációs rendszer Virtuális gép Virtualizációs keretrendszer BIOS Hardver BIOS Billentyűzet, egér, video Hálózat • Előnyei, hátrányai lásd előbb • Virtuális géphez teljes hozzáférés (BIOS, szöveges, grafikus) • Működő és konfigurált hálózatot csak a virtualizációs keretrendszer szintjén igényel, a vendég OS szintjén nem Távoli elérés szerver Hálózati interfész Billentyűzet, egér, video Dedikált kliensprogram 11

Operációs rendszer távoli elérése Vendég OS szintű távoli elérés Alkalmazások Távoli elérés szerver Hálózat

Operációs rendszer távoli elérése Vendég OS szintű távoli elérés Alkalmazások Távoli elérés szerver Hálózat • Előnyei és hátrányai lásd előbb • Szöveges és grafikus kép továbbítás • Az operációs rendszernek működnie kell ÉS konfigurált hálózattal kell rendelkeznie Operációs rendszer BIOS Hálózati interfész Virtuális Hardver Virtualizációs keretrendszer Dedikált kliensprogram Hálózati interfész 12

Nagy integrált rendszerek kiépítése § Szerver virtualizációnál egy fizikai gép ritkán elég § Jó,

Nagy integrált rendszerek kiépítése § Szerver virtualizációnál egy fizikai gép ritkán elég § Jó, ha egyes erőforrások: o központilag kezeltek o átcsoportosíthatóak, hozzárendelések megváltoztathatóak o megoszthatóak, több helyről is egyformán elérhetőek § Példák o háttértár: sok kicsi, gépekben elszórt merevlemez helyett egy-egy nagy tároló alrendszer (storage system/disk array) o hálózatok: minden hoszton egyformán elérhetőek legyenek o magasabb szinten: jogosultságkezelés, felhasználói fiókok címtára 13

Háttértár virtualizáció § Elterjedt megoldások: o SAN – Storage Area Network, blokkos eszközt biztosít

Háttértár virtualizáció § Elterjedt megoldások: o SAN – Storage Area Network, blokkos eszközt biztosít o NAS – Network Attached Storage, fájlrendszert biztosít § Példa: Egyszerűsített háttértár stack Pl. : Samba, NFS, FTP Fájlrendszer Logikai kötet(ek) Partíció Pl. : i. SCSI, Ao. E Partíció Fizikai eszköz 14 ~kliens

i. SCSI – SAN megoldás § i. SCSI – egy elterjedt SAN megoldás o

i. SCSI – SAN megoldás § i. SCSI – egy elterjedt SAN megoldás o Blokkos eszközök biztosítása TCP/IP hálózatok felett o Fájlrendszernek támogatnia kell a több gépről történő elérést • Pl. VMFS, GFS fájlrendszer HDD ==== HDD i. SCSI portal / target i. SCSI initiator ==== Fizikai tár ~szerver ~kliens 15

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi szerver architektúrája Microsoft Hyper-V architektúra Erőforrás gazdálkodás 16

VMware ESX architektúrája Service Console (Tomcat, SSH. . . ) Alkalmazások Guest. OS OS

VMware ESX architektúrája Service Console (Tomcat, SSH. . . ) Alkalmazások Guest. OS OS Guest OS COS (Linux 2. 4) Driver Worlds Helper Worlds VMkernel Hardver (x 86 CPU, SCSI, Ethernet) 17

VMware ESXi architektúrája Alkalmazások Service Console worlds Guest. OS OS Guest OS Driver Worlds

VMware ESXi architektúrája Alkalmazások Service Console worlds Guest. OS OS Guest OS Driver Worlds Helper Worlds VMkernel Hardver (x 86 CPU, SCSI, Ethernet, SATA) 18

VMware ESXi 5 architektúrája (folyt. ) Forrás: VMware ESXi 5. 0 Operations Guide 19

VMware ESXi 5 architektúrája (folyt. ) Forrás: VMware ESXi 5. 0 Operations Guide 19

VMware ESX, ESXi – általános tulajdonságok § Mindkét esetben saját eszközmeghajtókat igényel o emiatt

VMware ESX, ESXi – általános tulajdonságok § Mindkét esetben saját eszközmeghajtókat igényel o emiatt elég szűk is a támogatott hardverek listája! § A VMkernel egy mikrokernel, a driverek külön folyamatként futnak felette (ennek részben licensz okai is vannak, Linux kernelből vettek át meghajtókat) o Folyamat a VMware szóhasználatában: „world” § Teljesen távoli elérésre alapozott rendszer o csak szöveges konzol van a lokális gépen, o de nem ezt ajánlott üzemszerűen használni, hanem a dedikált kliensprogramot (Virtual Infrastructure Client) o a vendégek konzoljához lokálisan egyáltalán nem is lehet hozzáférni § A virtuális gépek formátuma (megkötésekkel) kompatibilis a Workstation/Server/Player formátumával § Saját fájlrendszeren (VMFS 3) tárolja a virtuális gépeket o Lehetőség van rá, hogy több ESX elosztottan használja ugyanazt a tárhelyet egyszerre! 20

VMware ESX, ESXi – eltérések § Az ESX-ben Service Console egy teljes Linux-alapú rendszer

VMware ESX, ESXi – eltérések § Az ESX-ben Service Console egy teljes Linux-alapú rendszer o o o erősen módosított Red. Hat Enterprise Linux 3 ~ 4 Régi elavult, agyon módosított kernel (pl. : nincs SATA támogatás) külön IP címmel sok hardverhez dedikált közvetlen hozzáférése van statikusan foglal sok memóriát iszonyú bonyolult a boot folyamat, sérülékeny (előbb a Linux indul utána betölti a vmkernelt és végül paravirtualizáltan fut felette) § ESXi-ben egy nagyon minimális service console van o nincs külön kernel, a folyamatok worldként futnak közvetlenül a vmkernel felett o kis memóriaigény o Nincs külön IP cím a Service Console és a VMkernel számára o Egyszerű bootolás, hálózatról is bootolható § ESX-ben engedélyezett SSH hozzáférés, ESXi-ben nem o Helyette a Remote CLI-t javasolt használni a paracssori műveletekre 21

ESXi system image § Aktív és alternatív verzió § In-memory fájlrendszer o Pl. log

ESXi system image § Aktív és alternatív verzió § In-memory fájlrendszer o Pl. log fájl elveszik újraindításkor § OEM kiegészítések (embedded ESXi) 22

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi szerver architektúrája Microsoft Hyper-V architektúra Erőforrás gazdálkodás 23

Microsoft Hyper-V § Microsoft bare-metal virtualizációs megoldása § Jelenleg: 2. verzió (R 2) §

Microsoft Hyper-V § Microsoft bare-metal virtualizációs megoldása § Jelenleg: 2. verzió (R 2) § Két változat: o Windows Serverben a Hyper-V szerep o MS Hyper-V Server (különálló, ingyenes, csak Hyper-V) § HW igény: o CPU: 64 bites, HW-es virtualizációs támogatás § R 2 -be már bekerült a funkciók nagy része 24

Microsoft Hyper-V v 3. 0 újdonságai § Windows Server 8 részeként érkezik § Több

Microsoft Hyper-V v 3. 0 újdonságai § Windows Server 8 részeként érkezik § Több párhuzamos „Live migration” folyamat § „Live migration” osztott tárhely nélkül § Resource pool kezelés § Adat de-duplikáció támogatása § Új virtuális lemezkép típus támogatása (16 TB-ig skálázható) 25

Hyper-V architektúra I Szülő partíció Gyerek partíció 1 Gyerek partíció 2 Virtualization stack (pl.

Hyper-V architektúra I Szülő partíció Gyerek partíció 1 Gyerek partíció 2 Virtualization stack (pl. VM kezelő szolgáltatás) Vendég alkalmazások Ring 3 Windows Server 2008 kernel + Hyper-V modulok Vendég OS Ring 0 Hypervisor Hardver 26 Root mode

Hyper-V architektúra II 27

Hyper-V architektúra II 27

Bare metal megoldások architektúrái ESXi Xen / Hyper-V § I/O eszközöket is a hypervisor

Bare metal megoldások architektúrái ESXi Xen / Hyper-V § I/O eszközöket is a hypervisor kezeli § Meghajtókat a VMware szállítja § Extra kis méret: ESXi (32 MB) § I/O eszközök kezelése a szülő partícióban § Meghajtókat a HW gyártók szállítják 28

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi

Tartalom § § § Követelmények Szerver virtualizációs architektúrák Háttértárak virtualizációja VMware ESX és ESXi szerver architektúrája Microsoft Hyper-V architektúra Erőforrás gazdálkodás 29

Erőforrás gazdálkodás § A virtuális gépek gyakran közös erőforráson osztoznak § Jellemző példák: o

Erőforrás gazdálkodás § A virtuális gépek gyakran közös erőforráson osztoznak § Jellemző példák: o Gyakran: minden virtuális gépnek virtuális CPU, összesen több v. CPU, mint ahány fizikai CPU mag van o Ritkábban: összesen több kiosztott virtuális memória, mint amennyi fizikailag a hostban van o Háttértár helyfoglalás: ma még jellemzően statikusan kiosztott o Háttértár I/O műveletek: itt jellegzetesen osztozás van! o Hálózati áteresztőképesség: itt is osztozás van 30

Erőforrás gazdálkodás § Versengés az erőforrásokért: o Kis terheléseknél ritka, hogy egyszerre több vendég

Erőforrás gazdálkodás § Versengés az erőforrásokért: o Kis terheléseknél ritka, hogy egyszerre több vendég ugyanazt az erőforrást terhelné… o De szerverkörnyezetben gyakran előfordul, hogy valamelyik erőforrás szűk keresztmetszet lesz o A megfelelő ütemező elosztja a hozzáférést, de nem mindig megfelelően § Cél: o A megosztott erőforrásokból való részesedést virtuális gépekre lebontva szabályozni tudjuk • Kemény korlátozások • „Lágy” korlátok, prioritások 31

Erőforrás gazdálkodás § VMware ESX/ESXi esetén 3 beállítási lehetőség: o Resource Limit – kemény

Erőforrás gazdálkodás § VMware ESX/ESXi esetén 3 beállítási lehetőség: o Resource Limit – kemény felső korlát az erőforrás igénybevételére • Akkor is érvényes, ha egyébként van szabad erőforrás o Resource Reservation – garantált rendelkezésre álló erőforrás mennyiség • Nem feltétlenül használja ki, csak verseny esetén érvényesül, egyébként a keretet más használhatja o Resource Shares – prioritás • Verseny esetén az alapértelmezett „igazságos” elosztás módosítható ezzel 32

Erőforrás gazdálkodás: GUI felület 33

Erőforrás gazdálkodás: GUI felület 33

Erőforrás gazdálkodás: GUI felület 34

Erőforrás gazdálkodás: GUI felület 34

Példa a share használatára § Több VM-et futtató gép esetén a CPU share értékek

Példa a share használatára § Több VM-et futtató gép esetén a CPU share értékek a következők CPU o VM 1: 1000 o VM 2: 1000 VM 1 VM 2 35

Példa a share használatára § Több VM-et futtató gép esetén a CPU share értékek

Példa a share használatára § Több VM-et futtató gép esetén a CPU share értékek a következők CPU o VM 1: 1000 o VM 2: 1000 o VM 3: 2000 VM 1 VM 2 VM 3 § Versenyhelyzet esetén mennyi a VM 1 részére biztosított erőforrás-mennyiség? o 1000 / (1000+2000) = 1/4 CPU idő 36

Erőforrás gazdálkodás VM share módosítása dinamikus újrakonfigurálás Új VM felvétele Graceful degradation VM eltávolítása

Erőforrás gazdálkodás VM share módosítása dinamikus újrakonfigurálás Új VM felvétele Graceful degradation VM eltávolítása Extra erőforrások kihasználása Forrás: Carl Waldspurger. Resource Management for Virtualized Systems 37

CPU ütemezés § Simplified virtual-time algorithm o „Virtuális idő”= share / összes share o

CPU ütemezés § Simplified virtual-time algorithm o „Virtuális idő”= share / összes share o Ütemezés: Legkisebb „virtuális idejű” VM § Példa: 3 VM A, B, C (3 : 2 : 1 share aránnyal) A 2 4 4 6 8 8 8 10 10 B 3 3 6 6 6 9 9 9 12 C 6 6 6 12 12 12

Erőforrás gazdálkodás § Hierarchikus erőforráskezelés o Nemcsak virtuális gépek szintjén lehet korlátozni o Pool-okba

Erőforrás gazdálkodás § Hierarchikus erőforráskezelés o Nemcsak virtuális gépek szintjén lehet korlátozni o Pool-okba szervezhetők a VM-ek Korlátokat szab: Egymásba ágyazott o Használati eset példák: korlátoknál szűkítés, • Egy felhasználó összes -Hostgépére egy közös korlátozás konfliktusnál -Resource Pool • Egy feladatot ellátóprioritás gépek szerinti csoportjára korlát-Guestfeloldás • Kritikus/nem kritikus alkalmazások csoportosítása 39 Host - korlát: fizikai CPU, Memória Resource Pool -Korlát -Garantált részesedés További Resource Pool Guest -Korlát -Garantált részesedés

Erőforrás gazdálkodás § Speciális trükkök o Memória működés közbeni hozzáadása/elvétele • Normális esetben memória

Erőforrás gazdálkodás § Speciális trükkök o Memória működés közbeni hozzáadása/elvétele • Normális esetben memória beállítás működő VM mellett nem módosítható • Előre allokált nagy memória + korlátozás • A változtatások a vendég újraindítása nélkül is érvényre jutnak (memóriánál néhány percet igénybe vehet…) • Fontos a memory balloning driver a vendégben o Lassú hálózati kapcsolat szimulációja • Áteresztőképességet jól szimulálja • Válaszidők módosítására nincs lehetőség o „Maradék” CPU idő kihasználása • Hosszú futású (batch) feladatot végző VM alacsony prioritással • Nem zavarja a többi gépet… (de a gyakorlatban sajnos igen…) 40

Erőforrás gazdálkodás o CPU-k számának változtatására ez nem praktikus • Vendég OS ütemező nem

Erőforrás gazdálkodás o CPU-k számának változtatására ez nem praktikus • Vendég OS ütemező nem tud a korlátozásról, az „ellopott” időt nem tartja számon (elvileg paravirtualizált esetben akár tudhatná, de gyakorlatban nem igazán működik…) • A durvább felbontású időosztás miatt a vendég korlátozott esetben is a teljes CPU sebességet „érezni” fogja, de csak rövid időkre 41

Hyper-V: hasonló erőforrás-gazdálkodás 42

Hyper-V: hasonló erőforrás-gazdálkodás 42

Összefoglalás § Követelmények o Sok guest, jó skálázhatóság, távoli elérés § Szerver virtualizációs architektúrák

Összefoglalás § Követelmények o Sok guest, jó skálázhatóság, távoli elérés § Szerver virtualizációs architektúrák o Dominánsan bare-metal § Háttértárak virtualizációja o i. SCSI SAN § VMware ESX és ESXi szerver architektúrája o Mikrokernel, eltérés a Service Console megvalósításában § Hyper-V architektúra 43

DEMO Gyakorlat: ESXi használata § Indítás: alap konfiguráció (IP, jelszó) beállítása § Csatlakozás VI

DEMO Gyakorlat: ESXi használata § Indítás: alap konfiguráció (IP, jelszó) beállítása § Csatlakozás VI Clienttel § i. SCSI storage beállítása datastore-nak 44

További információ § Microsoft Hyper-V hypercall leírás (WDK) http: //msdn. microsoft. com/enus/library/aa 973529. aspx

További információ § Microsoft Hyper-V hypercall leírás (WDK) http: //msdn. microsoft. com/enus/library/aa 973529. aspx § Hyper-V Architecture and Feature Overview http: //msdn. microsoft. com/enus/library/dd 722833(BTS. 10). aspx § Xen. Server: Why? http: //it 20. info/blogs/main/archive/2009/10/29/ 1422. aspx 45