Comments
Transcript
THE GRID - Dipartimento di Matematica e Informatica
THE GRID Seminario per il corso di Reti di calcolatori e sicurezza Docente Prof. Stefano Bistarelli Studente: Maura Mancini A.A. 2004/2005 The grid - Realizzato da Maura Mancini - 1 Indice: Definizione Caratteristiche Componenti Funzionamento Architettura Grid Progetti Grid attivi Comunità interessate Problematiche Comunicazione sulla griglia Conclusione e Sviluppi futuri The grid - Realizzato da Maura Mancini - 2 Verso la metà degli anni ’90, per identificare il modo di utilizzare virtualmente le risorse informatiche, si diffondono i concetti di: GRID COMPUTING : forma versatile di calcolo distribuito geograficamente che permette la condivisione di hardware, software, dati e risorse in generale. The grid - Realizzato da Maura Mancini - 3 GRID : infrastruttura tecnologica che supporta tale attività di calcolo. Consente: l’aumento della capacità di calcolo disponibile. la condivisione di potenza elaborativa, dati e strumenti di analisi fra organizzazioni distinte o fra diverse parti di una stessa organizzazione. la fruizione diffusa delle risorse informatiche. The grid - Realizzato da Maura Mancini - 4 Caratteristiche dei GRID: Eterogeneità delle risorse Eterogeneità della rete Eterogeneità delle politiche di sicurezza L’eterogeneità determina complessità in termini installazione, configurazione e manutenzione. The grid - Realizzato da Maura Mancini - 5 Eterogeneità delle risorse I Grid sono costituiti da risorse differenti in relazione a: Tipo (nodi di elaborazione, cluster, dispositivi di immagazzinamento..) Piattaforma (sistema operativo Linux, Windows..) The grid - Realizzato da Maura Mancini - 6 Eterogeneità della rete e delle politiche di sicurezza Le risorse sono connesse fra loro con reti a latenza variabile e molteplici domini di amministrazione The grid - Realizzato da Maura Mancini - 7 Componenti dei Grid: Un Grid è formato da: Risorse (server, workstation, lettori CDROM, periferiche di I/O, modem, risorse di calcolo..) Rete: permette l’accesso alle risorse Middleware: software che garantisce l’utilizzo efficiente e capillare delle risorse. The grid - Realizzato da Maura Mancini - 8 Funzionamento: Una piattaforma Grid opera grazie ad un’applicazione centralizzata che monitorizza e gestisce le singole postazioni di calcolo utilizzando nel modo più efficiente possibile le risorse a disposizione. Così facendo l’utente che richiede l’ausilio della Grid non è a conoscenza di quali siano i computer che hanno eseguito il lavoro richiesto. The grid - Realizzato da Maura Mancini - 9 Fig..1 – Esempio di esecuzione di un job in una Grid The grid - Realizzato da Maura Mancini - 10 1. Un utente richiede l’ausilio della Grid per l’esecuzione di un lavoro. 2. Un server centrale, dopo aver autenticato l’utente, memorizza il lavoro da eseguire, i dati da utilizzare ed altre informazioni. 3. Il server suddivide il lavoro in più task autonomi e pianifica la distribuzione dei diversi compiti ai vari PC della griglia (i quali devono aver dato l’autorizzazione ad eseguire quel tipo di attività ed aver installato del software Grid). 4. Ognuna delle macchine coinvolte eseguirà i compiti assegnati e restituirà il lavoro al server centrale. 5. Una volta che tutti i task sono stati eseguiti il server, dopo aver riassemblato le varie attività, restituisce il risultato alla workstation richiedente . The grid - Realizzato da Maura Mancini - 11 Architettura Grid: Gli elementi per realizzare una griglia di calcolo sono: Uno o più server centrali con funzioni di controllo e autenticazione Uno o più server per suddividere le attività tra i clients della Grid e poi raccogliere e restituire i risultati Uno o più server per individuare le risorse disponibili Un gruppo di clients con il compito di elaborare i task assegnati Una infrastruttura di collegamento per la trasmissione dati (tipicamente la rete Internet e il protocollo TCP/IP) The grid - Realizzato da Maura Mancini - 12 Fig..2 – Elementi di una griglia di calcolo The grid - Realizzato da Maura Mancini - 13 L’architettura Grid, così come descritta da Ian Foster, Karl Kasselman, Steven Tuecke può essere rappresentata da 5 strati. The grid - Realizzato da Maura Mancini - 14 fig 3 – Architettura a strati di una Grid e sue relazioni con l’architettura Internet The grid - Realizzato da Maura Mancini - 15 Fabric Lo strato Fabric fornisce le risorse (storage system, computers, networks, sensori, strumenti) che verranno condivise grazie ai protocolli Grid. Connectivity Lo strato Connectivity definisce il nocciolo dei protocolli di comunicazione e autenticazione, i quali permettono gli scambi di dati tra i vari sistemi Fabric e forniscono un meccanismo sicuro per identificare utenti e risorse The grid - Realizzato da Maura Mancini - 16 Resource Lo strato Resource è focalizzato sulla singola risorsa e costruisce sullo strato Connectivity un protocollo di negoziazione, inizializzazione, monitoragggio, controllo e accounting delle singole risorse. Collective Lo stato Collective contiene i protocolli e i servizi che non sono associati ad una specifica risorsa, ma che dipendono dalle interazioni tra le singole risorse. I componenti collective si occupano di coordinare risorse multiple come gestire job o eseguire il brokering delle risorse. The grid - Realizzato da Maura Mancini - 17 Application Le applicazioni comunicano con lo strato Fabric solo attraverso gli strati Collective, Resource, Connectivity, per mezzo delle APIs (application program interface socket) e SDK (software development kit). The grid - Realizzato da Maura Mancini - 18 Il modello a strati soddisfa le esigenze primarie di una Grid che, intesa come set di servizi, deve garantire: L’allocazione e lo scheduling delle risorse Le comunicazioni L’accesso ai dati Il controllo delle performance L’autenticazione degli utenti e delle risorse La sicurezza e la privacy delle comunicazioni The grid - Realizzato da Maura Mancini - 19 Esistono diverse tecnologie che consentono di creare Grid: Condor Legion Unicore Globus The grid - Realizzato da Maura Mancini - 20 Il progetto Globus Sviluppato congiuntamente dall’Argonne National Laboratory dall’University of South California nel 1994. Rilascia periodicamente il globus toolkit - ora giunto alla versione 2.0 - che è stato utilizzato in numerosi progetti (Data Grid (Europa), National Tecnology Grig (Us)..) Si occupa della sicurezza, della gestione delle risorse e dei dati, della comunicazione e della supervisione dei processi. The grid - Realizzato da Maura Mancini - 21 L’interesse per il Grid Computing, in tutto il mondo, è ben testimoniato da molti progetti avviati e ancor di più da quelli in fase di avvio. In ambiente scientifico si hanno applicazioni Grid nel campo dell’astronomia, della matematica, della biologia, della meteorologia, della fisica e della geofisica. Numerosi sono anche gli organismi e le aziende che iniziano a produrre o commercializzare piattaforme Grid. The grid - Realizzato da Maura Mancini - 22 I progetti approvati dalla Commissione Europea, a sostegno delle griglie di calcolo, sono stati raccolti sotto il nome di Grid Start. GRID START: sono progetti open source (permettono l’accesso al codice sorgente del software). Favoriscono lo sviluppo della ricerca e della tecnologia, promuovendo l’innovazione e la collaborazione tra i ricercatori. The grid - Realizzato da Maura Mancini - 23 Grid Start comprende: DATA GRID: guidato dal CERN, assieme ad altri partner quali l’INFN, DATAMAT ecc. Ha come obiettivo costruire un’ infrastruttura di calcolo distribuito che consenta sia il calcolo intensivo sia l’analisi di una enorme mole di dati. I risultati del progetto saranno applicati ad alcuni dei maggiori esperimenti scientifici condotti in Europa sulla fisica delle particelle, la biologia ecc. e consentiranno in futuro nuovi metodi di utilizzazione dell’informatica. The grid - Realizzato da Maura Mancini - 24 EGSO (European Grid of Solaris Observation) : il progetto si propone di riunire, in un enorme database, vari ed eterogenei archivi di osservazioni solari, riprese sia da terra che dallo spazio. EUROGRID: l’obiettivo è creare una griglia di calcolo europea. The grid - Realizzato da Maura Mancini - 25 LCG (Large hadron collider Computing Grid project): si occupa di organizzare, programmare e costruire l’insieme di tecnologie Grid necessarie per l’analisi dei dati sperimentali che verranno prodotti, a partire dal 2007, dall’acceleratore di particelle LHC. Gli scienziati hanno già previsto che l’enorme quantità di dati prodotta dai rivelatori LHC richiederà un’elevata potenza di calcolo che potrà essere ottenuta solo grazie ad una Grid a cui parteciperà la maggior parte dei Paesi con interessi nel campo della fisica e delle alte energie. The grid - Realizzato da Maura Mancini - 26 L’ Italia, prima in Europa, ha immaginato di distribuire e analizzare i dati sperimentali appoggiandosi alla tecnologia Grid. A tal proposito, l’INFN (Istituto Nazionale Fisica Nucleare), in stretta collaborazione con il progetto Data Grid, ha realizzato la Grid denominata INFN-GRID che collegherà le risorse di calcolo e di memoria disponibili nelle sue sedi, per poi partecipare allo sviluppo della prima Grid mondiale del mondo della ricerca. The grid - Realizzato da Maura Mancini - 27 Fig. 4 – Siti INFN-Grid The grid - Realizzato da Maura Mancini - 28 Le comunità interessate a Grid sono: Sistema governativo: formato da qualche centinaia di soggetti facenti parte dei programmi governativi tradizionali, diretti a risolvere problemi come sistemi di difesa nazionale, ricerche complesse, simulazioni e gestione dei disastri. Organizzazioni sanitarie: si occupano dei problemi che affliggono le piccole realtà sanitarie locali. The grid - Realizzato da Maura Mancini - 29 Progetti scientifici collaborativi: rappresentati da gruppi di scienziati che operano nelle università di tutto il mondo e necessitano di condividere gli strumenti di ricerca, archivi di informazione, ecc. Sistemi di elaborazione economica di mercato: ne fanno parte i consumatori, i fornitori di servizi specifici, i fornitori di risorse di elaborazione, i fornitori di rete e altri soggetti come banche e organizzazioni in genere. The grid - Realizzato da Maura Mancini - 30 Problematiche del Grid: Con Internet il collegamento è diretto e trasparente (ci colleghiamo ad un sito, questo ci identifica e ci autorizza all’accesso). Con l’avvento del Grid è come se si aprisse un’immensa porta su una rete iluminata di computer (un utente che necessita di un servizio viene agganciato da un computer in grado di fornirglielo; senza che però gli sia permesso sapere in quale Paese è ubicato, ne da chi è gestito). The grid - Realizzato da Maura Mancini - 31 Il Grid comporta problemi di privacy e di sicurezza del PC. Le imprese provvederanno a standardizzare buoni livelli di sicurezza e sarà estesa a tutti la procedura di autenticazione utente che oggi garantisce l’accesso riservato e controllato dei ricercatori ai Grid del pianeta. Consiglio: munirsi di un buon antivirus e di un efficiente firewall. The grid - Realizzato da Maura Mancini - 32 Comunicazione sulla griglia Con il rapido progresso degli hardware e il boom di Internet, i piccoli sistemi distribuiti del passato si sono trasformati in enormi sistemi Grid che interessano diversi progetti, organizzazioni e domini applicativi. Ciò incoraggia l’adozione di infrastrutture software che integrano dinamicamente protocolli multipli con un cliente. Gli utenti di queste infrastrutture sono: Utilizzatore finale Grid intermediari (non corrispondono né al produttore originale né al consumatore finale dei dati). The grid - Realizzato da Maura Mancini - 33 Esempi di Grid intermediari includono: Una cache che registra la provenienza dei dati. Una via d’accesso tra due sistemi incompatibili The grid - Realizzato da Maura Mancini - 34 Sistema A (JMS) PROTEUS Sistema B (SOAP) Figure 5 - Proteus può essere usato per costruire una via d’accesso tra due sistemi incompatibili quali JMS e SOAP. The grid - Realizzato da Maura Mancini - 35 I protocolli di comunicazione di griglia devono soddisfare molteplici requisiti. Tuttavia, nessun protocollo soddisfa tutte le applicazioni. Una biblioteca multiprotocollo per un sistema grid deve fornire meccanismi per protocolli di selezione , negoziazione e percorso di messaggio The grid - Realizzato da Maura Mancini - 36 Il multiprotocollo della biblioteca del messaggio del Proteus PROTEUS -Sviluppato da Kenneth Chiu, Madhusudhan Govindaraju, Dennis Gannon-: Fornisce una struttura flessibile per la ricerca e lo sviluppo di sistemi Grid. Incorpora caratteristiche che aiutano nello sviluppo di applicazione di messaging. Può integrare in un unico sistema protocolli di messaggio multiplo come SOAP e JMS. -I clienti che usano Proteus possono comunicare usando una varietà di mezzi come Soap, JMS (Java Message Service ), o altri protocolli sperimentali-. The grid - Realizzato da Maura Mancini - 37 Proteus disaccoppia il codice di applicazione dal codice di protocollo a tempo di esecuzione, permettendo ai clienti di caricare separatamente i protocolli sviluppati senza ricompilarli o fermarsi. The grid - Realizzato da Maura Mancini - 38 Caratteristiche: scritto in Java 100% per portabilità (WIN32, e OS/390 MVS) modello semplice ed elegante tutti i componenti sono configurati da XML mediatore di messaggi, con possibilità di trasformazione del percorso adattatore per JMS, basi di dati e-mail. The grid - Realizzato da Maura Mancini - 39 N1 N2 CORE a P1a N3 CORE b P2a P2b P1 a Figura 6 -Un diagramma di un tipico sistema Proteus The grid - Realizzato da Maura Mancini - 40 Tutti i messaggi, in Proteus, sono spediti e ricevuti attraverso nodi. Ogni cliente può contenere molti nodi. I nodi servono per contenere tutte le informazioni che sono necessarie nella fase di trasmissione e ricezione del messaggio. I nodi sono identificati con un nodo ID unico. The grid - Realizzato da Maura Mancini - 41 Il frammento sotto dice come viene creato un nodo con un dato indirizzo: MyMessageHandler handler; MySelector selector; Address addr(addr_str); Nodepoint nodepoint(addr); RepertoireMap repertoire_map; Scheme scheme(nodepoint, repertoire_map); Node node(&selector, scheme, &handler). The grid - Realizzato da Maura Mancini - 42 Dato un messaggio possiamo inoltrarlo a differenti destinazioni e per ognuno scegliere diversi itinerari. Gli itinerari dipendono dai nodi. Può essere usato un itinerario per trasmettere il messaggio e uno per riceverlo. The grid - Realizzato da Maura Mancini - 43 Proteus permette di partizionare il contenuto del messaggio, in varie parti, secondo regole precise. Ogni parte contiene un vobject. -Il termine vobject deriva da value object-. Proteus permette alle parti di un messaggio di essere deserializzate come matter. Matter is a vobject che si riferisce ad una specifica forma di protocollo. The grid - Realizzato da Maura Mancini - 44 Modello di messaggio: Assumiamo di avere una variabile vobj of class MyVobject è definita come: class RecordVobject { int i; }; class MyVobject { public: RecordVobject record; }. Accediamo ai campi del messaggio con: int i = vobj.record.i. The grid - Realizzato da Maura Mancini - 45 Alleghiamo un provider descrittore e un decodificatore a tutti i matter. Il provider descrittore include il nome del provider, la destinazione finale e altri dettagli richiesti per deserializzare i matter. Il decodificatore è usato dagli intermediari per determinare come sono stati ottenuti i matter. The grid - Realizzato da Maura Mancini - 46 Ogni oggetto serializzabile ha una corrispondente funzione che trasforma l’oggetto in una rappresentazione elettrica serializeMyObject() { SOAP_pack_int(i); SOAP_pack_float(f); } The grid - Realizzato da Maura Mancini - 47 Conclusioni e Sviluppi futuri: Il Grid è la sfida tecnologica del futuro, la risposta all’aumento esponenziale delle esigenze di calcolo e di condivisione dei dati della comunità scientifica internazionale. The grid - Realizzato da Maura Mancini - 48 Il Grid è l’evoluzione del concetto di Internet: risultato dell’unione di Internet con la banda larga e con gli standard aperti che consentono di mettere in relazione sistemi diversi tra loro. La “vecchia” Internet, nata nel 1969 all’Università di Stanford, è ormai troppo lenta e statica, inadatta alle esigenze degli utenti e ai nuovi modelli di sviluppo dell’economia globale. The grid - Realizzato da Maura Mancini - 49 I confini di utilizzo sono ancora tutti da disegnarsi. Ma è chiaro, sin da ora, che l’ingresso di questa tecnologia nel settore commerciale permetterà: di superare molti limiti del mondo delle imprese e delle amministrazioni pubbliche a chiunque di accedere alle enormi risorse di calcolo distribuite in tutto il mondo The grid - Realizzato da Maura Mancini - 50 di creare organizzazioni virtuali dedicate a progetti di ricerca sperimentale ed attività commerciali o di servizio pubblico tra persone dislocate nei più disparati luoghi del pianeta. favorirà la diffusione di nuovi modelli di business tra le imprese e tra queste e i consumatori. The grid - Realizzato da Maura Mancini - 51