Virtualizált Biztonságos BOINC Németh Dénes Deák Szabolcs Szeberényi Imre
Igények a griddel szemben Nagy számítási kapacitás Jó erőforrás-kihasználás, - menedzsment Egyszerű használat Homogén fejlesztési környezet Heterogén futtatási környezet Megfizethetőség Védelem a hibás / kártékony kóddal szemben Stabil infrastruktúra
Lehetőségek a service grid rendszerekben I. (pl. gLite) Nagy számítási kapacitás CPU áll rendelkezésre Sokfelé oszlik ~50k/(300 VO) Nehéz jó statisztikát készíteni a felhasználásról „Átjátszók vagy sokszorozók” EGEE ↔ BOINC ↔ ARC Jó erőforrás-kihasználás, - menedzsment OK Egyszerű használat „A grid egyszerű” Szolgáltatói oldal: Telepítés, karbantartás, üzemeltetés, monitoring Felhasználói oldal: „Grid” API bonyolult, a dokumentáció nem mindig elégséges Homogén fejlesztési környezet Scientific Linux A járulékos szoftverek viszont heterogének lehetnek (gcc, könyvtárak, programok) Heterogén futtatási környezet Scientific Linux
Lehetőségek a service grid rendszerekben II. (pl. gLite) Megfizethetőség EU támogatás nélkül a rendszer üzemeltetése (jelenlegi formájában) drága Támogatás nélkül a felhasználás költsége (per CPU) összevethető az Amazon Cloud Computing tarifájával Védelem a hibás / kártékony kóddal szemben Fokozott biztonság (X.509 tanúsítványok) Proxy tanúsítványok ACL és OCSP nélkül Titkosítatlan privát kulcs a proxy tanúsítványhoz Elvben könnyen fel lehet használni más proxy tanúsítványát saját célra Stabil infrastruktúra Service Level Agreements „site” szintű SLA van csak, pedig a „grid” szintű lenne az érdekes a felhasználók számára
Lehetőségek a desktop grid rendszerekben I. (pl. BOINC) Nagy számítási kapacitás 1M+ CPU (pl. Csak csatlakozási statisztika (nem az online gépek száma) Jó erőforrás-kihasználás, - menedzsment Nem jól skálázható és decentralizálható Minimális I/O (DSL/modemes felhasználók) Egyszerű használat A felhasználónak kell gondoskodnia a projectek felvételéről Homogén fejlesztési környezet 76 (futtatási) architektúra A szoftverkörnyezet ezen belül is heterogén lehet
Lehetőségek a desktop grid rendszerekben II. (pl. BOINC) Heterogén futtatási környezet Adott, de nagy árat követel a támogatása Megfizethetőség Önkéntes alapú, tehát a futtató számára ingyenes Védelem a hibás / kártékony kóddal szemben A futtató gépet csak a kódba vetett bizalom védi Fizikailag szinte semmi védelem a kártékony kód ellen A kód csak ritkán változhat a validáció követelménye miatt Stabil infrastruktúra Semmi garancia, csak a nagy számok törvénye
Lehetséges alternatíva közösségek / vállalatok számára Saját BOINC szerver üzemeltetése Egyszerű(bb) használat Stabil(abb) infrastruktúra Jobb erőforrás-kihasználás, - menedzsment A rendelkezésre álló erőforrások kihasználása jobban becsülhető Virtualizáció Védelem a hibás / kártékony kóddal szemben Maga a virtualizáció biztosítja (kézben tartható) Heterogén futtatási környezet Windows Linux, stb. Lehet a külső hoszt Homogén fejlesztési környezet Mindenhol ugyanaz a virtuális futtató környezet, ami egyszerűen bővíthető
A virtualizáció hátrányai Lassú I/O Igen, de sokszor nincs rá szükség Virtualizációs overhead Elenyésző a kihasználatlan erőforrásokhoz képest Virtualizációs technológia limitációi Grafikus kártyák, perifériák, stb.
A kialakított architektúra Windows Hoszt Linux VM futtatja a BOINC klienst VirtualBox Tükrözi a BOINC RPC portját a Windows hoszt felé Külső BOINC kommunikáció (Szerver, RPC, stb) Natív (Windows) BOINC GUI Tükrözött BOINC port
Natív BOINC GUI használható
Demo
További Előnyök Egyszerű installálás ~ 5-10 perc Egyszerű karbantartás Az image-et központosítottan kell karbantartani Szabad CPU idő kihasználása
További hátrányok A natív BOINC klienshez képest nagyobb Diszk tárterület Hálózati forgalom Virtualizációs mellékhatások Nincs igazi „cluster”
Kapcsolat a WEB2GRID-del Közösségek futtathatják saját kódjaikat komolyabb validáció/felügyelet nélkül A futtatott kód könnyen változtatható Ugyanolyan egyszerűen lehet erőforrást hozzáadni, mint a BOINC-hoz
Kérdések?