lezione n. 2people.na.infn.it › ~merola › griglie › lezione_02_aa_2008-09.pdf · e tecnici...
TRANSCRIPT
Griglie computazionali - a.a. 2008-09 1
LEZIONE N. 2LEZIONE N. 2
• Progetti Grid INFN-NA e UniNA• Sistemi di calcolo distribuito tradizionali e Gridcomputing• Architettura, livelli, protocolli e servizi Grid• Come funziona una Grid
Griglie Griglie computazionalicomputazionali
Università degli Studi di Napoli Federico IICorso di Laurea Magistrale in Informatica – I Anno
Griglie computazionali - a.a. 2008-09 2
Progetti GRID INFNProgetti GRID INFN--NA e NA e UniNAUniNA
Griglie computazionali - a.a. 2008-09 3
Campus GRIDCampus GRIDMonte SantMonte Sant ’’AngeloAngeloNAPOLINAPOLI
World Wide GRID
Calcolo Parallelo e Linux Farms
Campus GRID
Struttura comune di HPC (High Performace Computing) basata suGRID a livello di campus universitario per la ricerca scientifica in Fisica, Chimica, Matematica.
MatematicaICAR
Centro Stella di Campus
Centro Stella di Campus
ChimicaINSTM
FisicaINFN – INFM
CdC Reg.
Banda1 Gbit
Banda1 Gbit
Progetto Campus GRIDProgetto Campus GRID (2003-2004)
Griglie computazionali - a.a. 2008-09 4
DSF: Locale 1G01 (sede infrastruttura principale del Campus Grid)
DSF : Locale 1M16
DMA
Campus Campus GridGrid a Monte a Monte SantSant’’AngeloAngelo
DiChi
DSF
C.S.I.GARR Collegamenti in fibrafra DSF, Chim. e Mat.
Griglie computazionali - a.a. 2008-09 5
Dip. di ChimicaDip. di Scienze FisicheDip. di MatematicaICAR CNRINFNINFMINSTM
COSTITURE UNA STRUTTURA DI CALCOLO AVANZATO BASATA SU GRIGLIE COMPUTAZIONALI (“CAMPUS GRID”)
Griglie computazionali - a.a. 2008-09 6
Progetto Progetto S.Co.P.ES.Co.P.E (2005(2005--2008)2008)““SSistema istema CoCooperativo Distribuito ad alte operativo Distribuito ad alte PPrestazioni per restazioni per
EElaborazioni Scientifiche laborazioni Scientifiche MultidisciplinariMultidisciplinari””
Obiettivo finale del progetto è la realizzazione di un Sistema di Calcolo ad Alte Prestazioni, orientato ad applicazioni scientifiche multidisciplinari, che operi anche secondo il paradigma GRID, dedicato alla modellistica computazionale ed alla gestione di grosse banche dati, per ricerche nelle aree applicative di interesse del progetto, ovvero:
Scienze del Microcosmo e del Macrocosmo, Scienze della Vita, Scienze dei Materiali e dell’Ambiente.
+ area tecnologica: Middleware
Griglie computazionali - a.a. 2008-09 7
MacroareaScie
nzeM.F.N.
MacroareaMedicina
Struttura centrale (CSI)
Area delleScienze MM.FF.NN.(Campus – GRID)
Area delle Scienze Ingegneristiche
Area delle ScienzeMediche e
Biotecnologie
Dip.Informatica e Sistemistica
Dip. Ingegneria Elettrica
Dip.Ingegneria Elettronica e delle Telecomunicazioni
Dip. Biochimica e Biotecnologie
mediche
MacroareaMedicina
Area delle Scienze
Umane e Sociali
Dip.Matematico-Statistico
Dip. di Scienze Fisiche
Dip.Ingegneria Chimica
Organizzazioni esterne
ma collegate
INFN Sezione di Napoli
CNR-SPACI Napoli
INFM Unitàdi Napoli
CEINGE
CRIAI
ARPA
CINI
Dip. di Analisie ProgettazioneStrutturale
Dipartimentodi SociologiaCentro di
Eccellenza per lo Studio delle Malattie Genetiche
Dip. di Matematica
Dip. di Chimica
19Departments and Research Institutes128Professors and Senior researchers from
UniNA + many others from ResearchInstitutes (INFN, etc.)
35 Young researchers (assegni di ricerca)28 Technology specialists (co.co.co.)
Griglie computazionali - a.a. 2008-09 8
� Astrophysics group• Search for gravitational waves• Data mining and visualization of astronomical massive data setshttp://virgo.infn.it and http://www.eurovotech.org/
� Particle Physics (subnuclear physics) groupStudy of proton-proton interactions at the CERN-LHC La rge Hadron Collider and implementation of a Tier2 Data Centre for large scale, data intensive M ontecarlo simulations and data analysishttp://lxatlas.na.infn.it
�Bioinformatics groupStudy of genome sequence analysis and image analyses for cell motility and other dynamicalphenomenahttp://bioinfo.ceinge.unina.it/ and http://www.ceinge.unina.it
� Numerical Mathematics and Scientific computing groupStudy and design of algorithms for distributed scienti fic applications and implementation on HPC infrastructures� Statistical mechanics groupStudy of applications of statistical mechanics to compl ex systemshttp://smcs.na.infn.it/�Electromagnetism and Telecommunication groupStudy of models and measurements of electromagnetic field in the Napoli metropolitan areahttp://www.diet.unina.it/gruppoCE/GruppoEl.html
� Material Science groupStudy of molecular dynamics and optical properties of nano-structured materialshttp://lsdm.campusgrid.unina.it/ and http://www.nanomat.unina.it
� Soft Matter Engineering groupStudy of models and simulations of the flux of micro-structured materials http://wpage.unina.it/p.maffettone
Griglie computazionali - a.a. 2008-09 9
The The SCoPESCoPEData CenterData Center
33 Racks (of which 10 for Tier2 ATLAS)304 Servers for a total of 2.432 processors130 TeraByte storage
2 remote sites: Fac. Medicine: 60 TB storageDep. Chemistry: 8 server multiCPU(4-proc)
Griglie computazionali - a.a. 2008-09 10
INGRESSO
Data CenterData CenterSCOPESCOPE
Control RoomControl RoomSCOPESCOPE
Biologia
Fisica
Griglie computazionali - a.a. 2008-09 11
SCoPESCoPE DataCenterDataCenter & Tier2 ATLAS& Tier2 ATLAS
Cabina elettrica 1 MW1 MW
Griglie computazionali - a.a. 2008-09 12
Control room
Chem . Med.
Data Center
Low latency network2432 core
Griglie computazionali - a.a. 2008-09 13
CAMPUS GRIDMonte Sant’Angelo
DMADMADMADMADiChDiChDiChDiCh
iiii
DSF DSF INFNINFN
C.S.IC.S.IC.S.IC.S.I
....GARR
Fibra ottica
S.CO.P.ES.CO.P.E..
GARR2.4 Gb/s
Centro Centro S.CO.P.ES.CO.P.E..
DDipartimento diipartimento diSScienzecienze FFisicheisicheSezioneSezione INFNINFN
Cabina elettricaG.E. 1 MW
Control roomControl roomS.CO.P.ES.CO.P.E..
The The MetropolitanMetropolitan NetworkNetwork
Griglie computazionali - a.a. 2008-09
14
ENEA
INFN NAPOLI
POP GARR BARI
UNINA SCOPE2x
1 G
bit
1 Gbit2x1 Gbit
TIER2
10 Gbit
1 Gbit
1 G
bit
2x10 Gbit
POP GARR ROMA
POP GARR M.S. Angelo
POP GARR CATANIACITTADELLA
2.5 Gbit
2.5 Gbit
2.5 Gbit
TIER21 Gbit
Griglie computazionali - a.a. 2008-09 15
Programma Operativo Nazionale 2000-2006“Ricerca, Sviluppo Tecnologico, Alta Formazione”Asse II “Rafforzamento e apertura del sistema scient ifico a di alta formazione meridionale”Misura II.2 “Società dell’Informazione per il Sistema Sc ientifico Meridionale”Azione a – Sistemi di calcolo e simulazione ad alte presta zioni
InteroperabilitInteroperabilit ààfra i Progetti dellfra i Progetti dell ’’Avviso 1575/2004Avviso 1575/2004
ESPERIENZA VIRTUOSA E DI SUCCESSO NEL MERIDIONE
NASCITA DI UNA NUOVA COMUNITA’ SCIENTIFICA STIMABILE NELL’ORDINE DI 800 TRA RICERCATORI E TECNICI
5 DOCUMENTI STRATEGICI E TECNICI OPERATIVI
15 TECNICI DEDICATIALL’INTEROPERABILITA’
10.000 UNITA’ DI CALCOLO
Griglie computazionali - a.a. 2008-09 16
Favorire una proficua sinergia finalizzata a delineare la struttura portante della infrastruttura GRID meridionale che presenti fattori manifesti o latenti di attrattivitàper il sistema industriale
Aprire ad altri soggetti che operano in ambito GRID per promuovere un proficuo interscambio nazionale ed internazionale
Promuovere e favorire gli elementi di novità:
� Nuove comunità di utenti scientifici� Grid Computing anche per il
mondo produttivo e e sociale
Obiettivi della comunitObiettivi della comunit àà ““ 15751575””
E’ stata creata una community e sono state gettate l e basi per le prossime sfide della programmazione 2007-2013:
LA REALIZZAZIONE DELLLA REALIZZAZIONE DELL ’’ee--INFRASTRUTTURA ITALIANA APERTA ALLA COLLABORAZIONE INFRASTRUTTURA ITALIANA APERTA ALLA COLLABORAZIONE E ALLE ALL ’’ INTERAZIONE TRA RICERCA E IMPRESAINTERAZIONE TRA RICERCA E IMPRESA
Griglie computazionali - a.a. 2008-09 17
Il nuovo soggetto: GRISUIl nuovo soggetto: GRISU ’’L’attività di interoperabilità proseguirà al terminedei progetti dell’Avviso 1575 nell’ambito di unastruttura organizzativa denominataGRISU’(Griglia del Sud).
Protocollo di Intesa stipulato trai soggetti attuatori dei quattroprogetti ( ENEA, UniNA Federico II, Cons. COSMOLAB, Cons. COMETA ) e il Cons. SPACI (già fruitore del progetto omonimo cofinanziatotramite l’Avviso 68 dellaprogrammazione 2000-2006).� Ricerca, Sviluppo e Innovazione� Cooperazione con le Imprese� Integrazione nell’Italian Grid Infrastructure e nell’ European G. I.
Griglie computazionali - a.a. 2008-09 18
Strategia di InteroperabilitStrategia di Interoperabilit àà
GARR
PI2S2
GARR Altri Enti e realtà
SPACI
Griglie computazionali - a.a. 2008-09 19
PORTICIPORTICI BRINDISIBRINDISILECCELECCE
TRISAIATRISAIA
GRISU’
EGIEuropean GRID Infrastructure
IGIItalian GRID Infrastructure
INFN-GRID
ENEA-GRID
Griglie computazionali - a.a. 2008-09 20
INFNINFN--GRID ENEAGRID ENEA--GRIDGRID
Griglie computazionali - a.a. 2008-09 21
LA RETE DELLARICERCA OGGI
IL FUTUROGARR-X NEL MERIDIONE
FASE ZERO:INTEGRAZIONE TRA I 4 PON
Il futuro dellIl futuro dell ’’ ee--Infrastruttura della rete GARRInfrastruttura della rete GARR
Griglie computazionali - a.a. 2008-09 22
Le Regioni Le Regioni ““ ObiettivoObiettivo ””per la programmazione 2007per la programmazione 2007 --2013 dell2013 dell ’’UEUE
Convergenza (CONV) (in ritardo di sviluppo)Phasing Out (out da CONV, gode del Sostegno Transitorio)Phasing In (in CRO)Competività Regionale e Occupazione (CRO)
Ph IN
PhOUT
Griglie computazionali - a.a. 2008-09 23
BeyondBeyond SCoPESCoPE
• High bandwidth network and services
• Cloud computing Scientific and industrial applications
• High Performance Computing e GridComputing.
• Data Mining
• Development of algorithms and software
• Aerospace, Automobile
• Telecommunications, Informatics, Elettronics
• Security
• Chemistry, Farmaceutica, Biomedicine
• Transportation e logistics
• Finance and Economy
• Services for Public
�� CooperationCooperation betweenbetween ScienceScience and and IndustryIndustry�� InteroperabilityInteroperability and and IntegrationIntegration in in GriSGriS ùù �������� IGI IGI �������� EGIEGI
Griglie computazionali - a.a. 2008-09 24
e-Infrastructuree-Infrastructure security
mobility
semanticweb.
automatic
managem
ent
e-sience
e-business
aeronauticsgenomics
environment
astronomy
broadband
Oltre lOltre l’’ee--ScienceScience verso . . .verso . . .
““ La luce della scienza cerco e La luce della scienza cerco e ‘‘l beneficio l beneficio ““ (Galileo Galilei)
Griglie computazionali - a.a. 2008-09 25
Sistemi di calcolo distribuitoSistemi di calcolo distribuitotradizionali e tradizionali e GridGrid computingcomputing
Griglie computazionali - a.a. 2008-09 26
Che cosa Che cosa èè un sistema distribuito ?un sistema distribuito ?
E’ un sistema di molti processori distribuiti su rete locale o geografica, interconnessi tra loro, accessibili agli utenti nelmodo più trasparente possibile e capaci di cooperare tra loro alla soluzione di un problema (ad es. un’applicazione dell’utente).
Mass storagecondiviso
Cluster di PC
Utenti
Esempio
R e t e
Griglie computazionali - a.a. 2008-09 27
““ ProPro”” e e ““ ControContro”” di un sistema distribuitodi un sistema distribuitorispetto a rispetto a MainframesMainframes o a PC indipendentio a PC indipendenti
Vantaggi:• Basso costo in rapporto alle prestazioni.• Potenza integrata scalabile.• Reti a banda larga e affidabili (100 Mb/s – 10 Gb/s).• Distribuzione delle risorse di calcolo su più sedi (es. banche,
aziende, industrie, istituzioni scientifiche, università).• Affidabilità dell’intero sistema (riduzione dei single points of
failure).• Condivisione di dati su più sedi (es. database comuni).• Lavoro collaborativo (es. video e audio conferenza, e-mail, web).Problemi:• Gestione “globale” e “controllata”.• Riservatezza e Sicurezza delle informazioni.• Disaster Recoverysu scala geografica.
Griglie computazionali - a.a. 2008-09 28
L A N
cache
CPU
M cache
CPU
M cache
CPU
M
File Server
Submit job LSF, PBS, …Job Manager
Run job
Esempio di loosely coupled SW su loosely coupled HW: Network Operating System Network Operating System (file condivisi)
Griglie computazionali - a.a. 2008-09 29
Problema:Controllo centralizzato, mancanza di coordinameno per l’esecuzione dei processi e scarsa interazione tra i sistemi componenti.
Soluzione:SistemaSistemaoperativooperativo distribuitodistribuito :: tightly-coupled SW su loosely-coupled HW come se fosse un singolo sistema invece che una collezione di singoli sistemi.
Obiettivi da raggiungere:Meccanismo unico di comunicazione fra i processi(Interprocess communication)Schema unico di protezione globale (Security).Unica gestione dei processi (Process management).Unico meccanismo di accesso ai dati (Data management).Sistema informativo globale (Information system).Autonomia di utilizzo delle risorse locali(Governance).
Griglie computazionali - a.a. 2008-09 30
Requisiti di un sistema distribuitoRequisiti di un sistema distribuitoTrasparenzaTrasparenza::
Il sistema deve apparire come un sistema singolo. Si puo’ ottenere a due livelli:FlessibilitFlessibilitàà:Adattabilità a nuove esigenze.
AffidabilitAffidabilit àà (reliability):
Caratteristica intrinseca del sistema distribuito: se una macchina ha problemi il job puòandare su altre.
EfficienzaEfficienza (performance):
Parametri di efficienza (performance metrics):
• Response time.
• Throughput (numero di job in un’ora, strettamente dipendente dal tipo di job:
cpu bound o I/O bound).
• Uso di banda trasmissiva sulla rete.
Granularita’ del calcolo (grain size):
• Fine-grain parallelism (difficile per un SD).
• Coarse-grain parallelism (si adatta meglio a un SD).
ScalabilitScalabilitàà:
L’espandibilità è un requisito fondamentale di un sistema distribuito.
Griglie computazionali - a.a. 2008-09 31
CHE COSA ECHE COSA E’’ UNA GRID ?UNA GRID ?
Si parla di molti tipi di griglie computazionali: Science Grid, Bio Grid, Campus Grid, Data Grid, Sensor Grid,Cluster Grid, ecc.(In passato, analoga confusione di termini: SNA, DECNET erano parte di Internet o no ? Chiarimento: Internet è architettura basata su IP (InternetProtocol).
� Necessità di una definizione di GRID non ambigua !
1969 (Len Kleinrock) –Analogia con le reti elettriche e telefoniche.“We will probably see the spread of ‘computer utilities’, which, like presentelectric and telephone utilities, will service individual homes and officesacross the country”.
Griglie computazionali - a.a. 2008-09 32
1998 (Ian Foster e Carl Kesselman) –“A computational grid is a hardware and software infrastructure that providesdependable, consistent, pervasive and inexpensive access to high-end computational capabilities”.
2000 (Ian Foster, Carl Kesselman e Steve Tuecke) –Grid computing is concerned with “coordinated resource sharing and problemsolving in dynamic, multi-istitutional virtual organizations”.
Punti chiave:
• Capacità di negoziare secondo regole stabilite la condivisione di risorse (computers, software, dati, ecc.) da parte di organizzazioni o istituzioni (scientifiche, industriali, governative, ecc.) cheagiscono da VirtualVirtual OrganizationsOrganizations.
• Importanza di definire protocolli standard per consentire la interoperabilità e realizzare una infrastruttura comune .
Griglie computazionali - a.a. 2008-09 33
DEFINIZIONE DI GRID IN 3 PUNTIDEFINIZIONE DI GRID IN 3 PUNTI
GRID è un sistema che:
1) Coordina risorse che non devono essere soggette ad alcun controllo centralizzato.
(es. PC desktop personali, nodi di calcolo e database di istituzioni sparse su territorio nazionale e nel mondo, senza lanecessità del controllo tipico di un sistema a gestione locale, pur garantendo la sicurezza e la realizzazione delle politiche di utilizzo all’interno di un’organizzazione virtuale).
Griglie computazionali - a.a. 2008-09 34
2) Usa protocolli e interfacce standard, open, general-purpose.
(essenziali per assicurare in modo trasparente funzionalità di base quali autenticazione, autorizzazione, ricerca e accesso alle risorse).
3) Assicura un’elevata qualità di servizio (QoS -Quality of Service).
(es. tempi di risposta, throughput, disponibilità, sicurezza, co-allocazione di risorse).
Griglie computazionali - a.a. 2008-09 35
Non sono GRID (ad esempio):
a) Un sistema di gestione di code batch che utilizzano le CPU di un computer multi-processore o di computer inseriti in un cluster o su una LAN: c’è controllo centralizzato delle risorse e conoscenza completa dello stato del sistema.
b) Il Web: benché usi protocolli standard, aperti e general-purpose, manca l’uso coordinato delle risorse per assicurare la migliore QoS.
Sono approssimativamente GRID (ad esempio):
c) I sistemi di schedulers multi-site(es. Condor, Entropia) o di database federati (es. Storage Resource Broker) che distribuiscono risorse in modo non centralizzato e assicurano seppur limitate QoS, pur non basandosi completamente su standards.
Griglie computazionali - a.a. 2008-09 36
Sono GRID (ad esempio):
I progetti di “Data Grid” per il calcolo intensivo e distribuito in ambito accademico e scientifico in EU (EDG, CrossGRID, Data Tag, LCG, EGEE), in USA (GriPhyN, PPDG, iVDGL) e in Asia (ApGrid) e molti altri ancora.
Essi si propongono di:
• Integrare risorse anche non omogenee appartenenti a molte istituzioni che conservano in ogni caso le loro politiche di utilizzo. Accesso on-demandalle risorse.
• Usare protocolli aperti, standard e general-purpose per la gestione delle risorse (ad es. il Globus Toolkit, l’EDG Toolkit, l’Open GridService Architecture- OGSA).
• Garantire qualità di servizio in vari settori (sicurezza, affidabilità, prestazioni, ecc.).
Griglie computazionali - a.a. 2008-09 37
Architettura, livelli, protocolli Architettura, livelli, protocolli e servizi e servizi GridGrid
Griglie computazionali - a.a. 2008-09 38
IL PROBLEMA GRIDIL PROBLEMA GRID
Realizzare la condivisione coordinata di risorse su larga scalaRealizzare la condivisione coordinata di risorse su larga scalain un contesto di organizzazione virtuale, in un contesto di organizzazione virtuale, multimulti --instituzionaleinstituzionalee dinamicae dinamica..
Occorre una nuova architettura che:
• identifichi le componentiprincipali del sistema.• specifichi lo scopoe la funzionedi queste componenti.• indichi come queste componenti interagiscono fra di loro.
• definisca servizi e protocolli comuni per garantire l’ interoperabilità attraverso la rete (flessibilità di aggiungere nuovi utenti, servizi e piattaforme hw/sw in modo dinamico) e costituire così un sistema aperto.
Griglie computazionali - a.a. 2008-09 39
PROTOCOLLO:PROTOCOLLO:Insieme di regole e formati per lo scambio di Insieme di regole e formati per lo scambio di informazioni.informazioni.
Protocolli standard sono fondamentali per assicurare l’interoperabilità.Esempi:
• Internet Protocol (IP): trasferimento di pacchetti senza garanzia di affidabilità.
• Transmission Control Protocol (TCP): costruito su IP per definire un protocollo affidabile.
• Transport Layer Security Protocol (TLS): costruito su TCP, garantisce sicurezza e integrità dei dati.
• Lightweight Direct Access Protocol (LDAP):costruito su TCP, èun protocollo per l’accesso a directories (anche database).
DEFINIZIONIDEFINIZIONI
Griglie computazionali - a.a. 2008-09 40
SERVIZIO: protocollo + funzione.SERVIZIO: protocollo + funzione.CapacitCapacit àà di svolgere una funzionalitdi svolgere una funzionalit àà sulla retesulla rete(ad es. muovere files, creare processi, verificare diritti di accesso). Un servizio è definito in base alla funzione che svolge ed al protocollo che “parla”.
Esempi:• FTP server: parla il File Transfer Protocol e gestisce l’accesso in
lettura e scrittura di files remoti. Opera il trasferimento di pacchetti senza garanzia di affidabilità.
• LDAP server: parla il protocollo LDAP e supporta le risposte alle interrogazioni (ad es. usando informazioni presenti in un database).
Più servizi possono parlare lo stesso protocollo: ad es. nel Globus Toolkit il Replica Catalog(RC) e l’Information Service (IS) usano entrambi LDAP.
Griglie computazionali - a.a. 2008-09 41
L’ARCHITETTURA A CLESSIDRALL ’’ ARCHITETTURA A CLESSIDRAARCHITETTURA A CLESSIDRASi tratta di un modello a strati (layers).Il modello di riferimento è la clessidra(hourglass):
• Il centro (neck) della clessidra definisce un piccolo insieme di astrazioni di base (core) e di protocolli (servizi di base).
• La parte superiore contiene high levelservices (o behaviors) che si basano sui servizi e protocolli sottostanti.
• La parte inferiore contiene le risorse della grid.
Griglie computazionali - a.a. 2008-09 42
Griglie computazionali - a.a. 2008-09 43
Fabric
Connectivity
Resource
Collective
Application
Griglie computazionali - a.a. 2008-09 44
Fornisce le risorse per l’accesso condiviso da parte della Grid.Ad esempio:
• Risorse computazionali• Sistemi di storage• Cataloghi• Risorse di rete• Sensori
Le risorse devono assicurare un meccanismo di enquiry che consenta di scoprire la loro struttura, lo stato e la loro capacitàed un meccanismo di managementper il controllo della qualità del servizio offerto.
FABRIC Layer: Interfacce per il controllo locale
FABRIC FABRIC LayerLayer: : Interfacce per il controllo localeInterfacce per il controllo locale
Griglie computazionali - a.a. 2008-09 45
Definisce i protocolli base per la comunicazione e l’autenticazione.
I protocolli di comunicazione abilitano lo scambio deidati fra le risorse del fabric layer e si basano sui protocolli dell’architettura Internet (IP, TCP, UDP, DNS, RSVP).
I protocolli di autenticazione sono costruiti sui servizidi comunicazione per fornire meccanismi crittograficisicuri per verificare l’identità di utenti e risorse.
CONNECTIVITY Layer: Comunicazione facile e sicura
CONNECTIVITY CONNECTIVITY LayerLayer: : Comunicazione facile e sicuraComunicazione facile e sicura
Griglie computazionali - a.a. 2008-09 46
I protocolli di autenticazione devono avere le seguenti caratteristiche:
• Single sign on: l’utente si deve autenticare una volta sola.• Delegation: propagazione delle credenziali ai programmi• Integration with local security: non sostituiscono ma si mappano nell’environment locale.• User-based trust relationships: il sistema di security nondeve richiedere che i sistemi di security locali interagiscano tradi loro per configurare l’ambiente di sicurezza.
Il Globus Toolkit usa i protocolli GSI (Grid SecurityInfrastructure) per l’autenticazione (certificati con formato X.509), la protezione della comunicazione (estende i protocolli di TLS - Transport Layer Security) e l’autorizzazione.
Griglie computazionali - a.a. 2008-09 47
Definisce i protocolli per negoziare, iniziare, monitorare, controllare, addebitare l’utilizzo di risorse singole, cioè non distribuite.
Questi protocolli utilizzano funzioni del Fabric peraccedere e controllare risorse locali.Due classi principali di protocolli dello strato Resource:
• Information protocols , per ottenere informazioni sulla configurazione e lo stato di una risorsa.
• Management protocols , per negoziare l’accesso alla risorsa condivisa.
RESOURCE Layer: Condivisione di risorse singole
RESOURCE RESOURCE LayerLayer: : Condivisione di risorse singoleCondivisione di risorse singole
Griglie computazionali - a.a. 2008-09 48
Il Globus Toolkit usa protocolli standard:
• GRIP (Grid Resource Information Protocol), basato su LDAP per definire uno standard resource information protocole il relativo information model.• GRRP (Grid Resource Registration Protocol), per registrare le risorse.• GRAM (Grid Resource Access Management), basato su HTTP, per l’allocazione delle risorse di calcolo e per il monitoring e il controllo del calcolo su queste risorse. GRAM utilizza il linguaggio RSL (Resource Specification Language)per la specifica delle richieste.• GridFTP (Grid File Transfer Protocol), basato su FTP, per l’accesso ai dati; ha funzionalità estese rispetto a FTP (usa i protocolli di sicurezza dello strato Connectivity, gestisce una sorta di parallelismo per i trasferimenti ad alta velocità, ecc.).
• LDAP (Lightweight Directory Access Protocol), per l’accesso a directories.
A ciò si aggiungono servizi quali: GIIS (Grid Index Information Service); GIS (GridInformation Service); GRIS (Grid Resource Information Service). GSS(GenericSecurity Service).
L’ Information Service ha un ruolo fondamentale nella grid perché sta alla base del resource discovery e del decision making.
Griglie computazionali - a.a. 2008-09 49
Griglie computazionali - a.a. 2008-09 50
Definisce protocolli e servizi (e API e SDK) che non sono associati a una singola risorsa ma a una collezione di risorse. Essi si basano sui protocolli definiti nel Resourcee nel Connectivity layer. Quindi possono implementare una vasta gamma di servizi senza porre nuovi requisiti sulle risorse condivise.
Esempi di servizi:
� Directory services: consentono ai membri di una VO di identificare le risorse a disposizione della VO. Utilizzano i protocolli GRRP e GRIP.� Co-allocation, scheduling and brokering services: consentono ai membri di una VO di richiedere e schedulare l’allocazione di una o più risorse (es. Condor-G).� Monitoring and diagnostics services: consentono il monitoraggio delle risorse di una VO, inclusi gli attacchi (intrusion detection).� Data replication services: consentono la gestione ottimizzata delle risorse di storage di una VO per massimizzarne le prestazioni (tempi di risposta, affidabilità, ecc.).
COLLECTIVE Layer: Coordinamento di collezioni di risorse
COLLECTIVE COLLECTIVE LayerLayer: : Coordinamento di collezioni di risorseCoordinamento di collezioni di risorse
Griglie computazionali - a.a. 2008-09 51
� Grid-enabled programming systems: consentono l’utilizzo di modelli di programmazione utili in ambienti Grid per l’implementazione dei vari servizi Grid(es. Message Passing Interface).� Workload management systems and collaboration frameworks: chiamati anche PSE (Problem Solving Environments) per l’utilizzo e la gestione dei carichi di lavoro in ambienti collaborativi.� Software discovery services: consentono di scegliere software e piattaforme adatte per il problema specifico da risolvere (es. NetSolve).� Community authorization servers: consentono di gestire le politiche di accesso alle risorse di una comunità in modo da renderle fruibili all’utente.� Community accounting and payment services: consentono di raccogliere informazioni sull’utilizzo delle risorse ai fini di resoconti, pagamenti, limitazioni di uso.� Collaboratory services: consentono lo scambio di informazioni all’interno di vaste comunità di utenti (es. CavernSoft).
Il Globus Toolkit utilizza i servizi di cui sopra e altri, fra cui MDS (Meta Directory Service)per la gestione informativa delle risorse.
Griglie computazionali - a.a. 2008-09 52
APPLICATIONS LayerAPPLICATIONS APPLICATIONS LayerLayer
Comprende le applicazioni degli utenti appartenenti ad una Virtual Organization.Le applicazioni sono costruite sulla base dei servizi definiti in ciascuno strato.
Griglie computazionali - a.a. 2008-09 53
Griglie computazionali - a.a. 2008-09 54
Middleware INFNGRIDMiddleware INFNGRID
� Servizi “core” (presenti in ciascun sito)� Repository pacchetti del middleware
(YAIM - INFNGRID 3.0.0 - Scientific Linux CERN 3.x - Istallazione e aggiornamenti automatici via PXE – Framework Globus 2.x)
� Servizi di computing
(Computing Element � gestione dei Worker Node – Servizi Globus: globus-gatekeeper, globus-gridftp, GRIS – Batch system: PBS, Torque, LSF)
� Servizi di storage
(Storage Element � gestione dello storage – Servizi Globus: globus-gridftp, GRIS)
� User Interface
(sottomissione di job, visualizzazione stato di un job, cancellazione di un job, recupero dell'output di un job, via remota SSH o web GENIUS)
Piena compatibilità con il m/wEGEE (gLite/LCG) con releasee aggiornamenti frequentie controllati centralmente.
Griglie computazionali - a.a. 2008-09 56
� Servizi “collective” (gestiti centralmente)� Servizi di autenticazione/autorizzazione
(VOMS - Virtual Organization Membership Service)
� Servizi di allocazione dei job
(Resource Broker – allocazione job via matchmaking con le risorse)
� Servizi informativi
(GRIS Grid Resource Information Service � Information Index
� Cataloghi di file / repliche
(LFC LCG File Catalog � localizzazione dei dati, copia dei dati, gestione e replica dei dati, gestione dei meta-dati, MySQL)
� User interface
Griglie computazionali - a.a. 2008-09 57
� Servizi aggiuntivi di supporto e gestione
dell’infrastruttura� Certification Authority
(Certificati personali e server di una Registration Authority locale)
� Servizi di Monitoring
(GridIce � monitoring delle risorse, SAM Service Availability Monitoring �monitoring dei servizi)
� Servizi di Accounting
(DGAS - Distributed Grid Accounting: le informazioni sono raccolte in un database Home Location Register)
� Servizi di Ticketing per la risoluzione di problemi
(Gestione dei trouble ticket)
Griglie computazionali - a.a. 2008-09 58
SE
WNCE
YAIM
UI
GRID
UI
DGAS
TS
SAM
MS
LFC
II
VOMS
RB
Grid Service Center
Grid Site
Griglie computazionali - a.a. 2008-09 59
Il portale web GENIUS
Griglie computazionali - a.a. 2008-09 60
Il laboratorio GILDA per la “dissemination”
Griglie computazionali - a.a. 2008-09 61
Open Grid Services Architecture (OGSA) è un nuovo paradigmaconcettuale che vuole mettere insieme le potenzialità dei serviziWeb con il Grid computing. Le applicazioni invocheranno i Web services tramite il Web Services Description Language (WSDL).
Molti progetti (es. LCG ,EGEE) già prevedono il passaggio da un’architetturabasata su Globus ad unabasata su OGSA.
gLite è il m/w EGEE
EVOLUZIONE EVOLUZIONE DELLDELL ’’ ARCHITETTURA GRIDARCHITETTURA GRID
Globus 2 based
OGSA based
EDG
VDT
. . .
LCG EGEE
. . .
EGEE-3EGEE-2EGEE-1LCG-2LCG-1
gLite
Griglie computazionali - a.a. 2008-09 62
Griglie computazionali - a.a. 2008-09 63
Collective ServicesCollective Services
Information&
Monitoring
Information&
Monitoring
Replica ManagerReplica
ManagerGrid
SchedulerGrid
Scheduler
Local ApplicationLocal Application Local DatabaseLocal Database
Underlying Grid ServicesUnderlying Grid Services
Computing ElementServices
Computing ElementServices
AuthorizationAuthenticationand Accounting
AuthorizationAuthenticationand Accounting
Replica CatalogReplica Catalog
StorageElementServices
StorageElementServices
SQL Database Services
SQL Database Services
Fabric servicesFabric services
ConfigurationManagement
ConfigurationManagement
Node Installation &Management
Node Installation &Management
Monitoringand
Fault Tolerance
Monitoringand
Fault Tolerance
ResourceManagement
ResourceManagement
Fabric StorageManagement
Fabric StorageManagement
Grid
Fabric
Local Computing
Grid Grid Application LayerGrid Application Layer
Data Management
Data Management
Job Management
Job Management
MetadataManagement
MetadataManagement
Service Index
Service Index
APPLICATIONS
GLOBUS
M / W
LL ’’ ARCHITETTURA DEL M/WARCHITETTURA DEL M/W
Griglie computazionali - a.a. 2008-09 64
Collective ServicesCollective Services
Information & Monitoring
Information & Monitoring Replica
ManagerReplica Manager Grid
SchedulerGrid
Scheduler
Local ApplicationLocal Application Local DatabaseLocal Database
Underlying Grid ServicesUnderlying Grid Services
Computing ElementServices
Computing ElementServices
AuthorizationAuthenticationand Accounting
AuthorizationAuthenticationand Accounting
Replica Catalog
Replica CatalogStorage
ElementServices
StorageElementServices
SQL Database Services
SQL Database Services
Fabric servicesFabric services
ConfigurationManagement
ConfigurationManagement
Node Installation &Management
Node Installation &Management
Monitoringand
Fault Tolerance
Monitoringand
Fault ToleranceResource
ManagementResource
ManagementFabric StorageManagement
Fabric StorageManagement
Grid Application LayerGrid Application Layer
Data Management
Data ManagementJob
ManagementJob
ManagementMetadata
ManagementMetadata
Management Object to File Mapping
Object to File Mapping
Service IndexService Index
ComputingComputing ElementsElements
SystemSystemManagersManagers
ScientistsScientists
OperatingOperatingSystemsSystems
FileFile SystemsSystems
StorageStorageElementsElementsMassMass Storage SystemsStorage Systems
HPSS, CastorHPSS, Castor
UserUser AccountsAccounts
CertificateCertificate AuthoritiesAuthorities
ApplicationApplicationDevelopersDevelopers
BatchBatch SystemsSystemsPBS, LSF, etc.PBS, LSF, etc.
I COMPONENTII COMPONENTI
Griglie computazionali - a.a. 2008-09 65
Come funziona una Come funziona una GridGrid
Griglie computazionali - a.a. 2008-09 66
Autenticazione e Accesso Autenticazione e Accesso
� L’identità dell’utente deve essere certificata dalle CA (Certification Authorities) nazionali.
� Le risorse devono essere certificate dalle CA e sono rese accessibili solo agli utenti certificati ed identificati (X.509 Public Key Infrastructure).
� L’utente passa ai propri processi temporaneamente il diritto di essere eseguiti.
� Ciascuna organizzazione virtuale si dota di politiche per l’accesso dei propri utenti alle risorse appartenenti a domini differenti (diverse sedi).
Griglie computazionali - a.a. 2008-09 67
Computing Element
Storage Element
Site X
Information System
submit
submit
queryretrieve
retrieve
Resource Broker
User Interface
publishstate
R-GMA
Replica LocationService
VOMS
query
updatecredential
ESEMPIO DI JOB SUBMISSIONESEMPIO DI JOB SUBMISSION
Griglie computazionali - a.a. 2008-09 68
� User Interface (UI) : punto di accesso dell’utente al Workload Management System.
� Resource Broker(RB) : gestore delle risorse di GRID, ha il compito di trovare le migliori risorse dove sottomettere i jobs.
� Job Submission Service(JSS) :fornisce un sistemaaffidabile di sottomissione jobs.
� Information Index (II) : servizio specializzato usato dalResource Broker come filtro per l’Information Service per selezionare le risorse.
� Logging and Bookkeeping services (LB) :fornisce le informazioni sui jobs su richiesta degli utenti.
Griglie computazionali - a.a. 2008-09 69
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
CE characts& status
SE characts& status
RB node
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager Inform.
Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
submitted
UI: allows users to access the functionalitiesof the WMS
Job Status
RLS
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
ReplicaCatalog
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
edg-job-submit myjob.jdlMyjob.jdl
JobType = “Normal”;
Executable = "$(CMS)/exe/sum.exe";
InputSandbox = {"/home/user/WP1testC","/home/file*”, "/home/user/DATA/*"};
OutputSandbox = {“sim.err”, “test.out”, “sim.log"};
Requirements = other. GlueHostOperatingSystemName == “linux" &&
other. GlueHostOperatingSystemRelease == "Red Hat 6.2“ && other.GlueCEPolicyMaxWallClockTime > 10000;
Rank = other.GlueCEStateFreeCPUs;
submitted
Job Status
Job Description Language(JDL) to specify job characteristics and requirements
gliteglite--jobjob--submit submit file.jdlfile.jdl
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
Input Sandboxfiles
Job
waiting
submitted
NS: network daemon responsible for acceptingincoming requests
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
WM: responsible to takethe appropriate actions to satisfy the request
Job
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
Match-Maker/Broker
Where must thisjob be executed ?
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
Match-Maker/ Broker
Matchmaker: responsible to find the “best” CE where to submit a job
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
Match-Maker/ Broker
Where are (which SEs) the needed data ?
What is thestatus of the
Grid ?
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
Match-Maker/Broker
CE choice
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
waiting
submitted
JobAdapter
JA: responsible for the final “touches”to the job before performing submission(e.g. creation of wrapper script, etc.)
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
JC: responsible for theactual job managementoperations (done via CondorG)
Job
submitted
waiting
ready
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
CE characts& status
SE characts& status
RBstorage
Job
InputSandboxfiles
submitted
waiting
ready
scheduled
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
StorageElement
RB node
RBstorage
InputSandbox
submitted
waiting
ready
scheduled
running
“Grid enabled”data transfers/
accesses
Job
Job Status
ComputingElement
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
RBstorage
OutputSandboxfiles
submitted
waiting
ready
scheduled
running
done
Job Status
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
RBstorage
OutputSandbox
submitted
waiting
ready
scheduled
running
done
edg-job-get-output <dg-job-id>
Job Status
gliteglite--jobjob--output output jobidjobid
UI
NetworkServer
Job Contr.-
CondorG
WorkloadManager
RLS
Inform.Service
ComputingElement
StorageElement
RB node
RBstorage
OutputSandboxfiles
Job Status
cleared
submitted
waiting
ready
scheduled
running
done
Griglie computazionali - a.a. 2008-09 85
UI
Log Monitor
Logging &Bookkeeping
NetworkServer
Job Contr.-
CondorG
WorkloadManager
ComputingElement
RB node
LM: parses CondorG logfile (where CondorG logsinfo about jobs) and notifies LB
LB: receives and stores job events; processes corresponding job status
Log ofjob events
edg-job-status <dg-job-id>edg-job-get-logging-info <dg-job-id>
Job status
gliteglite--jobjob--status status jobidjobid
Griglie computazionali - a.a. 2008-09 86
http://grid-it.cnaf.infn.it
Grid.IT Production Grid: Operations PortalGrid.IT Production Grid: Operations Portal
Griglie computazionali - a.a. 2008-09 87
Access to the Grid
Griglie computazionali - a.a. 2008-09 88
Griglie computazionali - a.a. 2008-09 89
Grid Monitoring
Griglie computazionali - a.a. 2008-09 90
Griglie computazionali - a.a. 2008-09 91