Virtualizace Flashcards

1
Q

Úvod

A

Jako vizualizace se v prostředí počítačů označují postupy a techniky, které umožňují k dostupným zdrojům přistupovat jiným způsobem, než jakým fyzicky existují nebo jsou propojeny atd.
Virtualizované prostředí může být mnohem snáze přizpůsobeno potřebám uživatelů, snáze se používat, případně před uživateli zakrývat pro ně nepodstatné detaily(jako například rozmístění hardwarových prostředků)
Smyslem virtualizace je lepší využití hardwaru a pro více účelů. Virtualizovat lze na různých úrovních, od celého počítače, po jeho jednotlivé hardwarové komponenty (např. virtuální procesory, virtuální paměť, virtualizace vzdálených úložných zařízení, ..), případně pouze softwarové prostředí (virtualizace operačního systému)
Prostředí, které provádí virtualizaci kompletní sady fyzického hardwaru a které se jeví programům, které nad ním běží, jako skutečné hardwarové prostředí, které nazýváme virtuálním strojem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Virtualizace hlavní výhody

A

jednodušší zálohování, duplikace virtuálních mašin, separace VM a HW, finančně levnější, migrace, testovatelnost

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Virtualizace hlavní nevýhody

A

nelze virtualizovat na každém HW – procesor musí mít podporu virtualizace - neznamená, že procesor je i7, že nutné musí podporovat virtualizace. Jedná se o technologie AMD-V u amd a VT-X u Intelu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Proč virtualizovat

A
Finanční náklady
Bezpečnost
Snadná migrovatelnost
Škálování výkonu
Testovatelnost
Zálohování
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Proč virtualizovat - Finanční náklady

A

Můžeme ušetřit spoustu peněz instalací třeba 8 virtuálních serverů na jeden PC. Potom budete platit pouze za 1 skutečný server, který ale obsahuje další virtuální servery, takže jasné ekonomické výhody

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Proč virtualizovat - Bezpečnost

A

Oddělení jednotlivých procesů nebo celých systému. Virtuální stroj nemůže poškodit fyzické zařízení. Virtuální servery jsou tak oddělené a nikdo nemůže lézt mezi servery.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Proč virtualizovat - Snadná migrovatelnost

A

Virtuální servery lze za chodu snadno migrovat z fyzického serveru na fyzický server. Velice snadno a rychle lze tak přenášet uživatelské servery i s daty a nastavením z ‘fyzického stroje na fyzický stroj bez poškození, nebo znehodnocení, či nutnosti opětovné reinstalace operačního systému virtuálního stroje.
Programy umožňující migrovat: Proxmox (zdarma)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Proč virtualizovat - Škálování výkonu

A

Možnost přidávat do virtuálních serverů za chodu další rám nebo procesory — toto ale neumožňují všechny virtualizační programy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Proč virtualizovat - Testovatelnost

A

Virtuální stroj je tzv. backbox, můžeme ho při poškození zahodit a nahodit prostě znovu, takže se nemusíme bát testovat škodlivé programy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Proč virtualizovat - Zálohování

A

Pomocí tzv. snapshotů lze vzít virtuální server. Zmrazit ho (zazálohovat) a jeho zmraženou, zazálohovanou kopii použít v případě jeho výpadku v budoucnosti. Během několika minut lze nefunkční systém uvést do provozu několika příkazy, nebo několika kliknutími bez ztráty dat.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Typy virtualizace

A

Emulace
Plná virtualizace
Paravirtualizace
Virtualizace na úrovni operačního sytému

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Typy virtualizace - Emulace

A

Virtualizace hardwarových komponent za účelem simulace jiné hardwarové platformy.
Emulace umožňuje programům běžet na jiné platformě, než pro jakou jsou naprogramovány
Hostované operační systémy a aplikace není nutné modifikovat (často to ani není žádoucí, je třeba zachovat plnou kompatibilitu). Vzhledem k tomu, že emulace virtualizuje odlišnou hardwarovou platformu, nevyužívá hardwarovou podporu virtualizace, kterou nabízí dnešní procesory, je pouze softwarová, a režie emulace je proto vysoká.
Emulační programy: DOSBox, DOSEM U, Bochs, PearPC, QEMU,
Výhody: možnost na libovolné platformě spustit systém a aplikace libovolné jiné platformy. Virtualizační software je obyčejnou aplikací, běží i bez administrátorských práv. Hostitelský ani hostovaný systém nemusí být nijak upraveny.
Nevýhody: nízký výkon, problémy s kompatibilitou emulovaného hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Typy virtualizace - Plná virtualizace

A

Pokud postupujeme tímto způsobem, tj. virtualizujeme důsledně všechny součásti počítače, hovoříme o tzv. plné virtualizaci (full virtualization). V takovémto případě nabízíme prostředí, v němž běžící operační systém nemůže žádným způsobem poznat, že nemá přístup k fyzickému technickému vybavení (hardware). Operační systém ani aplikační programy nepotřebují žádné modifikace. Jedná se v podstatě o ideální stav, kdy dochází k plnému oddělení fyzické vrstvy, veškeré programy běží pouze na virtuálním hardware a přístup k fyzickému vybavení je vždy zprostředkován. To má samozřejmě řadu výhod - můžeme virtuální prostředí navrhnout tak, aby nám vyhovovalo (velikost paměti, typ procesoru, typ a kapacitu disku apod.). Programy jsou rovněž nezávislé na konkrétním technickém vybavení, jeho změna nemá na virtuální prostředí vliv (samozřejmě kromě výkonnostních charakteristik, tj. náš virtuální počítač může běžet rychleji nebo pomaleji, ale v každém případě poběží).
U plné virtualizace nemusí existovat žádná jednoduchá vazba mezi virtuálním prostředím a konkrétním hardware, na němž je virtuální počítač provozován. To umožňuje plnou přenositelnost - operační systém a aplikace běžící na procesoru Intel s architekturou IA-32 můžeme spouštět třeba na počítačích, vybavených procesory PowerPC. A následné je můžeme přenést na počítače vybavené jiným procesorem, aniž bychom provedli jedinou úpravu na úrovní virtuálního počítače. Podobné můžeme vytvořit virtuální počítač vybavený procesorem, který je teprve ve vývoji - návrh a ladění Operačního systému a aplikací tak může probíhat paralelně s vývojem vlastního hardware.
Programy využívající plnou vizualizací: VirtualBox, VMware, VirutaIPC, XEN
Výhody: hrubý výpočetní výkon, hostitelský ani hostovaný operační systém nemusí být nijak upraveny, přenositelnost
Nevýhody: Pomalé i/O.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Typy virtualizace - Paravirtualizace

A

Vyznačuje se tím, že provádí jen Částečnou abstrakcí na úrovní virtuálního počítače, tj. nabízí virtuální prostředí, které je podobné tomu fyzickému, na kterém virtuální počítač provozujeme. Virtualizace v tomto případě není úplná, některé vlastností např. procesoru mohou být omezeny a operační systém může rozpoznat, že běží ve virtuálním prostředí. Na druhou stranu skutečnost, že virtuální a fyzický hardware se příliš neliší, umožňuje, aby virtuální počítač v maximální míře využíval vlastností základního fyzického prostředí (nemusíme emulovat všechny komponenty virtuálního počítače jako plná virtualizace).
Paravirtualizace je široce využívána pří tvorbě virtuálních prostředí nad procesory Intel (a AMD). VMware Workstation a Xen patří mezí neznámější systémy, které jsou postaveny na paravirtualizaci. Základní principy Paravirtualizace si představíme na (zjednodušeném) modelu, který používá právě prostředí Xen.
Paravirtualizace je tak možná jen díky tomu, že konkrétní procesory podporují více úrovní ochrany. Procesory Intel mají definovány 4 úrovně ochrany, tzv. okruhy (rings). Na nejvyšším stupni ochrany (ring O) běží operační systém, uživatelské programy běží s nejnižším stupněm ochrany (ring 3). Ostatní stupně se běžně nevyužívají.
Při použití paravirtualizace se tedy virtuální OS posune do okruhu 1, čímž je nad virtuálními aplikacemi, a přitom pod fyzickým OS — omezené pravomoce
Úrovně ochrany však můžeme využít í místo výše zvýšené modifikace privilegovaných instrukcí - necháme operační systém ve virtuálním počítači provádět všechny instrukce, pokud však bude chtít provést “zakázanou” operaci (tj. takovou, na kterou teď’ nemá dostatečná oprávnění), pak dojde k přerušení a řízení převezme virtuální monitor. Ten operaci zkontroluje a provede ji tak, aby správně změnila stav virtuálního počítače. Není v principu třeba měnit operační systém, většina instrukcí běží přímo, pouze privilegované instrukce jsou výrazně pomalejší, protože je musí provést virtuální monitor. Operační systém však může zjistit, že běží ve virtuálním prostředí, protože může mít i na úrovni 1 možnost číst některé částí paměti, které jsou ve virtuálním počítači jiné, něž ve fyzickém. Pro paravirtualizaci je proto třeba modifikovat některé součásti operačního systému, změny jsou však malé a dobře lokalizovatelné (zvlášť dobře je pak možné provést tyto změny u operačních systémů, k nímž jsou k dispozici zdrojové kódy (i proto začala být tak oblíbená (para)virtualizace v prostředí Linuxu).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Výhody/nevýhody Paravirtualizace

A

Výhody: lepší výkon než v případě plné virtualizace
Nevýhody: hostitelský i hostované systémy musí být upraveny. Pokud k nim nemáte zdrojové kódy a výrobce neposkytne upravené jádro tak paravirtualizaci nelze použít.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Typy virtualizace -

Virtualizace na úrovni operačního sytému

A

Virtualizuje se fyzický server na úrovni OS, což umožňuje běh více izolovaných bezpečných virtuálních serverů na jednom fyzickém serveru. Z pohledu uživatele každá část vypadá a chová se jako samostatný server.
Podpůrná infrastruktura v operačním systému má malou režii, což napomáhá maximálnímu využití zdrojů serveru. Tato technika tedy umožňuje běh stovek virtuálních soukromých serverů na jednom serveru fyzickém. Naproti tomu techniky jako virtualizace (např. VMware) a paravirtualizace (např. Xen nebo UML) nemohou dosáhnout takového stupně hustoty, protože v každém virtuálním systému musí běžet samostatné jádro. Na druhou stranu virtualizace na úrovni OS neumožňuje běh různých operačních systémů (tj. jiných jader), ačkoliv knihovny a distribuce se lišit mohou.
Narozdíl od dualbootu, kdy si mezi nainstalovanými operačními systémy uživatel při startu počítače vybere ten, který chce aktuálně spustit (a ostatní využít nemůže), nabízí virtualizace souběžný běh několika systému na jediném počítači.
Instalací virtualizačního software se váš současný operační systém stane hostitelem. Je lhostejné, jaký systém používáte, a také příliš nezáleží na tom, jaký operační systém chcete hostovat (v praxi pochopitelně určitá omezení existují, ne každý virtualizační software je možné nainstalovat na každý hostitelský systém, a ne všechny systémy je také možné hostovat, ale principiálně je to jedno).

17
Q

Programy virtualizující na úrovni OS

A

Linux-VServer, Virtuozzo(Linux i Win), OpenVZ

18
Q

Výhody/nevýhody Virtualizace na úrovni operačního sytému

A

Výhody: nejlepší výkon

Nevýhody: hostitelský i hostované platformy i systémy musí být stejné, pád jednoho stroje způsobí pád všech ostatních.

19
Q

Virtualizační systémy a emulátory

A

Komerční software

Nekomerční software

20
Q

Komerční software

A

Hyper-V
VMware Workstation
Citrix Delivery Center

21
Q

Nekomerční software

A

VirtualBox
XEN
Citrix XenServer Express Edition
KVM

22
Q

Hyper-V

A

hypervizorově(technika vizualizace) stavěný serverový systém pro x86-64 (32 a 64 bit) systémy.

23
Q

VMware Workstation

A

virtuální stroj, pro provoz více OS najednou. V počítačích s procesorem x64 je schopen podporovat obě platformy x86 a x64. Podporuje nejvíce operačních systémů.

24
Q

Citrix Delivery Center

A

ucelená řada produktů pro přeměnu statických datových center na dynamická „centra poskytování služeb”

25
Q

VirtualBox

A

VirtualBox je open source nástroj pro desktopovou virtualizací původně vyvinutý německou společností Innotek, která později přešla pod Sun Microsystems a technologii tedy nyní spravuje Oracle. VirtualBox, k dispozici, jíž ve čtvrté verzi, si rozumí se systémy Windows, Linux, Solaris a Mac OS X. Ačkoliv je nejčastěji používaný právě na desktopech, lze jej využít i pro servery.

26
Q

XEN

A

virtuální stroj umožňující současný běh více OS na počítači architektury x86 (vyžaduje však specifické úpravy OS nebo procesor s podporou virtualizace).

27
Q

Citrix XenServer Express Edition

A

zdarma startovací balíček pro začátky s virtualizací

28
Q

KVM

A

Virtualizační řešení, jehož název je zkratkou pro Kernel-based Virtual Machine, je součástí operačních systémů Linux od verze 2.6.2 výše. Autorem KVM je vývojářský tým Qumranet, který v roce 2008 získala společnost Red Hat. Lze jej použít na procesorech disponujících technologiemi VT od Intelu nebo AMD-V. Nástroj je navíc možné propojit i s dalšími funkcemi Linuxu, jako je například řízení spotřeby.

29
Q

Virtualizace a sítě - Virtuálnímu stroji můžeme zpřístupnit síť několika způsoby

A

NAT
INTERNAL
BRIDGE

30
Q

NAT

A

Virtuální stroj přistupuje k internetu skrze router, což je v tomhle případě virtuální engine, který je mezi každým virtuálním strojem a hostitelem.
Virtuální mašiny nemohou komunikovat mezi sebou
Síť je neviditelná a nepřístupná zvenku — pro přístup by se musel zapnout port forwarding
Data poslaná z virtualizovaného stroje jsou překládána na ip adresu hostitele a virtualizační aplikace poslouchá na odpověď’, kterou přeposílá zpět

31
Q

INTERNAL

A

Virtuální aplikace se chová jako switch a spojuje virtualizované stroje — komunikace neprochází skrze fyzické rozhraní
Interní sítě se rozlišují jménem a komunikace probíhá mezi všemi ve stejné sít

32
Q

BRIDGE

A

Využívá ovladač na hostiteli, který filtruje (pomocí „net filter”) data z fyzického síťového adaptéru
Virtualizovaný os využívá softwarové rozhraní, které vypadá, jako by ho kabelem připojovalo k hostiteli
Může s hostitelem komunikovat a skrze hostitele i se zbytkem sítě