10 azioni per lo scheduling su Grid Uno scheduler per Grid deve selezionare le risorse in un ambiente dove non ha il controllo diretto delle risorse locali,

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Gestione della memoria centrale
La progettazione secondo la norma internazionale ISO 9001
Analisi e progettazione
Il progetto SAPA - Diffusione
Il Sistema Operativo.
Java Enterprise Edition (JEE)
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Le Griglie Computazionali
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Analisi delle Decisioni Funzioni di utilita’ e lotterie
Chiara Mocenni - Sistemi di Supporto alle Decisioni I – aa Sistemi di Supporto alle Decisioni I Lezione 2 Chiara Mocenni Corso di laurea L1.
INTRODUZIONE AI SISTEMI OPERATIVI
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Il report di progetto Perché scrivere il report del progetto?
Proposta di integrazione e consolidamento delle risorse presenti nellinfrastruttura Grid dellItalia Meridionale (L. Merola, )
Remote file access sulla grid e metodi di interconnesione di rete M. Donatelli, A.Ghiselli e G.Mirabelli Infn-Grid network 24 maggio 2001.
Area: la gestione dei progetti complessi
Business and Strategic Risk e la sua gestione attraverso la pianificazione aziendale Marco Venuti 2013 Risk and Accounting.
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
Requisiti dellapplicazione per il resource brokering su Grid.
Scheduling in GrADS Il progetto GrADS (Grid Application Development Software) ha lo scopo di semplificare lo sviluppo di unapplicazione Grid. Tra le funzionalità
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
Sistemi Operativi SCHEDULING DELLA CPU.
Sistemi Operativi GESTIONE DEI PROCESSI.
Modello E-R Generalizzazioni
Progettazione di una base di dati
Modello E-R Generalizzazioni
Daniel Stoilov Tesi di Laurea
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
DEIS Università di Bologna
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Distributed File System Service Dario Agostinone.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
VRML97 -Appendice- Cristina Donati 1 VRML97. Il Virtual Reality Modeling Language (VRML) è un formato di file volto alla descrizione degli oggetti interattivi.
Lo sviluppo del progetto informatico
SISTEMI DI GESTIONE AMBIENTALE E MODELLO EX D. L.GS. 231/01
Il Sistema Operativo (1)
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
Un Piano Strategico per lo Sviluppo dei Sistemi ITS in Italia ROMA 13 Dicembre 2007 Prof. Giovanni Tesoriere I SISTEMI ITS A SUPPORTO DELLE POLITICHE SULLA.
Organizzazione Aziendale
C. Aiftimiei 1, S. Andreozzi 2, S. Dal Pra 1, G. Donvito 3, S. Fantinel 4, E. Fattibene 2, G. Cuscela 3, G. P. Maggi 3, G. Misurelli 2, A. Pierro 3 1 INFN-Padova.
Sistema Operativo (Software di base)
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
Dati e DBMS DBMS relazionali SQL Progettazione di un DBMS Normalizzazione Programma del Corso di Basi di Dati.
Mobile Agent and Enterprise Architecture Integration Il gestore della mobilità degli agenti Raffaelli Massimo matricola
Informatica Lezione 8 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
1 Migrazione dei processi: Mosix. 2 Cosa è Mosix/OpenMOSIX ? OpenMOSIX è un è una patch del kernel di Linux che aggiunge funzionalit à avanzate di clustering.
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Progetto di un Gestore di Nomi Corso di Reti di Calcolatori L-S prof. Antonio Corradi A.A 2003/2004 Autore: Molesini Ambra.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Progettazione di basi di dati: metodologie e modelli
Layered Grid Architecture. Application Fabric “Controlling elements locally”: Access to, & control of, resources Connectivity “Talking to Grid elements”:
Informatica Lezione 6 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Generale Marzia Buscemi
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
Le basi di dati.
Licensed under Creative Commons Attribution 3.0 License / ShareGrid Idee per prospettive future
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
Domenico Elia1Riunione PRIN STOA-LHC / Bologna Attività per ALICE: sommario e prospettive Domenico Elia Riunione PRIN STOA-LHC Bologna, 18 Giugno.
Tecniche di Gestione della Qualità Prof. Alessandro Ruggieri Prof. Enrico Mosconi A.A
FESR Trinacria Grid Virtual Laboratory Workload Management System (WMS) Muoio Annamaria INFN - Catania Primo Workshop TriGrid VL Catania,
Framework di sicurezza della piattaforma OCP (Identity & Access Management) Smart Cities and Communities and Social Innovation Bando MIUR D.D. 391/Ric.
Transcript della presentazione:

10 azioni per lo scheduling su Grid Uno scheduler per Grid deve selezionare le risorse in un ambiente dove non ha il controllo diretto delle risorse locali, le risorse sono distribuite, le informazioni disponibili sono a volte limitate e spesso “datate” La selezione delle risorse è collegata strettamente alle funzionalità fornite dal Grid Information Service (GRIS- GIIS per Globus) La schedulazione su Grid può essere divisa in tre fasi: –Resource discovery –Selezione –Esecuzione del programma

10 azioni per lo scheduling su Grid Grid Scheduling: il processo di schedulazione che coinvolge risorse appartenenti a diversi domini operativi; Job: qualsiasi entità che abbia bisogno di una risorsa, ad esempio una richiesta di banda di comunicazione, un’applicazione o un insieme di applicazioni; Risorsa: una qualsiasi entità che possa essere schedulata, ad esempio una macchina, dello spazio disco, una rete caratterizzata da QoS

10 azioni per lo scheduling su Grid Il grid scheduler può essere confrontato con il local scheduler: quest’ultimo è responsabile della schedulazione per una singola locazione ed ha il controllo sulle risorse gestite, mentre il grid scheduler non ha questa capacità di controllo; Allo stesso modo il Grid scheduler può non avere il pieno controllo dei job sottomessi; Il grid scheduler si basa su un approccio “best effort” e la mancanza di possesso delle risorse e di pieno controllo dei job, in un contesto in cui è necessaria una politica di ottimizzazione globale, è uno dei principali problemi

L’utente come primo esempio di Grid Scheduler L’utente è il più comune scheduler in ambito Grid, per lo meno dal punto di vista storico. E’ utile considerare l’utente come primo esempio di scheduler per poter chiarire i meccanismi coinvolti nell’operazione di scheduling su Grid ed identificare le fasi delle operazioni di scheduling.

L’acquisizione delle informazioni: un servizio essenziale per lo scheduler Le decisioni dello scheduler sono prese sulla base delle informazioni disponibili sui job e sulle risorse In ambito Grid non possiamo, di solito, contare su informazioni molto accurate e aggiornate Lo scheduler normalmente interagisce con il Grid Information System (GIS) che a sua volta colleziona le informazioni dalle singole risorse Esempi di GIS sono il Monitoring and Discovery Service (MDS) di Globus ed la Grid Monitoring Architecture (GMA) sviluppata dal Global Grid Forum (GGF)

Caratteristiche principali di un GIS Gestione di insiemi di sensori in grado di fornire informazioni sulle risorse Distinzione tra informazioni statiche ( ad esempio il tipo di sistema operativo di un nodo) e caratteristiche dinamiche (la quantità di memoria disponibile o il carico della CPU) Scelta di differenti politiche per aggiornare le informazioni sulle risorse: in ogni caso necessità di una interazione stretta e pesante per avere informazioni molto aggiornate, questo porta ad adottare diverse strategie di caching delle informazioni raccolte

Caratteristiche principali di un GIS Necessità di fornire un sistema estendibile in modo tale da poter descrivere risorse non considerate inizialmente, sviluppare servizi di più alto livello, sviluppare servizi di “previsione” Necessità di prevedere uno schema condiviso di descrizione degli attributi di una risorsa in modo da poter sviluppare sistemi interoperanti

Le tre fasi e i dieci passi di base per lo scheduling Fase 1: Resource discovery –Passo1: Filtraggio delle risorse in base all’autorizzazione –Passo 2: Individuazione dei requisiti dell’applicazione –Passo 3: Filtraggio delle risorse che soddisfano i requisiti minimali Fase 2: Scelta delle risorse (system selection) –Passo 4: Raccolta delle informazioni dinamiche –Passo 5: Scelta delle risorse

Le tre fasi e i dieci passi di base per lo scheduling Fase 3: Job execution –Passo 6: Advanced reservation –Passo 7: Job submission –Passo 8 Preparazione dell’ambiente –Passo 9: Monitoraggio dell’esecuzione –Passo 10: Job completion –Passo 11: Cleanup

Fase 1: resource discovery All’inizio di questa fase non abbiamo alcuna risorsa a disposizione. Passo1: Filtraggio delle risorse in base all’autorizzazione – questa operazione è necessaria per stabilire ad esempio se l’applicazione X è autorizzata ad usare la macchina Y ed è di particolare importanza in un ambiente multi dominio. Passo 2: Individuazione dei requisiti dell’applicazione – questa operazione dovrebbe permettere di stabilire in modo più o meno preciso quali sono i requisiti sia statici (ad esempio il sistema operativo) che dinamici (ad esempio la RAM necessaria) che una risorsa deve soddisfare per poter essere utilizzata per una data applicazione

Fase 1: resource discovery Passo 3: Filtraggio delle risorse che soddisfano i requisiti minimali – identificato l’insieme delle risorse su cui l’applicazione è autorizzata e noti i requisiti principali della stessa si seleziona un insieme di risorse su cui il job può essere eseguito. Alla fine di questa fase avremo a disposizione un insieme di risorse che l’applicazione è autorizzata ad utilizzare e che soddisfano i requisiti minimali per poter essere utilizzate. Si procede quindi alla selezione delle risorse che si intendono utilizzare.

Fase 2: Scelta delle risorse (system selection) Questa fase comprende in genere due passi, uno dedicato ad una raccolta di informazioni dettagliate, soprattutto dinamiche, sullo stato delle risorse, ed uno di scelta. Passo 4: Raccolta delle informazioni dinamiche – questo passo è di grande importanza anche perché permette di verificare se una risorsa candidata ad essere scelta è effettivamente, o almeno con buona probabilità, disponibile. Tuttavia questo passo può essere molto critico da realizzare per diverse ragioni tra le quali l’eterogeneità delle risorse e delle applicazioni, l’interazione con domini amministrativi e politiche locali di gestione diverse, la natura distribuita del sistema, l’esigenze di scalabilità e consistenza. In genere una risorsa per cui non sono disponibili informazioni dinamiche aggiornate non dovrebbe essere scelta.

Fase 2: Scelta delle risorse (system selection) Passo 5: Scelta delle risorse – durante questa fase possono essere adottate diverse strategie di ottimizzazione, la cui efficacia dipende dalla qualità delle informazioni prodotte nei passi precedenti

Fase 3: Job execution Passo 6: Advanced reservation – questo passo è opzionale ed è finalizzato a consentire un migliore uso del sistema. Non sempre è possibile realizzare l’ advanced reservation di una risorsa. Vedi anche i Service Level Agreement (SLA) Passo 7: Job submission – quest’operazione può essere banale (esecuzione di un singolo comando) ma anche molto complicata richiedendo il setup dell’ambiente e lo staging dei file necessari all’esecuzione del job. Al momento non esiste uno standard per quest’operazione se non quello di Globus. GGF sta lavorando ad un insieme di API per questa operazione

Fase 3: Job execution Passo 8: Preparazione dell’ambiente – questa operazione può coinvolgere lo staging di file (anche attraverso FTP o Grid FTP), la richiesta di prenotazione o altre azioni necessarie all’esecuzione di un job. La gestione delle autorizzazioni, dei nomi locali ed altro può complicare la situazione a questo livello. Passo 9: Monitoraggio dell’esecuzione – per applicazioni la cui durata è maggiore di un certo valore di soglia (ad esempio stabilito considerando il tempo medio di variazione dello stato di una risorsa critica) è opportuno avere la possibilità di monitorare l’evoluzione del job in esecuzione. Un job che non riesce ad eveolvere può essere rischedulato.

Fase 3: Job execution - continua Passo 10: Job completion – L’utente dovrebbe essere informato della terminazione di un job. Questa azione può essere anche molto complicata in un sistema distribuito a causa di possibili guasti e/o per l’impossibilità di rilevare la terminazione effettiva di un job Passo 11: Cleanup – L’ambiente che è stato creato per permettere l’esecuzione di un job deve essere cancellato quando il job termina.