kiszolgáló oldali virtualizáció

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

Upload: barth

Post on 20-Mar-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Virtualizációs technológiák és alkalmazásaik. Kiszolgáló oldali virtualizáció. Tóth Dániel, Micskei Zoltán. 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 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Kiszolgáló oldali virtualizáció

Budapesti Műszaki és Gazdaságtudományi EgyetemMéréstechnika és Információs Rendszerek Tanszék

Kiszolgáló oldali virtualizáció

Tóth Dániel, Micskei Zoltán

Virtualizációs technológiák és alkalmazásaik

Page 2: Kiszolgáló oldali virtualizáció

2

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

Page 3: Kiszolgáló oldali virtualizáció

3

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 szorulo Az előző következménye: kevesebb fajta hardvert kell támogatni,

nincs „multimédiás” igényo Karbantartási feladatok egyszerűsítése, automatizálhatóságo Menedzsment: monitorozás, távoli beavatkozás, terhelés és

teljesítményadatok figyeléseo „Integráció” – a virtualizált szerverek egy nagyobb infrastruktúra

részeio Hozzáférés vezérlés, biztonság, a rendszernek sok (nem feltétlenül

megbízható) felhasználója lehet egyszerreo Megbízható, hibatűrő működés

Page 4: Kiszolgáló oldali virtualizáció

4

Virt.

Emlékeztető – a két fő architektúra Kétféle megközelítés:

Hardver

OS Virt. szoftver

App. OS OS

App. App.

Hardver

Virt. szoftver

Menedzsment OS

Menedzsment App.

OS OS

App. App.

Hosted virtualizáció Bare-metal virtualizáció

Jellemzően kliens megoldások: VMware Workstation, Server,

Player, Sun VirtualBox,MS VirtualPC, KVM, UML

Jellemzően szerver megoldások: VMware ESX Server, Xen Enterprise, MS Hyper-V

Page 5: Kiszolgáló oldali virtualizáció

5

Emlékeztető – a két fő architektúraHosted Interaktív alkalmazásnál előnyös

o helyi hozzáférés, gyors grafika, hang stb.

o OS szintű erőforrások biztosításao Integráció asztali

munkakörnyezetbeo Hardver meghajtókat a hoszt OS

kezeli Jellemzően kevés virtuális gép

fut egyszerreo sok virtuális gépnél már rossz

skálázódáso Jellemzően az OS alkalmazásokhoz

kitalált ütemezőit próbálja VM-ek erőforrásgazdálkodására használni

Bare-metal Interaktív alkalmazások

nehézkeseko 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árao nincsenek finomított OS

erőforrásoko Hardver támogatást külön meg

kell oldani Jó skálázhatóság

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

Page 6: Kiszolgáló oldali virtualizáció

6

Szerver virtualizáció Platform virtualizáción alapuló megoldások:

o VMware ESX Server, ESXi – bare metalo VMware Server – hosted (de nem igazán komolyan

vett termék…)o Xen – bare metal• Xen.org – bare metal• Citrix XenServer – bare metal• Oracle VM Server (Xen alapú) – bare metal

oMicrosoft Hyper-V – bare metalo IBM LPAR, DLPAR – bare metalo…

Page 7: Kiszolgáló oldali virtualizáció

7

Távoli hozzáférés megvalósítási lehetőségek

Hardver

BIOS

Operációs rendszer

Alkalmazások

Billentyűzet,egér, video

Beépített távoli menedzsment hardverTávoli elérés ethernet hálózaton keresztül (IPMI, Intel AMT)

Távoli elérés hardver

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ó

Dedikált kliensprogramHálózati

interfész

Page 8: Kiszolgáló oldali virtualizáció

8

Operációs rendszer távoli elérése

Virtuális Hardver

BIOS

Operációs rendszer

Alkalmazások

Vendég OS szintű távoli elérés

Távoli elérés

szerver

Dedikált kliensprogram

Virtualizációs keretrendszer

Hálózati interfész

Hálózati interfész

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

Page 9: Kiszolgáló oldali virtualizáció

9

Hardver

Távoli hozzáférés megvalósítási lehetőségek

Operációs rendszer

Alkalmazások

Billentyűzet,egér, video

Virtuális gép virtuális konzoljaHá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

Dedikált kliensprogram

Hálózati interfész

Virtualizációs keretrendszer

Virtuális gép Billentyűzet,egér, video

Távoli elérésszerver

BIOS

BIOS

Page 10: Kiszolgáló oldali virtualizáció

10

Nagy integrált rendszerek kiépítése Szerver virtualizációnál egy hoszt ritkán elég Jó, ha egyes erőforrások:

o központilag kezelteko átcsoportosíthatóak, hozzárendelések megváltoztathatóako megoszthatóak, több helyről is egyformán elérhetőek

Példáko háttértár: sok kicsi, gépekben elszórt merevlemez helyett

egy-egy nagy storage boxo hálózatok: minden hoszton egyformán elérhetőek legyeneko magasabb szinten: jogosultságkezelés, felhasználói fiókok

címtára

Page 11: Kiszolgáló oldali virtualizáció

11

Háttértár virtualizáció Elterjedt megoldások:

o SAN – Storage Area Network, blokkos eszközt biztosíto NAS – Network Attached Storage, fájlrendszert biztosít

iSCSI – egy elterjedt SAN megoldás: blokkos eszközök biztosítása TCP/IP hálózatok felett

HDD====

HDD====

HDD====iSCSI

targetiSCSI

initiator

Fizikai tár ~szerver ~kliens

Page 12: Kiszolgáló oldali virtualizáció

12

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

Page 13: Kiszolgáló oldali virtualizáció

13

AlkalmazásokAlkalmazások

Guest OSGuest OSGuest OS

VMware ESX Server architektúrája

Hardver (x86 CPU, SCSI, Ethernet)

VMkernel

COS(Linux 2.4)

Service Console (Tomcat, SSH...)

Driver Worlds

Helper Worlds

Alkalmazások

Page 14: Kiszolgáló oldali virtualizáció

14

AlkalmazásokAlkalmazások

Guest OSGuest OSService Console worlds

Service Console worlds

Guest OS

VMware ESXi Server architektúrája

Hardver (x86 CPU, SCSI, Ethernet, SATA)

VMkernel

Service Console worlds Driver

WorldsHelper Worlds

Alkalmazások

Page 15: Kiszolgáló oldali virtualizáció

15

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 rendszero 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 (VMFS3) tárolja a virtuális gépeketo Lehetőség van rá, hogy több ESX elosztottan használja ugyanazt a tárhelyet

egyszerre!

Page 16: Kiszolgáló oldali virtualizáció

16

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

o erősen módosított RedHat Enterprise Linux 3 ~ 4o Régi elavult, agyon módosított kernel (pl.: nincs SATA támogatás)o külön IP címmelo sok hardverhez dedikált közvetlen hozzáférése vano statikusan foglal sok memóriáto 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 feletto kis memóriaigényo Nincs külön IP cím a Service Console és a VMkernel számárao Egyszerű bootolás, hálózatról is bootolható

ESX-ben engedélyezett SSH hozzáférés, ESXi-ben nemo Helyette a Remote CLI-t javasolt használni a paracssori műveletekre

Page 17: Kiszolgáló oldali virtualizáció

17

ESXi system image Aktív és alternatív

verzió In-memory

fájlrendszero Pl. log fájl elveszik

rebootkor OEM kiegészítések

(embedded ESXi)

Page 18: Kiszolgáló oldali virtualizáció

18

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

Page 19: Kiszolgáló oldali virtualizáció

19

Microsoft Hyper-V Microsoft bare-metal virtualizációs megoldása Jelenleg: 2. verzió (R2) Két változat:

oWindows Serverben a Hyper-V szerepoMS 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

R2-be már bekerült a funkciók nagy része

Page 20: Kiszolgáló oldali virtualizáció

20

Hyper-V architektúra I

Hardver

Hypervisor

Windows Server 2008 kernel + Hyper-V

modulok

Virtualization stack(pl. VM kezelő szolgáltatás)

Ring 0

Ring 3

Root mode

Szülő partíció Gyerek partíció 1 Gyerek partíció 2

Vendég OS Vendég OS

Vendég alkalmazások

Vendég alkalmazások

Page 21: Kiszolgáló oldali virtualizáció

21

Hyper-V architektúra II

Page 22: Kiszolgáló oldali virtualizáció

22

Bare metal megoldások architektúráiESXi Xen / Hyper-V

I/O eszközök kezelése a szülő partícióban

Meghajtókat a HW gyártók szállítják

I/O eszközöket is a hypervisor kezeli

Meghajtókat a VMware szállítja

Extra kis méret: ESXi (32 MB)

Page 23: Kiszolgáló oldali virtualizáció

23

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

Page 24: Kiszolgáló oldali virtualizáció

24

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 vCPU, 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

Page 25: Kiszolgáló oldali virtualizáció

25

Erőforrás gazdálkodás Versengés az erőforrásokért:

o Kis terheléseknél ritka, hogy egyszerre több guest 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

Page 26: Kiszolgáló oldali virtualizáció

26

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álhatjao Resource Shares – prioritás• Verseny esetén az alapértelmezett „igazságos” elosztás

módosítható ezzel

Page 27: Kiszolgáló oldali virtualizáció

27

Erőforrás gazdálkodás Hierarchikus

erőforráskezeléso Nemcsak virtuális gépek

szintjén lehet korlátoznio Pool-okba szervezhetők a

VM-eko Használati eset példák:

• Egy felhasználó összes gépére egy közös korlátozás

• Egy feladatot ellátó gépek csoportjára korlát

• Kritikus/nem kritikus alkalmazások csoportosítása

Host - korlát: fizikai CPU, Memória

Resource Pool-Korlát-Garantált részesedés

Guest-Korlát-Garantált részesedés

TovábbiResource Pool

Korlátokat szab:

-Host-Resource Pool-Guest

Egymásba ágyazott korlátoknál szűkítés,

konfliktusnál prioritás szerinti

feloldás

Page 28: Kiszolgáló oldali virtualizáció

28

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 guest újraindítás nélkül is érvényre jutnak

(memóriánál néhány percet igénybe vehet…)• Fontos a memory balloning driver a guestben

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…)

Page 29: Kiszolgáló oldali virtualizáció

29

Erőforrás gazdálkodáso 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 guest korlátozott

esetben is a teljes CPU sebességet „érezni” fogja, de csak rövid időkre

Page 30: Kiszolgáló oldali virtualizáció

30

Ö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 iSCSI SAN VMware ESX és ESXi szerver architektúrája

oMikrokernel, eltérés a Service Console megvalósításában

Hyper-V architektúra

Page 31: Kiszolgáló oldali virtualizáció

DEMO

31

Indítás: alap konfiguráció (IP, jelszó) beállítása Csatlakozás VI Clienttel iSCSI storage beállítása datastore-nak

Gyakorlat: ESXi használata

Page 32: Kiszolgáló oldali virtualizáció

DEMO

32

Hyper-V Server felülete (Server Core) Távoli menedzsment:

o Server Manager, Hyper-V Manager Eszközkezelő: szintetikus meghajtók Virtuális gép létrehozása, indítása

Hyper-V