Upload
candie
View
41
Download
0
Embed Size (px)
DESCRIPTION
Virtualizációs technológiák és alkalmazásaik. Bevezető, Virtualizációs technológiák áttekintése. Micskei Zoltán, Tóth Dániel. Bemutatkozás – előadók. Micskei Zoltán (IB414, http://mit.bme.hu/~micskeiz/) Tóth Dániel (Nokia Siemens Networks , https://www.inf.mit.bme.hu/members/dtoth) . - PowerPoint PPT Presentation
Citation preview
Budapesti Műszaki és Gazdaságtudományi EgyetemMéréstechnika és Információs Rendszerek Tanszék
Bevezető, Virtualizációs technológiák áttekintése
Micskei Zoltán, Tóth Dániel
Virtualizációs technológiák és alkalmazásaik
Bemutatkozás – előadók
Micskei Zoltán (IB414, http://mit.bme.hu/~micskeiz/)
Tóth Dániel (Nokia Siemens Networks, https://www.inf.mit.bme.hu/members/dtoth)
Bemutatkozás – kutatócsoport Méréstechnika és Információs Rendszerek Tanszék Hibatűrő Rendszerek Kutatócsoport
(Fault-Tolerant Systems Research Group, FTSRG)o http://www.inf.mit.bme.huo BSc - Informatikai technológiák szakirány, Rendszertervezés ágazato MSc - Szolgáltatásbiztos rendszertervezés szakirányo Főbb témák:
• Modell alapú szoftverfejlesztés • Informatikai rendszerek verifikációja és validációja, • Informatikai infrastruktúra elemzése és tervezése, • Rendszeroptimalizálás, projektmenedzsment optimalizálása, • Informatikai eszközök szolgáltatás alapú integrációja, • Modelltranszformációk
Bemutatkozás – virtualizácó Intel Virtualizációs és Platformmenedzsment
Laboratóriumo IE224, az itteni gépek egy része
VMware Academic Program tagságo legújabb VMware szoftverek
Saját infrastruktúraomérések és gyakorlatok mind virtuális gépekeno 6-8 ESX szerver szakirányos hallgatóknak és kutatáshoz
Virtualizációs technológiák és alkalmazásaik Tárgy honlapja:
o http://www.inf.mit.bme.hu/edu/courses/virttech Időpont
ominden héten csütörtök 12:15-14:00 Helyszín
o IE224 labor Előadás és gyakorlat vegyesen
Követelmények Egy félévközi önálló munka
o Házi feladat lehetőségek:• Valamely technológia telepítése, egyszerű feladatok kipróbálása• Egyszerű programozási, scriptelési feladat valamelyik virtualizációs
technológiával• Elméleti jellegű, tudományos cikkek feldolgozása, ~5-10 oldalas
tanulmányban összefoglalásao Egy rövid (~5 perc) szóbeli beszámoló a házi feladatban
megismert technológiárólo Elkészült tanulmányok, dokumentációk, programok, scriptek
feltöltése a félév végéig Vizsga
o Nincs Félév végi jegy a házi feladat és előadás alapján
Követelmények Fontos dátumok:
o HF témakiírások: 2010. 09. 13-tól (2. hét hétfő)o HF téma választás: 2010. 09. 24-ig (3. hét vége)(a megadott témákon kívül természetesen saját ötletet is szívesen fogadunk)
o Szóbeli beszámoló a témáról: 2010. 11. 11. (10. hét)o Elkészült anyagok feltöltése: 2010. 12. 10. (szorgalmi időszak
vége)
o Pótlás: • Szóbeli beszámoló: csak különleges esetben, aki a tárgyat tényleg el
szeretné végezni mindenképpen jöjjön el a beszámolóra!• Anyagok feltöltése: 2010. 12. 17. (pótlási hét vége)
Tartalom
Adminisztrációs tudnivalók
A félév menete
A virtualizáció fajtái
A félév menete1. hét - Bevezetés• A virtualizáció kialakulása• Megközelítések áttekintése
2. hét - A virtualizáció alapjai I.• CPU virtualizációs megoldások
3. hét - A virtualizáció alapjai II.• Hardver támogatás• Perifériák, I/O rendszerek virtualizációja
4. hét - Desktop virtualizáció I.• Alkalmazási lehetőségek, virtuális hardver• Gyakorlat: alapfunkciók, pillanatképek, klónozás
HDD====
A félév menete
5. hét - Schönherz QPA
6. hét - Desktop virtualizáció II.• Szabályozás házirendekkel, funkciók fejlesztőknek• Gyakorlat: fejlettebb lehetőségek (virtuális gépek debuggolása)
7. hét - Kiszolgáló oldali virtualizáció I.• Architektúrák (hosted, bare-metal) összehasonlítása• VMware ESX és MS Hyper-V ismertetése
8. hét - Kiszolgáló oldali virtualizáció II.• Gyakorlat: ESXi telepítése, konfigurálása• Jellegzetes alapfeladatok
A félév menete9. hét - Operációs rendszer szintű virtualizáció• Konténer-alapú virtualizáció, Solaris Containers• Gyakorlat: OpenVZ
10. hét - Házi feladat szóbeli beszámoló• 5-5 perc előadás a választott házi feladat témában
11. hét - Alkalmazás és megjelenítés virtualizáció• Alkalmazás csomagolás, távoli elérés, vékonykliensek, VDI• Gyakorlat: VMware ThinApp, MS Remote Desktop Services
12. hét - Menedzsment feladatok I.• Virtuális gép sablonok, életciklus kezelés, felügyelet• Katasztrófavédelem, hibatűrés
A félév menete13. hét – Menedzsment feladatok II.• Gyakorlat: VMware vCenter• Virtuális gépek működés közbeni mozgatása, hibatűrés
14. hét – Cloud computing• Számítási felhők fajtái, céljai, előnyei és hátrányai• Amazon EC2, Rackspace Cloud, MS Azure…
Tartalom
Adminisztrációs tudnivalók
A félév menete
A virtualizáció fajtái
Mi is az a virtualizáció? „Az erőforrások elvonatkoztatása az erőforrást
nyújtó elemektől” - kellemesen sejtelmes általános definíció
Jellemzően: o fizikai erőforrásokból logikai erőforrások képzése, amik
függetlenek a tényleges fizikai elemektőlo korlátos erőforrások szétosztása több részre
Ez egy új ötlet?o Korántsem – az oprendszerek is ezt csinálják…
Mi micsoda a virtualizáció világában?
ParavirtualizációEmuláció
Alkalmazás virtualizáció
BinaryTranslation
Hypervisor
KonszolidációMikrokernel
BackendSeamless window
managementErőforrás-menedzsment
Live migráció
Hardveresvirtualizáció
Exokernel
Tárhely virtualizációDesktop
virtualizáció
Jail
Container
Figyelem! Gyakran nincs egyértelmű terminológia, a gyártók is néha következetlen elnevezéseket használnak!
Virtual DesktopInfrastructure
Mit csinál az operációs rendszer?
HDD====
Processzor Memória HáttértárHardver
Alkalmazások
Hálózat
Szolgáltatások
Operációs rendszer
CPU idő Virtuális memória
Fájlrendszer Socketek
A CPU-t időosztásos rendszerben osztja az alkalmazások között.
„Kibővíti az utasításkészletet”
rendszerhívásokkal
A virtuális memóriával minden alkalmazás saját
lineáris címtartományt kap. Extra képességek:
megosztott memória, memóriába leképzett fájlok
A háttértáron a fájlrendszerrel tetszőleges,
változtatható méretű, névtérbe szervezett
adattömböket lehet tárolni
Az oprendszer a fizikai hálózati kapcsolatból egy szoftveres socketet hoz
létre, amiből több is mehet egyidejűleg, életciklussal,
hibakezeléssel… Tanulság:Az operációs rendszer kétféle módon vonatkoztat el a fizikai erőforrásoktól:- Erőforrás megosztással- Erőforrás finomítással, saját logikai erőforrásfajták bevezetésével
Rétegek közötti interfészek
Hardver
Operációs rendszer
Alkalmazások
Szolgáltatások
Interfész a hardverhez:
CPU, Memória: ISA (Instruction Set
Architecture)
HDD====
Perifériák: I/O vagy memória-
tartományban regiszterek,
megszakítás, DMA
Rétegek közötti interfészek
Hardver
Operációs rendszer
Alkalmazások
Szolgáltatások
Interfész az alkalmazások ésa rendszermag között
Rendszerhívások(System calls)
Interfész Adatszerkezetek
IPC mechanizmusok
Rétegek közötti interfészek
Hardver
Operációs rendszer
Szolgáltatások
Interfész az alkalmazások szintjén, illetve az OS magasszintű szolgáltatásai között
Könyvtár hívások(call)
FuttatókörnyezetekAlkalmazások
Konfig fájlok, Registry, stb…
Rétegek közötti interfészek
Hardver
Operációs rendszer
Szolgáltatások
Interfész a nyújtott szolgáltatások felé
Hálózati protokollok
Felhasználói felület
stb…
Alkalmazások
A virtualizáció különböző fajtái
Hardver
Operációs rendszer
Alkalmazások
Szolgáltatások
„Platform Virtualizáció”
„Operációs rendszer szintű virtualizáció”- Containerek, Jailek
„Alkalmazás futtatókörnyezetek”
(Runtime environments)
Alkalmazás virtualizáció(packaged applications…)
„Desktop virtualizáció”
Platform virtualizáció Amikor a „virtualizáció” buzzword elhangzik
leggyakrabban erről van szóo „Szerver virtualizáció”, „Hardver virtualizáció”,
„Számítógép virtualizáció” szinonim fogalmako De nem összekeverendő a „hardveres” virtualizációval!
Cél: megosztani a hardver erőforrásokat:o Nem végzünk finomítást, az eredeti(hez hasonló)
interfészen maradnak elérhetőeko Izolált környezeteket („sandbox”) biztosítunk
Célok gyakorlatiasabban megfogalmazva:o Több operációs rendszer példányt futtatni egyazon gépen
Mire lesz ez jó nekünk?
Új üzleti szolgáltatást akarok beindítaniVegyünk több vasat!
Biztos, hogy ez segít?
Biztos, hogy ez a költséghatékony
megoldás?
Allow me to demonstrate!
Allow me to demonstrate! Mire lesz ez jó nekünk?
Hát… feltűnt valami…
Sok gépen nagyon kicsi a CPU
kihasználtság
Nem lehetne akkor valahogy
egy gépre felrakni több szolgáltatást?
Egyiknek Linux kell a másiknak
Windows… ráadásul
különböző verziók…
Allow me to demonstrate! Mire lesz ez jó nekünk?
Nem lehetne akkor valahogy
egy gépre felrakni több szolgáltatást?
Egyiknek Linux kell a másiknak
Windows… ráadásul
különböző verziók…
(Ő a biztonsági felelős a cégnél)
Biztonsági okokból nem
szabad egy gépre rakni őket!
Mire lesz ez jó nekünk? „Now for something completely different…”
(szoftverfejlesztő avatarja)
Több platformon kell fejlesztenem, tesztelnem… az
időm nagy része az ide-oda váltogatással megy el. Ráadásul
folyton széthomokozom az oprendszeremetEgyiknek Linux
kell a másiknak Windows…
ráadásul különböző verziók…
Ooop, ezt már mondtam…
Szóval nekem is mindenféle sokgépes bonyolult
tesztkörnyezetet kell csinálnom a ti cuccaitokhoz
Mire lesz ez jó nekünk – alkalmazási területekSzoftver-fejlesztés
fejlesztés, tesztelés sok különböző környezetben,
könnyen
„homokozó” aka sandbox – a tesztelés nem veszélyezteti
az éles munkakörnyezetet
különleges hibakeresési lehetőségek (debugging)
Desktop alkalmazások
különböző környezetet igénylő alkalmazások együtt futtatása
biztonsági szempontból jó (vagy legalábbis jobb) szétválasztás
sandbox – alkalmazások telepítés, kipróbálása éles munkakörnyezet
veszélyeztetése nélkül
Nehezen/kényelmetlenül telepíthető környezetek egyszerű, gyors cserélése
(pl.: mérés laborok, tanfolyamok)
Mire lesz ez jó nekünk – alkalmazási területekSzerverek
Erőforrás megosztás, hardverköltség csökkentés
Energiatakarékosság, terhelésfüggő átcsoportosítás
Könnyű erőforrás átrendezés („kéne nekem most gyorsan még 4GB RAM és még 2 processzormag a gépembe…”
Ideiglenes tesztkörnyezetek gyors kiépítése („…és még két ugyanilyen gép is kéne, de csak a jövő hétig”)
Életciklus kezelés - szerverek könnyű létrehozása, kezelése, mentése, üzembiztos működtetése, nyilvántartása
Desktop gépek kiváltása szerveren futó virtuális gépekkel – nem kell desktop gépeket menedzselni (VDI)
Beágyazott rendszerek
Kritikus feladatok szétválasztása, üzembiztosság, biztonság
Történeti áttekintés
~1960 •IBM CP-40 rendszere, első kísérletek a virtualizációval
1972 •CP-67 a virtualizáció a mainframe termékvonal (S/370) része lett•Paravirtualizációt is tartalmazott (bár senki nem nevezte még így)
1974 •Popek és Goldberg publikációja
1998 •az első x86 alapú platform virtualizáció megoldás (VMware) •Kihívás: az x86 architektúra nem teljesíti a Popek és Goldberg féle kritériumokat (köv.előadás)
1999 •User Mode Linux •első praktikus paravirtualizáció x86-on
~2002 •kezdve számos más megoldás (Xen, Parallels, Sun, Microsoft…)•Második felétől kezdve a szerver virtualizáció felfutóban
~2005 •beágyazott rendszerek virtualizációja
DEMO
Desktop virtualizációs szoftvercsomag Virtuális gép hardver konfigurációja Virtuális gép „csomag” a hoszt gép
fájlrendszerében
VMware workstation
További információ Néhány fontosabb blog, hír aggregátor oldalak,
RSS feedek:
Hírek, független véleményeko http://www.virtualization.info
Planet VMware, összes VMware blogo http://www.vmware.com/vmtn/planet/vmware/rss20.
xml Ben Armstrong (Virtual PC Guy), Microsoft
o http://blogs.msdn.com/virtual_pc_guy/rss.xml
Összefoglalás A virtualizáció általános definíciója A főbb virtualizációs lehetőségek áttekintése Történeti áttekintés Platform virtualizációs demo
A következő rész tartalmábólo Platform virtualizáció részletes áttekintéseo CPU virtualizáció megoldási lehetőségei, nehézségeioMemória virtualizáció lehetőségei, nehézségei