FESR Trinacria Grid Virtual Laboratory Storage Accounting for Grid Environments (SAGE) Fabio Scibilia, Dario Russo & Claudio Cherubino INFN – Catania Catania,
Catania, Second Checkpoint Meeting, Grid accounting
Catania, Second Checkpoint Meeting, Grid Accounting - Panoramica Metering: Raccolta dei dati sull’utilizzo delle risorse Accounting: Memorizzazione dei dati di utilizzo per l’analisi successiva Usage Analysis: Produzione di report sui dati raccolti Pricing: Assegnare e modificare i prezzi per le risorse Billing: Assegnare un costo agli utenti per le operazioni su Grid Account Balancing: Scambio di crediti fra gli utenti
Catania, Second Checkpoint Meeting, Usage Metering La raccolta dei dati sull’utilizzo delle risorse avviene per mezzo di sensori software. Questi sensori analizzano i file di log prodotti dai gestori delle risorse e impachettano le informazioni in Usage Records. Gli Usage Records vengono quindi firmati con il certificato dell’utente e passati al livello di Accounting.
Catania, Second Checkpoint Meeting, Usage Analysis Diversi tipi di utente sono interessati a diversi aspetti degli usage record, ad esempio: –Uno user vorrà semplicemente conoscere i suoi utilizzi delle risorse di Grid. –Un site manager ha bisogno di sapere chi ha usato le risorse e in che modo. –Un VO manager deve tracciare l’utilizzo di Grid da parte degli utenti della VO. Pertanto c’è la necessità da parte del sistema di analizzare gli usage record e produrre dei report.
Catania, Second Checkpoint Meeting, Pricing Le Price Authorities (PA) si occupano di assegnare i prezzi alle risorse, e questo può avvenire secondo diversi algoritmi (statici o dinamici). I prezzi possono essere fissati da un numero arbitrario di PA indipendenti e vengono espressi in una valuta virtuale chiamata Grid Credits. Il modo in cui i prezzi vengono fissati può migliorare il bilanciamento di carico di Grid, diminuendo i prezzi delle risorse disponibili e aumentando quello delle risorse sovraccariche. Il costo dei job viene determinato dagli HLR a partire dal prezzo delle risorse e dagli usage records.
Catania, Second Checkpoint Meeting, Distributed Grid Accounting System (DGAS)
Catania, Second Checkpoint Meeting, Account Balancing L’account balancing implementato da DGAS è intenzionalmente generico. Può essere adottato per differenti scopi, ad esempio: –Ridistribuzione dei crediti guadagnati dalle risorse di una VO agli utenti della stessa VO. –Addebito dei costi delle risorse agli utenti. –Acquisizione di crediti/quota da parte degli utenti prima dell’utilizzo delle risorse. –Monitoraggio del consumo complessivo di risorse da parte degli utenti. Lo scopo di DGAS non è definire (o limitare) le interazioni economiche fra utenti e risorse, ma fornire i mezzi tecnici per implementarle.
Catania, Second Checkpoint Meeting, Architettura di DGAS Price Authority –E’ utilizzata per fissare i prezzi delle risorse, secondo un algoritmo statico o dinamico. Home Location Registers –Si occupa di mantenere le informazioni di accounting per gli utenti e le risorse. GIANDUIA –Installato sui CE, misura il consumo di CPU dei job monitorando i file di log dello scheduler locale. Attualmente in DGAS non è possibile effettuare accounting di risorse di tipo storage
Catania, Second Checkpoint Meeting, Storage Accounting for Grid Environments (SAGE)
Catania, Second Checkpoint Meeting, SAGE E’ un’architettura software per monitorare l’utilizzo dello spazio di storage degli SE (usage metering). E’ pensato per lavorare con Storage Elements che si basano sul sistema Disk Pool Manager (DPM) Non richiede modifiche ai sistemi DPM. Genera Usage Record che si riferiscono all’utilizzo dello spazio disco Gli Usage Record raccolti da SAGE vengono inviati agli HLR di DGAS.
Catania, Second Checkpoint Meeting, Preliminari: SRM Lo Storage Resource Manager (SRM) –E’ una interfaccia WS per l’accesso ai servizi di archiviazione –Espone servizi per la prenotazione di spazio storage e il trasferimento di file da/per lo storage –Si appoggia su Mass Storage Systems (MSS) come Castor –Adotta protocolli di File Transfer (gsiftp, rfio...). File Naming in SRM –SURL (Storage URL): Nome logico del file specificato dall’utente –TURL (Transport URL): URL che specifica come accedere al file (protocollo e locazione)
Catania, Second Checkpoint Meeting, SRM: Richiesta di upload ClientSRMMSSGSIFTP PrepareToPut (SURLs, Owner Certificate, VO) PrepareToPutStatus (SURL) ? TURL = gsiftp://nodo4.trigrid.it/. PrepareToPutStatus (SURL) ? Accettata. TURL = gsiftp://nodo4.trigrid.it/. PutDone (SURLs, OK) Trasferimento file su gsiftp://nodo4.trigrid.it/... Richiesta incodata
Catania, Second Checkpoint Meeting, Preliminari: DPM Disk Pool Manager –E’ un MSS che gestisce un pool di hard disk –Espone una interfaccia SRM –Nuovi hard disk possono essere aggiunti dinamicamente al pool. Name Server –Gestisce i SURL dei file, i permessi degli utenti, le repliche e i metadati e il filesystem logico. DPM Daemon –Accoglie le richieste e le registra presso un proprio database. GridFTP-DPM (gsiftp) e RFIO: –Protocolli adottati per accedere ai file –Un demone ciascuno per ogni nodo del pool
Catania, Second Checkpoint Meeting, Architettura DPM Nomi logici dei file, metadata, permessi, repliche, acl e struttura del filesystem logico. Richieste pendenti fatte dagli utenti. Gestione dei dischi del pool e della policy della risorsa. Central Manager del pool. Nodo unico. Uno o più nodi del pool con spazio disco. Aggiunti/rimossi dinamicamente
Catania, Second Checkpoint Meeting, Usage Metering in SAGE Tutti gli eventi relativi all’accesso ai file vengono intercettati e catalogati in un database L’intercettazione è fatta tramite scansione dei file di log dei demoni GridFTP-DPM e RFIO A tali dati viene associato il certificato presentato del proprietario e la VO con il quale si è autenticato In questo modo SAGE mantiene uno storico di tutte le azioni relative ai file di griglia Problema (ora risolto) –I file di log non per forza contengono il certificato utente, ma solo l’utente locale (grid-mapping)
Catania, Second Checkpoint Meeting, Sottomissione tramite DMP-gsiftp Comando effettuato dalla User Interface (UI) Output prodotto fscibi]$ srmcp –protocols=rfio file:////home/fscibi/etnafile srm://nodo4.trigrid.it:8443/dpm/trigrid.it/home/gilda/e tnafile execution of CopyJob, source = file:////home/fscibi/widefile destination = gsiftp://nodo4.trigrid.it/nodo4.trigrid.it:/filesys1/gi lda/ /etnafile.39.0 completed Transport URL (TURL) relativo al file appena sottomesso Storage URL (SURL) scelto dall’utente
Catania, Second Checkpoint Meeting, File di log di RFIO File di log del demone rfiod /var/log/rfio/log Jun 29 13:23:40 rfiod[3571]: request by /C=IT/O=GILDA/OU=Personal Certificate/L=INFN-Catania/CN=Fabio (4401,4400)... Jun 29 13:23:40 rfiod[3571]: ropen64_v3: (/filesys1/gilda/ /etnafile.39.0,01401,0644) for (4401,4400)... Jun 29 13:23:46 rfiod[3571]: rclose64_v3(1, 2): 0 read, 3 readahead, 17 write, 0 flush, 0 stat, 0 lseek and 0 lockf... Jun 29 13:23:46 rfiod[3571]: rclose64_v3(1, 2): 0 bytes read and bytes written... Jun 29 13:23:46 rfiod[2206]: Waiting for end of child 3571, status 0
Catania, Second Checkpoint Meeting, File di Log di DPM-gsiftp File di log dei trasferimenti /var/log/dpm-gsiftp/dpm- gsiftp.log (singola riga) DATE= HOST=nodo4.trigrid.it PROG=wuftpd NL.EVNT=FTP_INFO START= USER=gilda001 FILE=nodo4.trigrid.it:/filesys1/gilda/ /widefile.39.0 BUFFER=87380 BLOCK=65536 NBYTES= VOLUME=?(rfio- file) STREAMS=10 STRIPES=1 DEST=1[ ] TYPE=STOR CODE=226
Catania, Second Checkpoint Meeting, File di Log di DPM-gsiftp Log dei trasferimenti /var/log/dpm-gsiftp/gridftpd.log Difficoltà (in fase di analisi) –Rischioso sincronizzare la lettura dei due log per mettere insieme queste informazioni –Verificare se la corrispondenza, in un dato istante, è sempre 1 a 1: un utente UNIX mappa il certificato di un utente grid Jun 29 10:57:38 nodo4 gridftpd[3817]: GSSAPI user "/C=IT/O=GILDA/OU=Personal Certificate/L=INFN- Catania/CN=Fabio is authorized as gilda001 Jun 29 10:57:38 nodo4 gridftpd[3817]: < GSSAPI user "/C=IT/O=GILDA/OU=Personal Certificate/L=INFN- Catania/CN=Fabio is authorized as gilda001
Catania, Second Checkpoint Meeting, Soluzione alternativa per DPM-gsiftp Basata sul database di DPM –Mantiene lo storico delle richieste fatte dagli utenti –Mantiene lo storico dei certificati presentati –Mantiene le relazioni tra richieste e utenti Altri protocolli –La soluzione è ugualmente applicabile a tutti i protocolli supportati Operazioni –Si ricava il TURL dal file di log –A partire dal TURL si ricava l’ID della richiesta dalla tabella delle richieste di trasferimento –A partire dall’ID della richiesta si risale al certificato con la quale è stata fatta
Catania, Second Checkpoint Meeting, Risalire al DN a partire dal TURL La tabella DPM_REQ contiene alcune informazioni su chi ha fatto la richiesta e altre informazioni che prescindono dal tipo di richiesta (es: protocollo) Queste altre tabelle invece contengono informazioni specifiche del tipo di azione da eseguire. Ogni richiesta può essere relativa al PUT, GET o COPY di uno o più di file (relazione n:1)
Catania, Second Checkpoint Meeting, SAGE: Raccokta degli eventi
Catania, Second Checkpoint Meeting, Interrogazione del dababase SAGE DB –File presenti nel pool –Eventi relativi ai file –Informazioni sugli utenti SAGE Engine –Accede al DB per prelevare le informazioni sui file SAGE Daemon –Offre servizi di interrogazione agli utenti Accounting Daemon –Periodicamente preleva le informazioni sui file e crea gli Usage Record Push Daemon –Invia gli Usage Record ai rispettivi HLR
Catania, Second Checkpoint Meeting, In fase di analisi Usage Record per risorse di storage –Per il caso degli Storage Elements non esistono standard (al momento) –Modello dati per la rappresentazione –Specificità di uno Usage Record: Periodo temporale di riferimento (un giorno, una settimana...) Rispetto ad un utente specifico, una VO o un HLR Pricing delle risorse –Quantità di spazio occupata –Tempo attuale di permanenza di un file Autenticazione degli Usage Record raccolti
Catania, Second Checkpoint Meeting, Riferimenti DGAS – Data Management – DPM – Middleware gLite – Global Grid Forum Usage Record Working Group –
Catania, Second Checkpoint Meeting, Fine