La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sistema di Calcolo Distribuito:

Presentazioni simili


Presentazione sul tema: "Sistema di Calcolo Distribuito:"— Transcript della presentazione:

1 Sistema di Calcolo Distribuito:
Aspetti di un Sistema di Calcolo Distribuito: Monitoring della Grid Marco MEONI Tesi di Laurea – 19/12/2005

2 Contenuti Modifiche ed Estensioni di MonALISA
Concetti di Grid e Grid Monitoring Analisi dei Risultati di Monitoring del PDC’04 Conclusioni

3 Sezione I Concetti di Grid e Grid Monitoring

4 Esperimento ALICE al CERN LHC
1) Collisioni di nuclei pesanti e protoni-protoni 5) I fisici di ALICE analizzano i dati alla ricerca di segnali di interesse 2) Particelle secondarie vengono prodotte con le collisioni 4) Le proprietà delle particelle (traiettorie, momento, tipo) sono ricostruite dal software AliRoot 3) Queste particelle sono registrate dal detector di ALICE 2/3 PBs di dati all’anno che richiederanno adeguate capacità di elaborazione e storage

5 Grid Computing Definizione di Grid Computing AliEn: la Grid di ALICE
“coordinated use of large sets of heterogenous, geographically distributed resources to allow high-performance computation” AliEn: la Grid di ALICE - Architettura pull piuttosto che push: lo scheduling service non ha bisogno di conoscere lo stato di tutte le risorse della Grid – le risorse si pubblicano; - Robusto e fault tolerant, poiché le risorse possono andare e venire in ogni momento; - Si interfaccia ad altre Grid favorendo una rapida espansione delle risorse di calcolo, in maniera trasparente per l’utente.

6 Grid Monitoring Architettura GMA R-GMA: un esempio di implementazione
Producer Consumer Registry Transfer Data Store location Lookup Architettura GMA R-GMA: un esempio di implementazione Jini (Sun): fornisce le basi tecniche

7 MonALISA framework Sistema di servizi di monitoring distribuiti; usa le tecnologie JINI/JAVA e WSDL/SOAP Ogni server MonALISA agisce come un servizio dinamico che fornisce le funzionalità per essere individuato ed utilizzato da qualsiasi altro servizio o client che richiede tali informazioni

8 Sezione II Modifiche ed Estensioni di MonALISA

9 Configurazione di MonALISA
• Monitoring delle Farm Classe Java per interfacciarsi agli agenti MonALISA (AliEnCMD.java) - estendere lia.Monitor.monitor.cmdExec - implementare lia.Monitor.monitor.MonitoringModule - implementare almeno i metodi init, doProcess, isRepetitive File di configurazione - script di monitoring da eseguire - elenco parametri di monitoring - frequenza monitoring Script bash per monitorare i siti (Monitoring.sh) - restituire alla classe java di interfaccia, in un formato standard, tanti valori quanti sono i parametri Remote Farm CE Monitored data WEB Repository Monitoring.sh MonALISA Agent AliEnCMD.java WNs Grid resources User code MonALISA framework

10 Setup del Repository • Un Repository Web come front-end per il monitoring Conserva la storia completa dei dati monitorati Mostra i dati in una moltitudine di istogrammi predefiniti Aggiunto nuovi formati di visualizzazione per fornire un set completo (gauge, distribuzioni) Semplici interfacce verso codice utente: custom consumers, custom tasks • Installazione e Manutenzione Installazione packages (Tomcat, MySQL) Configurazione servlet principali per VO ALICE Setup di script per startup/shutdown/backup Tutti i grafici prodotti sono stati costruiti e personalizzati a partire da altrettanti file di configurazione SQL, parametri, colori, tipo andamento cumulativo o medio, smooth, fluttuazioni, intervalli di tempo personalizzato …molti altri

11 Monitoring dei Job in AliEn
Centralizzato o distribuito? API AliEn per acquisire snapshot dello stato dei job: queueinfo, queue list Job is submitted (Error_I) INSERTING AliEn TQ WAITING ASSIGNED (Error_A) QUEUED (Error_S) CE STARTED (Error_E) ZOMBIE RUNNING (Error_R) WN >1h VALIDATION (Error_V, VT, VN) FAILED >3h (Error_SV) SAVING DONE Aggiunto un thread Java (DirectInsert) per alimentare direttamente il Repository, senza passare dagli Agenti MonALISA Repository TOMCAT JSP/servlets queueinfo queue list Jobs information Ad hoc java thread (DirectInsert)

12 Repository DataBase(s)
Acquisizione Dati: 7+ Gb di performance information, 24.5M record Durante il DC, in media ogni 2/3 min arrivano dati di ~2k parametri monitorati 1min 10 min 100 min 60 bins for each basic information { Averaging process FIFO alimonitor.cern.ch aliweb01.cern.ch Online Replication DB Replication: MASTER DB REPLICA DB ROOT CARROT MonALISA Agents Repository Web Services AliEn API LCG Interface WNs monitoring (UDP) Web Repository Data collecting e Grid Monitoring Grid Analysis

13 Interfaccia Web Parametri di monitoring e storage del Data Challenge, job-flow, completamento dei task e stato delle risorse

14 Formati di Visualizzazione
Menù Carico dei CE e completamento dei task Statistiche e tabulati real-time Stacked Bars Running history Snapshots e grafici a torta

15 Parametri Monitorati L’analisi dei dati acquisiti favorisce il miglioramento delle performance della Grid Ottimizzazione del loro numero e della frequenza di memorizzazione!! Source Category Number Examples AliEn API CE load factors 63 Run load, queue load SE occupancy 62 Used space, free space, number of files Job information 557 Job status: running, saving, done, failures Soap CERN Network traffic 29 Size of traffic, number of files LCG CPU – Jobs 48 Free CPUs, jobs running and waiting ML service on MQ Job summary 34 AliEn parameters 15 DB load, Perl processes ML services Sites info 1060 Paging, threads, I/O, processes 1868 Classi Derivate: misure di Efficienza Job execution efficiency Successfuly done jobs / all submitted jobs System efficiency Error (CE) free jobs / all submitted jobs AliRoot efficiency Error (AliROOT) free jobs / all submitted jobs Resource efficiency Running (queued) jobs / max_running (queued)

16 Estensioni di MonALISA
Monitoring degli utenti della Grid Application Monitoring (ApMon) nei WNs Repository Web Services Utilizzo dei comandi AliEn (ps –a, jobinfo #jobid, ps –X -st) e parsing dell’output Scansione della JDL dei Job I risultati sono mostrati nel solito front-end web ApMon è un set di API che può essere utilizzato da qualsiasi applicativo per inviare informazioni di monitoring agli agenti MonALISA, via datagrammi UDP Favorisce l’aggregazione dei dati e la scalabilità del sistema di monitoring Sviluppata una classe C++ light di monitoring da incapsulare nel payload del Process Monitor Alternativa ad ApMon per gli scopi del Web Repository: - non richiedono gli agenti MonALISA - memorizzano i dati monitorati direttamente nel DB del Repository Impiegati per monitorare Traffico di Rete attraverso i server ftp di ALICE al CERN

17 Estensioni di MonALISA
Distribuzioni per principi di Analisi Primo tentativo di effetture un tuning delle prestazioni della Grid, basato su dati reali monitorati a partire dalla Grid stessa Utilizzo di funzionalità ROOT e Carrot Sistema di cache per ottimizzazione delle richieste ROOT histogram server process (central cache) HTTP A p a c h e 1. ask for histogram 2. query NEW data 3. send NEW data MonALISA Repository 4. send resulting object/file ROOT/Carrot histogram clients

18 Sezione III Analisi dei Risultati di Monitoring del PDC’04

19 PDC’04 Scopo: testare e validare il computing model di ALICE Off-line
Produrre e analizzare ~10% dei campioni di dati acquisiti in un anno di standard data-taking Usare il set completo di software: AliEn, AliROOT, LCG, Proof Struttura: divisa logicamente in tre fasi: Fase 1 – Produzione di underlying Pb+Pb events con centralità differenti (parametri di impatto) + produzione di p+p events Fase 2 – Sovrapposizione di vari tipi di signal events agli underlying Pb+Pb events Fase 3 – Analisi distribuita

20 CERN CASTOR: disk servers, tape
Fase 1 del PDC’04 Master job submission, Job Optimizer, RB, File catalogue, processes control, SE… Central servers CEs Sub-jobs Job processing AliEn-LCG interface RB CERN CASTOR: disk servers, tape Output files LCG is one AliEn CE Obiettivo – simulare il flusso dei dati al contrario: gli eventi sono prodotti nei centri remoti e memorizzati nel MSS del CERN Storage

21 Utilizzo CPU Non sempre possibile funzionare in modo continuativo a causa di limitazioni sulle risorse Total number of jobs running in parallel 18 computing centres participating Inizio 10/03, fine 29/05 (58 giorni di attività) Numero massimo di job eseguiti in parallelo: 1450 Numero medio di job nel periodo: 430

22 Efficienza Principio di calcolo: ogni job è immesso una sola volta
Successfully done jobs all submitted jobs Error (CE) free jobs all submitted jobs Error (AliROOT) free jobs all submitted jobs

23 Statistiche della Fase 1
Number of jobs Job duration 56.000 8h (cent1), 5h (peripheral 1), 2.5h (peripheral 2-5) Files per job Number of entries in AliEn FC Number of files in CERN MSS 36 3.8M 1.3M File size 26TB Total CPU work LCG CPU work 285MSI-2k hours 67MSI-2k hours

24 Fase 2 del PDC’04 Central servers RB CEs CEs Local SEs Local SEs
Obiettivo – simulare la ricostruzione degli eventi e lo storage presso i siti remoti Master job submission, Job Optimizer (N sub-jobs), RB, File catalogue, processes monitoring and control, SE… Register in AliEn FC: LCG SE: LCG LFN = AliEn PFN Sub-jobs Sub-jobs Storage AliEn-LCG interface Underlying event input files CERN CASTOR: underlying events RB Storage CEs CEs CERN CASTOR: backup copy Job processing Job processing Output files Output files zip archive of output files Local SEs Local SEs File catalogue Primary copy Primary copy

25 Siti individuali: contributo di CPU
Inizio 01/07, fine 26/09 (88 giorni di attività) Come nella prima fase, equilibrio generale del contributo di CPU Sotto il controllo diretto di AliEn: 17 CEs, ciascuno con un SE CERN-LCG comprende le risorse LCG sparse per il mondo

26 Utilizzo dei Siti Fuori dal CERN, siti come Bari, Catania e JINR hanno generalmente funzionato al massimo delle capacità

27 Fase 2: Statistiche e Fallimenti
Number of jobs Job duration 6h/job Conditions 62 Number of events 15.2M Number of files in AliEn FC Number of files in storage 9M 4.5M distributed at 20 CEs world-wide Storage at CERN MSS Storage at remote CEs 30TB 10TB Network transfer 200TB from CERN to remote CEs Total CPU work 750MSI-2k hours Submission CE local scheduler not responding 1% Loading input data Remote SE not responding 3% During execution Job aborted (insufficient WN memory or AliRoot problems) Job cannot start (missing application software directory) Job killed by CE local scheduler (too long) WN or global CE malfunction (all jobs on a given site are lost) 10% Saving output data Local SE not responding 2%

28 Fase 3 del PDC’04 File Catalogue query Data set Job Optimizer
Obiettivo – Analisi utente distribuita Data set User job (many events) Job Optimizer Grouped by SE files location Sub-job 1 Sub-job 2 Sub-job n Job Broker Submit to CE with closest SE Job output CE and SE CE and SE CE and SE processing processing processing Output file 1 Output file 2 Output file n File merging job

29 Nuovi Strumenti di Analisi
Inizio Settembre 2004, fine Gennaio 2005 Distribuzioni grafiche realizzate a partire dall’ambiente ROOT e con l’interfaccia web Carrot Distribuzione del numero di job in esecuzione dipende principalmente dal numero di waiting job nella TQ e dalla disponibilità di CPU libere presso i CE remoti Occupazione rispetto al numero di job in coda - c’è un incremento dell’occupazione al crescere dei job in stato di waiting nella coda batch locale; la saturazione è raggiunta attorno ai 60 job in coda

30 Sezione IV Conclusioni e Prospettive

31 Lezioni dal Monitoring del PDC’04
Job utente sono stati eseguiti per 9 mesi utilizzando AliEn MonALISA ha fornito un framework di monitoring completo e flessibile che é stato adattato con successo alle necessità del Data Challenge MonALISA ha prodotto i risultati attesi in merito a rappresentazione immediata ed estesa dello stato corrente e passato dei parametri rilevanti per le operazioni della Grid Approccio step by step: dal setup delle procedure di monitoring e del numero dei parametri di interesse ad una loro ottimizzazione MonALISA ha permesso di acquisire, memorizzare, visualizzare, ordinare e raggruppare un’ampia varietà di parametri monitorati, sia di base che derivati, in un ricco set di formati di presentazione Il Repository è stato l’unica sorgente di informazioni storicizzate, e la sua architettura modulare ha reso possibile lo sviluppo di una varietà di moduli custom (~800 linee di codice sorgente fondamentale e ~5k linee per eseguire task di servizio) Il PDC’04 ha rappresentato un esempio reale di interoperabilità tra Grid, interfacciando AliEn e LCG e dando prova della scalabilità dell’architettura di AliEn L’utilizzo di MonALISA in ALICE é stato documentato in un articolo per la conferenza al Computing in High Energy and Nuclear Physics (CHEP) ‘04 a Interlaken - Svizzera Esperienza senza precedenti per sviluppare e migliorare un framework di monitoring sulla base di una Grid realmente funzionante, effettuando massicci test delle tecnologie software coinvolte Facile estendere il framework e sostituirne i componenti con altri equivalenti in base a necessità tecniche o scelte strategiche

32 Ringraziamenti Dott. F.Carminati, L.Betev, P.Buncic e tutti i colleghi di ALICE per l’entusiasmo trasmesso durante questo lavoro Team MonALISA collaborativo ogni volta che ne ho avuto necessità


Scaricare ppt "Sistema di Calcolo Distribuito:"

Presentazioni simili


Annunci Google