• Non ci sono risultati.

THE GRID

N/A
N/A
Protected

Academic year: 2021

Condividi "THE GRID"

Copied!
51
0
0

Testo completo

(1)

THE GRID

Seminario per il corso di

Reti di calcolatori e sicurezza

Docente Prof. Stefano Bistarelli Studente: Maura Mancini

A.A. 2004/2005

(2)

Indice:

Definizione

Caratteristiche Componenti

Funzionamento Architettura Grid Progetti Grid attivi Comunità interessate Problematiche

Comunicazione sulla griglia Conclusione e Sviluppi futuri

(3)

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.

(4)

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.

(5)

Caratteristiche dei GRID:

Eterogeneità delle risorse Eterogeneità della rete

Eterogeneità delle politiche di sicurezza

L’eterogeneità determina complessità in termini installazione, configurazione e manutenzione.

(6)

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

(7)

Eterogeneità della rete e delle politiche di sicurezza

Le risorse sono connesse fra loro con reti a latenza variabile e molteplici domini di

amministrazione

(8)

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.

(9)

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.

(10)
(11)

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 .

(12)

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)

(13)

Fig..2 – Elementi di una griglia di calcolo

(14)

L’architettura Grid, così come descritta da Ian Foster, Karl Kasselman, Steven Tuecke può essere rappresentata da 5 strati.

(15)

fig 3 – Architettura a strati di una Grid e sue relazioni con l’architettura Internet

(16)

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

(17)

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.

(18)

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

(19)

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

(20)

Esistono diverse tecnologie che consentono di creare Grid:

Condor Legion Unicore

Globus

(21)

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.

(22)

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.

(23)

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.

(24)

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.

(25)

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.

(26)

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

(27)

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.

(28)
(29)

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.

(30)

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

(31)

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

(32)

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.

(33)

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

(34)

Esempi di Grid intermediari includono:

Una cache che registra la provenienza dei dati.

Una via d’accesso tra due sistemi incompatibili

(35)

Figure 5 - Proteus può essere usato per costruire una via d’accesso tra due sistemi incompatibili quali JMS e SOAP.

PROTEUS Sistema B

(SOAP) Sistema A

(JMS)

(36)

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

(37)

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-.

(38)

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.

(39)

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.

(40)

N1 N2 N3

P1 a P2b

P1a P2a

CORE b CORE a

(41)

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.

(42)

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

(43)

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.

(44)

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.

(45)

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.

(46)

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.

(47)

Ogni oggetto serializzabile ha una corrispondente funzione che trasforma l’oggetto in una

rappresentazione elettrica

serializeMyObject() { SOAP_pack_int(i);

SOAP_pack_float(f);

}

(48)

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.

(49)

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.

(50)

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

(51)

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.

Riferimenti

Documenti correlati

Mantenendo questo paragone, attraverso la rete Grid l'utente dovrebbe disporre di una semplice interfaccia che permette di accedere a capacità di calcolo e a dati

• Data Grid: i requisiti di condivisione e accesso trasparente ai dati, anche di grosse dimensioni, e la capacità di gestire i meta-dati relativi all’accesso e all’utilizzo dei

servizi e gli strumenti client di management dei dati; in ambiente grid, i file di dati sono replicati in differenti siti e gli utenti o le applicazioni non. hanno bisogno di

Anche in questo caso le probabilit` a sono stimate sia in forma chiusa, che in modo frequentistico, e come per il caso gaussiano, la differenza che si nota ` e dovuta al fatto

Le strutture grid shells sono una particolare categoria di strutture spaziali leggere, che uniscono al funzionamento strutturale del guscio (shell) la forma discreta del gra-

after every parallel update of grids on all processors fill all ghost cells for all grid blocks. at final temporal update, fix for

If X does not receive any NA message, but its neighbors reply with their cache information stating that the address is present in their neighborhood, then the X concludes that

Another finding of the study, albeit unexpected, was that native English speakers find the SVA word order with the Focus Adverb only almost as grammatical as the