Post on 23-Feb-2016
description
“Problemi di schedulazione distribuita su GRID”
Sistemi operativi 3
Andrea ClematisIMATI –CNR
GenovaEmail: clematis@ge.imati.cnr.it
• Un ambiente persistente in cui le applicazioni possono integrare ed utilizzare risorse computazionali, dati, device, e reti appartenenti a diverse organizzazioni ed in diverse locazioni
• La condivisione di risorse è ottenuta attraverso accessi diretti da parte degli utenti e gli accessi alle risorse vengono strettamente controllati
• Un gruppo di utenti o organizzazioni regolati da una politica di condivisione formano una virtual organization
Cos’è Grid
• Una Virtual Organization (VO) è costituita da:– un insieme di individui o istituzioni – un insieme di risorse da condividere – un insieme di regole per la condivisione
• Una VO è una collezione di utenti che condividono regole per l’accesso a risorse di calcolo e a dati distribuiti e perseguono obiettivi comuni
• Concetto chiave : l’abilità di negoziare le modalità di condivisione delle risorse tra i componenti di una VO (providers and consumers) ed il successivo utilizzo per i propri scopi
Virtual Organization
• Le regole per la condivisione delle risorse specificano quando, dove e cosa può essere fatto.
• Vengono quindi richieste:– Politiche e meccanismi per formalizzare tali regole– Autenticazione: stabilire l’identità degli utenti– Autorizzazione: determinare se una operazione è
coerente con le regole di condivisione definite
Virtual Organization
tomographic reconstruction
real-timecollection
wide-areadissemination
desktop & VR clients with shared controls
Advanced Photon Source
archival storage
Accesso on-line di strumenti scientifici
Il Grid ha una valenza molto pragmatica– Nasce dall’informatica applicata– Si focalizza sul permettere un nuovo tipo di
applicazioni– Investire nel Grid trova motivazioni nella
promessa di nuove capacità, non solo nell’informatica ma in altri settori e aree di lavoro
• Contesto Applicativo– Finanza– Industria– Servizi
I problemi che il Grid vuole risolvere
Qual’è il tipo di applicazioni?
• Compute intensive– Simulazioni interattive (climate modeling)– Simulazioni e analisi su larga scala (formazione di galassie,
campi gravitazionali, previsione di terremoti)– Ingegneria (studi di parametri, linked component models)
• Data intensive– Analisi di dati sperimentali (high-energy physics)– Analisi delle immagini (astronomia, climatologia, ecologia)
Qual’è il tipo di applicazioni?
• Collaborazioni distribuite– Strumenti online (microscopi, x-ray devices, etc.)– Remote visualization (studi climatologici, biologia)– Ingegneria (large-scale structural testing, ingegneria
chimica)
• E tutti problemi tali da richiedere la collaborazione di persone appartenenti a organizzazioni diverse e la condivisione di risorse di calcolo, dati, strumenti e conoscenze
Temi richiesti
Le problematiche correlate alle Griglie sono molteplici:
• Security• Monitoring/Discovery• Computing/Processing Power• Moving and Managing Data• Managing Systems• System Packaging/Distribution
Cosa c’è di nuovo…
• Le tecnologie esistenti non risolvono adeguatamente le esigenze di sharing
– Richieste complesse: “lanciare un programma X su un elemento Y soggetto alle politiche P, fornendo l’accesso ai dati Z rispettando le politiche di Q”
– High performance: richieste per sistemi avanzati ed ad alte prestazioni
– Risorse eterogenee: computer, dati, politiche, conoscenze...
• Problem solving coordinati– Estensione della visione client-server: analisi ed elaborazione
di dati distribuiti
A Checklist for a GRID to be a GRID (I.Foster)
• Il Grid coordina risorse che non sono soggette ad un controllo centralizzato e fornisce meccanismi per la sicurezza, policy, membership…
• Usa protocolli ed interfacce standard, open e general-purpose.
• Il Grid permette l’utilizzo delle sue risorse con differenti Qualities of Service ( tempo di risposta, throughput, disponibilità, sicurezza,…).
• L’utilità del sistema (middle tier) è molto maggiore a quella della somma delle sue parti nel soddisfare le necessità dell’utente.
Computational Grid • Il fine: sharing di risorse di calcolo flessibile, sicuro,
coordinato attraverso collezioni dinamiche di individui, istituzioni e risorse
• Permette a “gruppi di utenti VO” di condividere risorse geograficamente distribuite visto che perseguono fini comuni - assumendo l’assenza di
– Una locazione centralizzata– Un controllo centralizzato– Onniscienza– Esistenza di relazioni di fiducia
Risorse
• Un’entità che viene condivisa…– Computer, dati, software, elementi di storage
• …non necessariamente entità fisica…– File system distribuito, “persone”
• …definita in termini di interfacce e non di strumenti– Uno scheduler come PBS definisce una risorsa
computazionale– Open/close/read/write definiscono degli accessi a file
system distribuiti, come NFS, DFS
La tecnologia• Globus toolkit E’ un sistema open-source che si propone
come lo standard de facto per il middleware per lo sviluppo di Grid – GT2 (1998) fornisce i protocolli, le API ed i servizi
utilizzati per lo sviluppo di centinaia di Grid – GT2 fornisce strumenti per autenticazione, resource
discovery, resource access, data movement ed altro– Lo sviluppo di GT non è comunque lineare, in molti casi
non è formalmente definito e ben documentato– Una storia analoga accompagna altri sistemi quali ad
esempio Condor– Attualmente GT è orientato ai servizi (Grid service)
La tecnologia
• Open Grid Services Architecture (OGSA) per mettere ordine nello sviluppo del middleware per Grid è stato creato (1998) il Global Grid Forum (GGF)
• Nel 2002 il GGF ha proposto uno standard architetturale condiviso dalla comunità: OGSA
• OGSA porta ad un allineamento del Grid computing con progetti di tipo industriale che propongono architetture service –oriented e Web services
• OGSA prevede uno standard reale e più implementazioni una delle quali è GT nelle versioni GT3 (2003) e GT4 (2004)
Orientamento ai servizi – Integrazione – Virtualizzazione
• Esistono tre concetti chiave per la comprensione del Grid e delle sue tecnologie:– Orientamento ai servizi – Un servizio è accessibile attraverso uno
scambio di messaggi che provocano l’effettuazione di un’operazione; la parte visibile e fissa è l’interfaccia, l’implementazione è isolata sia in termini di “modo” che di locazione;
– Virtualizzazione – è una conseguenza del punto precedente– Integrazione – la distinzione tra implementazione ed interfaccia
permette di utilizzare i servizi come building block con i quali sviluppare nuovi servizi.