FESR Trinacria Grid Virtual Laboratory gLite – Panoramica Riccardo Bruno Trigrid Tutorial Catania,
Catania, Trigrid Tutorial, Scopo di una Grid Scopo dei sistemi e delle applicazioni Grid: Integrare Virtualizzare Gestire RISORSE e SERVIZI attraverso diverse organizzazioni (VO). VO – Singoli e/o istituzioni con accesso diretto alle risorse.
Catania, Trigrid Tutorial, Requisiti di un sistema Grid Eterogeneo (OSes, Devs, Apps.) Condivisione Risorse (Gestione, Sicurezza e Contabilità) Utilizzo delle Risorse (Prenotazione, Misura, Controllo e Logging) Esecuzione di Job (Accesso alle VO, QoS, LCM, WFM, SLA) Servizi sui dati (Integrazione, Fornitura, Catalogazione) Sicurezza (Autenticazione, Autorizzazione e Verifica) Costi Amministrativi (Fornitura, Installazione e Configurazione) Scalabilità Disponibilità (Disaster Recovery, Gestione dei Guasti) Requisiti specifici: (EGEE: HEP, BioMed)
Catania, Trigrid Tutorial, gLite - Middleware Più VO offrono la condivisione di risorse mediante servizi Accedere Allocare Controllare Contabilizzare Grid Middleware – Strato tra servizi di alto livello e risorse fisiche gLite - Lightweight Middleware for Grid Computing (Middleware
Catania, Trigrid Tutorial, gLite - Scenario Altri Progetti Grid: Globus Global Grid Forum - GGF Open Grid Services Architecture – OGSA EU DataGrid AliEn Condor … LCG: Globus 2 basedWeb services based gLite-2gLite-1LCG-2LCG-1
Catania, Trigrid Tutorial, gLite – SOA Adesso: Applicazioni e servizi su ambienti distribuiti attraverso la rete Il passato: Sistemi centralizzati SOA – Sistemi distribuiti mediante servizi; senza accoppiamento tra servizi inerattivi. L’accoppiamento rende difficili le modifiche. SOA Ulteriore astrazione del concetto di riutilizzo del codice. Soggetto ad erroriSemplicità CostosiFlessibilità Riutilizzo del codiceFlessibilità ModificheEstensibilità Qualità SW Produttività
Catania, Trigrid Tutorial, gLite – SOA, Servizi Funzioni Ben definite Contenute in se stesse Indipendenti Interfaccia mediante messaggi Messaggi Interazione tra servizi mediante messaggi con una comune struttura di messaggi SOAP (Web Services) – Protocollo standard per gestire i messaggi tra i servizi WSDL - Un linguaggio che espone l’intefaccia del servizio. Politiche (Policy): Sicurezza, QoS, Gestione Stato: (Business Logic) Consistente, Accurato e Durevole
Catania, Trigrid Tutorial, gLite – Decomposizione dei serv. 5 Servizi di alto livello + CLI & API Legenda: Disponibili Presto disponibili
Catania, Trigrid Tutorial, gLite – Servizi di sicurezza Autenticazione Autorizzazione Verifica
Catania, Trigrid Tutorial, gLite – Servizi di sicurezza Authentication (Autenticazione) Identificare entità (utenti, sistemi e servizi) stabilendo un contesto di scambio messaggi (Chi sei?). Scopo – Offrire delle credenziali che abbiano un valore universale valido per diversi scopi attraverso diverse infrastrutture, comunità, VO e progetti. gLite usa PKI (X.509) infrastruttura che utilizza CA come terze parti di fiducia. gLite utilizza: MyProxy ( esteso da VOMShttp://grid.ncsa.uiuc.edu/myproxy/ Trust domain: L’insieme di tutte le CA di EGEE è definito Dominio di Fiducia. Revoca: Le identità devono essere revocate a intervalli di tempo fissati Memorizz. Credenziali: Locali o Delegate (Servizi or Utenti) Privacy: Trattamento dei dati personali Considerazioni: Uso di sistemi informativi sicuri. Non servire un’intera VO.
Catania, Trigrid Tutorial, gLite – Servizi di sicurezza Authorization (Autorizzazione) Permette o nega l’accesso a servizi, mediante uso di: ‘policy’. Agent: L’utente interagisce con un server d’autorizzazione centralizzato. Push: I servizi di autorizzazione rilasciano dei ‘Token’ (Gettoni). Pull: La risorsa richiede l’accesso ad un servizio di autorizzazione. Sorgenti d’autorizzazione: Attribute Authority (AA): Utente Insieme di Attibuti. (VOMS) Policy Assertions: Uso di ‘policy’ di terze parti. (CAS) Combinazione e Valutazione delle ‘Policy’: Combinare informazioni sulle ‘policy’ a partire da diverse sorgenti. (XACML) Autorizzazione mutua: ‘Client’ Servizio (es. trattando dati sensibili)
Catania, Trigrid Tutorial, gLite – Servizi di sicurezza Auditing (Controllo), Delegtion (Delega), Sandboxing (Virtualizz.) Auditing - Monitoring e analisi Post-Mortem di eventi relativi alla sicurezza. Nelle griglie computazionali l’auditing è affiancato con l’Accounting (Contabilizz.). Chi ha fatto cosa? Dove e quando? In caso di Accounting: Per quanto tempo? Quanto? Delegation: Il bisogno di delegare credenziali ad altre entità è fatto mediante l’uso di Certificati Proxy. Questo è il meccanismo più adottato dalle comunità Grid. (Risolve anche: Accesso singolo, Identificazione dinamica delle entità). Sandboxing – Le applicazzioni Grid hanno necessità dell’isolamento delle risorse assegnate in modo trasparente da parte dei servizi di sicurezza: AuthN e AuthZ. (Virtualizzazione).
Catania, Trigrid Tutorial, gLite – Accesso a Grid Due possibilità: APIs e CLI. L’adozione di web-services permette la generazione automatica delle APIs (soggetto ad errori, carenza di tools).
Catania, Trigrid Tutorial, gLite – Servizi Informativi e di Monitoring I servizi informativi, componente vitale per i sistemi Grid.
Catania, Trigrid Tutorial, gLite – Servizi Informativi e di Monitoring Servizi basilari (RGMA) L’informazione è fornita mediante un meccanismo di pubblicazione e consumo. Illusione di un singolo database federato da interrogare con SQL. Each VO ha un VDB (database virtuale). Schema - Contiene le tabelle (GLUE) Registry – Lista le sorgenti di informazione disponibile (Mediazione) Producers – Sorgenti di informatione (Primari, Secondari, On-demand) Consumers – Fa interrogazioni sulle tabelle (Continue, Ultime, Storiche)
Catania, Trigrid Tutorial, gLite – Information and Monitoring Services Job Monitoring, Service Discovery, Prestazioni di Rete e Monitoring Job Monitoring – Servizi di Java logging, log4j, Apache/Chainsaw (per altri linguaggi). Service Discovery – Inidividua le risorse diponibili a utenti e servizi (Libreria!). Prestazioni di Rete e Monitoring – Esistono diversi ‘framework’ di analisi prestazioni di rete e monitoring. Scopo: Trovare un’interfaccia standard a questi ‘framework’.
Catania, Trigrid Tutorial, gLite – Servizi di gestione job Contabilizzazione Provenienza JobGestione Paccchetti Elemento computazionale Gestione carico di lavoro
Catania, Trigrid Tutorial, gLite – Servizi di gestione job Contabilizzazione (Accounting) Accumula informazioni sull’utilizzo delle risorse richiesto da utenti o gruppi (VO). L’informazione sui servizi/risorse Grid richiedono l’uso di sensori (Resource Metering, Metering Abstraction Layer, Usage Records). I Records sono raccolti da un Sistema di Contabilizzazione (Query: Utenti, Gruppi, Risorse) I servizi Grid dovrebbero registrarsi mediante un servizio di assegnazione del prezzo (tariffazione) se la contabilizzazione ha scopi di fatturazione.
Catania, Trigrid Tutorial, gLite – Servizi di Gestione job Elemento Computazionale (Computing Element) Servizio che rappresenta la risorsa computazionale che è responsabile della gestione dei job: (sottomissione, controllo, etc.) Il CE può essere usato: Da un Client Generico; un’utente finale che interagisce direttamente con il Computing Element, o il Worload Manager il quale sottomette un dato job ad un CE appropriato mediante un processo di ‘matchmaking’. Due modelli di sottomissione (In accordo con le richieste e le policy) : PUSH (Eager (avido) Scheduling) (job inoltrati al CE), PULL (Lazy (pigro) Scheduling) (jobs prelevati dal WMS se il CE non ha job) Il CE è responsabile di descrivere se stesso. ll CE è responsabile di raccogliere le informazioni di contabilizz. sui jobs.
Catania, Trigrid Tutorial, gLite – Servizi di gestione job Gestione Carico di Lavoro (Workload Management) WMS insieme dei componenti del ‘middleware’ responsabili della distribuzione e gestione di job attraverso le risorse di Grid. Due componenti base del WMS: WM: accetta e soddisfa richieste per la gestione dei job. ‘Matchmaking’ è il processo di essegnamento della migliore risorsa disponibile. L&B: Tiene traccia dell’esecuzione di job in termini di eventi: (Sottomesso, Running, Eseguito,..., etc.)
Catania, Trigrid Tutorial, gLite – Servizi di gestione job Job Provenance, Package Manager JP – Tiene traccia dei job sottomessi per lunghi periodi (mesi, anni). PM – Servizio ausiliario per automatizzare: installazioni, configurazioni, aggiornamenti e rimuovere componenti software. (RPM, dpkg/APT, Portage, …)
Catania, Trigrid Tutorial, gLite – Servizi Dati
Catania, Trigrid Tutorial, gLite – Servizi Dati Elemento di memorizzazione (Storage Element) I servizi richiesti sono: Supporto di memorizzazione (Drivers and Hardware) Interfaccia SRM (Soluzione di memorizzazione specifica) Servizi di trasferimento (GridFTP) Stile POSIX file I/O API (gLite-I/O) Servizi ausiliari di: Contabilizz. e Logging
Catania, Trigrid Tutorial, gLite – Servizi Dati Cataloghi (Catalogs) Metafora del F.S. di un S.O. LFN (Logical file name) GUID (Grid unique identifier) SimLinks SURL (Site URL) TURL (Transfer URL)
Catania, Trigrid Tutorial, gLite – Servizi Dati Movimento Dati (Data Movement) Data Scheduler (DS) Tiene traccia delle richieste di transferimento. File Transfer/Placement Service (FTS/FPS) Transfer Queue (Table) Transfer Agent (Network)
Catania, Trigrid Tutorial, gLite – Servizi Ausiliari Configuration and Instrumentation Service – Interroga lo stato dei servizi. Agreement Service – Implementa un protocollo di comunicazione per il SLA. Bandwidth Allocation & Reservation service (BAR) – Controlla, Bilancia e Gestisce I flussi di rete.
Catania, Trigrid Tutorial, Referenze gLite homepage – gLite Documento D’architettura –
Catania, Trigrid Tutorial, Domande …