lezione n. 16 - INFN - Napoli
Transcript
lezione n. 16 - INFN - Napoli
Griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea Magistrale in Informatica – I Anno LEZIONE N. 16 • FTS - File Transfer Service • Grid Accounting: APEL e DGAS Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 1 Introduzione In questa lezione esaminimo due argomenti distinti: • Il File Transfer Service, un servizio di trasferimento dei file che completa l’argomento della gestione dei dati (lez. 10 e 11) • I sistemi per l’accounting in Grid, ossia i meccanismi per determinare l’utilizzo effettivo delle risorse da parte degli utenti e delle VO. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 2 Trasferimento dati controllato dal client • Nei primi strumenti di trasferimento dati (gridftp) la copia è controllata dal client. Client Source Storage Element Data Flow Channel • • Control Channels Destination Storage Element Anche se I protocolli di trasferimento sono robusti, ciò pone delle limitazioni: lo stato del trasferimento è “nascosto” . Il client conosce internamente lo stato locale, ma non sa nulla dello stato globale dei trasferimenti tra gli storage element coinvolti – Gli Storage elements posso essere sovraccaticati da richieste – Posso avvenire simultaneamente repliche multiple degli stessi dati – Non c’e controllo sull’utilizzo globale della rete Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 3 Servizio di Trasferimento Dati •È necessario un servizio per gestire il data transfer – Il Client si connette al servizio per sottomettere una richiesta – Il Service è a conscenza dello stato dei trasferimenti – Il Client può periodicamente riconnettersi per controllare lo stato o cancellare una richiesta – Il Servizio è a conscenza dello stato globale, non di una singola richiesta, quindi puo’ effettuare: •Load balancing •Scheduling •Submit new request •Monitor progress •Cancel request Client SOAP via https Transfer Service Source Storage Element Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 Data Flow Destination Storage Element 4 File Transfer Service • File Transfer Service (FTS) e’ un servizio per il trasferimento di dati E’ un servizio multi esperimento, utilizzato per bilanciare l’uso delle risorse di un sito in accordo con le policy del sito stesso e delle Virtual Organizzation (VO) che supporta; • Perche’ serve? – Lato utenti, il servizio permette il trasferimento dei file da una sorgente ad una destinazione in modo affidabile; – Lato site manager, fornisce una soluzione affidabile ed elastica per soddisfare le richieste di trasferimento dati provenienti dagli esperimenti supportati; – Lato production manager, permette di controllare le richieste dei loro utenti (priorita’, re-schedule transfer, ….) • Il focus e’ nel “servizio”: Deve permettere queste operazioni in maniera semplice e trasparente Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 5 Archiettura di File Transfer Service • I Client sottomettono jobs via SOAP su https. • I jobs sono liste di URLs in formato srm:// . Si possono specificare alcuni paramtri del trasferimento (stream parallele, buffer sizes). • I Client possono richiedere informazioni sui cambiamenti di stato del trasferimento. • C command line clients. C, Java and Perl APIs available. • Il servizio si presenta come un Web service in Tomcat5. Client Secure web service connection Transfer Service Well defined state transitions/ checkpointing Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 Storage Elements Database 6 Note SOAP - The Simple Object Access Protocol provides a means of messaging between a service provider and a service requestor. SOAP is a simple enveloping mechanism for XML payloads that defines a remote procedure call (RPC) convention and a messaging convention. SOAP is independent of the underlying transport protocol; SOAP payloads can be carried on HTTP, FTP, Java Messaging Service (JMS), and the like. We emphasize that Web services can describe multiple access mechanisms to the underlying software component. SOAP is just one means of formatting a Web service invocation. Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 7 Canali FTS • Il Servizio FTS ha il concetto di canale • Un canale è una connessione unidirezionale tra due siti. • • • Le richieste di trasferimento tra questi I due siti sono assegnate al corrispondente canale I canali accettano le wildcards: – * to MY_SITE : All incoming – MY SITE to * : All outgoing – * to * : Catch all I canali a volte corrispondono connessioni di rete dedicate a una particolare produzione, ma non sono connessioni fisiche. • Channels control certain transfer properties: transfer concurrency, gridftp streams. • Channels can be controlled independently: started, stopped, drained. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 8 File Transfer Service Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 9 gLite FTS: Agenti • Ogni job sottomesso a FTS passa attraverso un VO Agent e un Channel Agent. Channel Agent • • VO Agent • • Gli effettivi trsferimenti sui canali sono gestiti dal channel agent I Channel agents possono eseguire uno scheduling inter-VO L’agente della VO autorizza il job e cambia il suo stato in “Pending” I VO agents possono compiere altre operazioni specifiche della VO: – Scheduling – Interazione con il File catalog della VO Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 10 FTS schema generale Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 11 Utilizzo di FTS Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 12 Conclusioni • FTS offer an important and useful service on the grid – a significant advance on client managed file transfers. • FTS channel architecture offers very useful features to control transfers between sites or into a single site, though it may become overly complex in a grid without clear data flow patterns. – The ability to control VO shares and transfer parameters on a channel is important for sites. • FTS agent architecture allows VOs to connect the transfer service closely with their own data management stacks, a useful feature for HEP experiments. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 13 Why Accounting ? In a distributed computing environment people want to know who used the resources and how many resource have been used. • Users : How many resources am I using ? • VO managers : how many resources is my VO using ? • Site Managers : who is using my resources ? • ROC Managers : How many resources have been used in my federation and who used them ? A good accounting system should be able to answer these questions taking care of all the security and privacy issues. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 14 Grid accounting Una generica infrastruttura di grid accounting deve coprire i requirements di tre tipi di utenti: Siti, VO ed amministratori grid . grid layer Users/VO layer Site layer Resource’s layer grid accounting database VO accounting database Site accounting database Usage Metering Introduzione alle griglie computazionali aa 2006-07 Web reports: -Aggregate info -Sites load -Anonymised statistics -Aggregate VO info -Group/Role info -Detailed User info -Job level info -Aggregate site info -VO (with role/group) usage on the site. -Detailed Resource Usage info -Job level info 15 CPU Accounting • Consiste nel raccogliere e registrare secondo metriche predefinite, informazioni sulla disponibilià e l’utilizzo delle risorse di calcolo, o di grandezze derivate. • Le sorgenti di informazione primarie sono i log files di : •CE gatekeeper + batch system Storage Accounting • Consiste nel raccogliere e registrare secondo metriche predefinite, informazioni sulla disponibilià e l’utilizzo delle risorse di storage • Le sorgenti di informazione primarie sono i log files di : • transfer services + storage system Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 16 Sistemi per l’accounting in grid: • DGAS (Distributed Grid Accounting System) è un sistema di distribuito capace di effettuare la misurazione dell’utilizzo delle risorse ed eventualmente un Accounting Economico. È basato su una infrastruttura client/server basata su una rete di server di accounting indipendenti. Sviluppato nell’ambito EGEE dalla sezione di Torino dell’INFN. • APEL (Accounting Processor for Event Logs) è un componente dell’ EGEE CPU Accounting system, distribuito come parte del gLite middleware. APEL pubblica i record di utilizzo delle CPU in grid in una repository centralizzata, il GOC (Grid Operations Centre) usando R-GMA come meccanismo di transporto. I records sono processati e possono essere acceduti attraverso l’EGEE Accounting Portal. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 17 Requirements / Use cases How much resource has been provided to each VO? Grid Level (High Level) How much resource has been provided to each VO Grid Level (High Level) Aggregation / Data Consolidation Administrative Domains :VOs, VOMS Groups, Countries (LHC), Regions (EGEE) Grids, (EGEE, OSG, TeraGrid, Nordic) Organisations (GridPP, INFNGrid, SEEGrid, …) If 10,000 CPU hours were consumed by Atlas VO, who are the users that submitted the work? Finer Granularity (Low level) User Level, Job Level, Top Users within a VO and Group Confidentiality Quota enforcement / fairshare scheduling: how much resource has been provided to a particular user on a particular set of CEs? User Level, Job Level Confidentiality Reliability Introduzione alle griglie computazionali aa 2006-07 18 DGAS Components • Sensors on CEs – Build usage records from LRMS accounting files • Resource (site) HLRs (Home Location Registers) – Collect usage records from one or more sites • User (VO) HLRs – Collect usage records for a whole VO • Query clients and visualization tools – Allow to retrieve data from HLRs Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 19 DGAS Workflow Usage Record 3 L2 HLR 3 Usage Record 3 VO HLR Site HLR CE 1 job 2 job Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 WN 20 DGAS Features • Granularity – Resource accounting at single job level or in aggregate form per user, per VO, per resource (site) or per infrastructure (collection of sites). • Scalability – Arbitrary number of Resource/VO HLRs can be deployed. • Hierarchical Design – HLRs can be interconnected, in order to have multiple levels of aggregation. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 21 DGAS Features II • Completeness – Capability to collect information both for grid and local jobs. • Customization – Possibility to choose which resource and/or type of jobs must be accounted. • Designed to perform pricing (not used) – Possibility to assign “computing credits” (something similar to quotas) that can be used as a basis for billing the resource consumptions. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 22 DGAS features Site sensors • • • • can build accounting records for grid jobs as well as local jobs (accounted on different HLR accounts) for grid jobs: integrates local usage information with grid-related information (user DN, user FQAN (VOMS), CE ID, grid job ID). supports PBS and LSF “next-to-real-time” accounting (after job completion) Client (UI) HLR service (accounting servers) • fully distributed architecture (scalability) • deployed as User (VO) HLRs and/or Resource (Site) HLRs • command line tools and C++ API for queries • strict authorization control (x509) for accessing private info VO HLR Site HLR Data transport: • all communication between the components as well as between client tools and servers is encrypted and secure (x509-based, GSI) • CE mostly asynchronous data transport between the components for more robustness Introduzione alle griglie computazionali aa 2006-07 23 Information retrieval • Information are retrieved parsing the LRMS (batch system) accounting log files and the CE gatekeeper log file • LRMS log files : •resource used (cpu-time,wall-time,lrmsid,user,group) • Comuptin Element gatekeeper log files : •grid info (user DN, grid-jobid,VO) • Some other config files are used in order to manage local jobs, for which the VO could not be defined through the proxy certificate. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 24 Security and Privacy • Information confidentiality is guaranteed by the use of different authorization levels to access the Usage Records. – Users (can access their own detailed records and aggregates) – Site Managers (Can access their own site detailed records and aggregates) – VO Managers (Can access detailed records and aggregates of all VO members) • Full VOMS integration in query authorization is available (now on L2 HLR, on every HLR in future releases) – (e.g. /atlas/Role=vomanager/Group=NULL) • Security and integrity of the data flow is guaranteed by the use of GSI and data encryption. • No sensitive information sent in clear text Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 25 Accounting & policies The accounting information can be also used to implement dynamic resource access policies and help in fair sharing of available resources. It is clear that in order to reach this goal is necessary to have real time access to accounting information. It is also necessary to be sure that the information contained in the accounting databases can’t be maliciously altered by the users (reliability). Introduzione alle griglie computazionali aa 2006-07 26 APEL features Three Components: Sensors (Deployed at site) :• Process log files; maps DN to Batch Usage; builds accounting records • Accounts from Grid Jobs Only • Supports PBS, SunGridEngine, Condor, and LSF • Not REAL-TIME accounting Data Transport:• Uses RGMA to send data to a central repository • 196 sites publishing, 7.5 Million Job records collected • Can use other transport protocols • Allows sites to control DN information from leaving site Presentation (GOC and Regional Portal) • Reporting based on data aggregation • LHC View, EGEE View, GridPP View, Site View • Metrics (e.g. Time Integrated CPU Usage) Introduzione alleCharts, griglie computazionali aa 2006-07 Tables, Pies, Gantt 27 APEL Issues Data Privacy and Confidentiality • Provides sites with the option to publish or suppress (default) DN information – Many sites suppress DN, some sites publish DN. • Any person with a trusted certificate and access to a UI can query RGMA and get Job Record information from APEL database – x509-based authorization features in RGMA in development • Does not currently encrypt the usage record • Does not currently sign the data General Issue For Accounting: Normalisation in Heterogeneous Farms • APEL Uses SpecINT2000 published by sites in the information system because sites have different strategies/policies for setting up their batch systems – Some sites publish SI2K of slowest worker nodes – Other sites publish a weighted mean, because they use internal scaling factors – Many Batch systems currently in use don’t report performance/benchmark information of the worker nodes in the batch logs. Introduzione alle griglie computazionali aa 2006-07 28 APEL + DGAS When used together APEL and DGAS can leverage each others strengths and give to their customers the following benefits: • Fully distributed architecture • From single job to grid-level accounting information. • Web access to aggregate usage information. • VOMS based accounting (using VOMS FQAN in usage records). • Real time access to job accounting info for users and site managers. • Security and authorisation mechanisms to guarantee information integrity and confidentiality. • Possibility to access non-confidential information via RGMA. APEL and DGAS, if used alone, have their own specific strengths and limitations. None of the two can fulfill the previously highlighted requirements for grid accounting. However, APEL and DGAS have complementary functionalities that if used in sinergy actually can fulfill the requirements. Introduzione alle griglie computazionali aa 2006-07 29 APEL + DGAS (2) DGAS and APEL as components of the vertical accounting infrastructure (DGAS2APEL example) grid layer Users/VO layer Site layer Resource’s layer APEL and GOC web interface DGAS VO HLR DGAS site HLR Accounting Sensors (joint) Introduzione alle griglie computazionali aa 2006-07 Web reports: -Aggregate info -Sites load -Anonymised statistics -Aggregate VO info -Group/Role info -Detailed User info -Job level info -Aggregate site info - VO (with role/group) usage on the site. -Detailed Resource Usage info -Job level info 30 DGAS2APEL workflow R-GMA R-GMA dgas2apel HLR DB apel-publisher HLR LCGRecords GOC DB • Dgas2apel is a process that converts the Usage Records from the format adopted by DGAS to the one adopted by APEL. Converted records are then inserted in a RDBMS table known as LCGRecords. • Such records are then forwarded to the GOC by APEL itself via its ‘apel-publisher’ process, which uses RGMA as a high level transport service toward the GOC. Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 31 Examples Multi Site Information from L2 HLR Jobs per site (T1 included) Jobs per VO (T1 included) Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 32 Examples Multi Site Information from L2 HLR Jobs per day (T1 included) Griglie Computazionali - aa 2008-09 Introduzione alle griglie computazionali aa 2006-07 33 Referenze • File Transfer Service FTS: http://egee-jra1-dm.web.cern.ch/egee-jra1-dm/FTS/ • APEL accounting website: http://goc.grid.sinica.edu.tw/gocwiki/ApelHome • DGAS website: http://www.to.infn.it/grid/accounting/main.html • DGAS User Guides: https://edms.cern.ch/document/571271/1 Introduzione alle griglie computazionali aa 2006-07 34