The Catania Grid Engine and some implementations of the framework Diego Scardaci INFN The Catania Science Gateway Framework.

Slides:



Advertisements
Similar presentations
Building Portals to access Grid Middleware National Technical University of Athens Konstantinos Dolkas, On behalf of Andreas Menychtas.
Advertisements

Grid Initiatives for e-Science virtual communities in Europe and Latin America The VRC-driven GISELA Science Gateway Diego Scardaci.
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Current status of grids: the need for standards Mike Mineter TOE-NeSC, Edinburgh.
Data Management Expert Panel - WP2. WP2 Overview.
JSAGA2 Overview job desc. gLite plug-ins Globus plug-ins JSAGA hidemiddlewareheterogeneity (e.g. gLite, Globus, Unicore) JDLRSL.
Introduction on Science Gateway Understanding access and functionalities Catania, 09/06/2014Riccardo Rotondo
Catania Grid & Cloud Engine Mario Torrisi Istituto Nazionale di Fisica Nucleare – Sezione di
Consorzio COMETA - PI2S2 Project UNIONE EUROPEA SAGE – Storage Accounting for Grid Environments in gLite Fabio Scibilia Consorzio.
Catania Science Gateway Framework Motivations, architecture, features Catania, 09/06/2014Riccardo Rotondo
1 Application Specific Module for P-GRADE Portal 2.7 Application Specific Module overview Akos Balasko MTA-SZTAKI LPDS
Co-ordination & Harmonisation of Advanced e-Infrastructures for Research and Education Data Sharing Research Infrastructures – Proposal n A Standard-based.
Riccardo Bruno INFN.CT Sevilla, Sep 2007 The GENIUS Grid portal.
DIRAC Web User Interface A.Casajus (Universitat de Barcelona) M.Sapunov (CPPM Marseille) On behalf of the LHCb DIRAC Team.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) Grid Engine Riccardo Rotondo
Connecting OurGrid & GridSAM A Short Overview. Content Goals OurGrid: architecture overview OurGrid: short overview GridSAM: short overview GridSAM: example.
Flexibility and user-friendliness of grid portals: the PROGRESS approach Michal Kosiedowski
Nicholas LoulloudesMarch 3 rd, 2009 g-Eclipse Testing and Benchmarking Grid Infrastructures using the g-Eclipse Framework Nicholas Loulloudes On behalf.
INFSO-RI Enabling Grids for E-sciencE Logging and Bookkeeping and Job Provenance Services Ludek Matyska (CESNET) on behalf of the.
07/06/11 New Features of WS-PGRADE (and gUSE) 2010 Q Q2 Miklós Kozlovszky MTA SZTAKI LPDS.
1 Overview of the Application Hosting Environment Stefan Zasada University College London.
DORII Joint Research Activities DORII Joint Research Activities Status and Progress 6 th All-Hands-Meeting (AHM) Alexey Cheptsov on.
GILDA testbed GILDA Certification Authority GILDA Certification Authority User Support and Training Services in IGI IGI Site Administrators IGI Users IGI.
LCG Middleware Testing in 2005 and Future Plans E.Slabospitskaya, IHEP, Russia CERN-Russia Joint Working Group on LHC Computing March, 6, 2006.
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Code Applications Tamas Kiss Centre for Parallel.
Cracow Grid Workshop October 2009 Dipl.-Ing. (M.Sc.) Marcus Hilbrich Center for Information Services and High Performance.
Enabling Grids for E-sciencE EGEE-III INFSO-RI Using DIANE for astrophysics applications Ladislav Hluchy, Viet Tran Institute of Informatics Slovak.
Convert generic gUSE Portal into a science gateway Akos Balasko 02/07/
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
EGEE-II INFSO-RI Enabling Grids for E-sciencE The GILDA training infrastructure.
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Applications.
6/23/2005 R. GARDNER OSG Baseline Services 1 OSG Baseline Services In my talk I’d like to discuss two questions:  What capabilities are we aiming for.
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
Convert generic gUSE Portal into a science gateway Akos Balasko.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
EGI-InSPIRE RI EGI-InSPIRE EGI-InSPIRE RI How to integrate portals with the EGI monitoring system Dusan Vudragovic.
Widening the number of e-Infrastructure users with Science Gateways and Identity Federations Giuseppe Andronico INFN -
EGI Technical Forum Amsterdam, 16 September 2010 Sylvain Reynaud.
Application Specific Module Tutorial Zoltán Farkas, Ákos Balaskó 03/27/
INFSO-RI JRA2 Test Management Tools Eva Takacs (4D SOFT) ETICS 2 Final Review Brussels - 11 May 2010.
D.Spiga, L.Servoli, L.Faina INFN & University of Perugia CRAB WorkFlow : CRAB: CMS Remote Analysis Builder A CMS specific tool written in python and developed.
Grid Execution Management for Legacy Code Architecture Exposing legacy applications as Grid services: the GEMLCA approach Centre.
Tutorial on Science Gateways, Roma, Riccardo Rotondo Introduction on Science Gateway Understanding access and functionalities.
Tutorial on Science Gateways, Roma, Catania Science Gateway Framework Motivations, architecture, features Riccardo Rotondo.
Introduction to Distributed Computing Infrastructures and the Catania Science Gateway Framework Roberto Barbera Univ. of Catania.
Breaking the frontiers of the Grid R. Graciani EGI TF 2012.
Utilizzo di portali per interfacciamento tra Grid e Cloud Workshop della Commissione Calcolo e Reti dell’INFN, May Laboratori Nazionali del.
Co-ordination & Harmonisation of Advanced e-Infrastructures for Research and Education Data Sharing Co-funded.
Gang Chen, Institute of High Energy Physics Feb. 27, 2012, CHAIN workshop,Taipei Co-ordination & Harmonisation of Advanced e-Infrastructures Research Infrastructures.
Development of portlets for special jobs: parametric, collections, workflows Mario Torrisi National Institute of Nuclear Physics.
The Catania Grid Engine Mr. Riccardo Rotondo Consortium GARR, Rome, Italy
REST API to develop application for mobile devices Mario Torrisi Dipartimento di Fisica e Astronomia – Università degli Studi.
InSilicoLab – Grid Environment for Supporting Numerical Experiments in Chemistry Joanna Kocot, Daniel Harężlak, Klemens Noga, Mariusz Sterzel, Tomasz Szepieniec.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) Africa Joint CHAIN/EUMEDGRID- Support/EPIKH School for.
EGI-InSPIRE RI EGI-InSPIRE EGI-InSPIRE RI EGI Services for Distributed e-Infrastructure Access Tiziana Ferrari on behalf.
Antonio Fuentes RedIRIS Barcelona, 15 Abril 2008 The GENIUS Grid portal.
Development of portlets for special jobs: parametric, collections, workflows Mario Torrisi Istituto Nazionale di Fisica Nucleare.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
Co-ordination & Harmonisation of Advanced e-INfrastructures CHAIN Worldwide Interoperability Test Roberto Barbera – Univ. of Catania and INFN Diego Scardaci.
Convert generic gUSE Portal into a science gateway Akos Balasko.
Web and mobile access to digital repositories Mario Torrisi National Institute of Nuclear Physics – Division of
A Data Engine for Grid Science Gateways Enabling Easy Transfers and Data Sharing Dr. Marco Fargetta (1), Mr. Riccardo Rotondo (2,*), Prof. Roberto Barbera.
Co-ordination & Harmonisation of Advanced e-Infrastructures for Research and Education Data Sharing Grant.
Practical using C++ WMProxy API advanced job submission
GridOS: Operating System Services for Grid Architectures
The Catania Science Gateway Framework
GSAF Grid Storage Access Framework
Elisa Ingrà – Consortium GARR
Grid Engine Riccardo Rotondo
Grid Engine Diego Scardaci (INFN – Catania)
Presentation transcript:

The Catania Grid Engine and some implementations of the framework Diego Scardaci INFN The Catania Science Gateway Framework - EGI/CHAIN-REDS/eI4Africa Webinar, 15 May 2013

Outline  The Catania Grid & Cloud Engine  Job Engine  Code Sample  MyWorkspace & MyJobs  Data Engine  Implementations of the framework  Summary and conclusions 2

The Catania Science Gateway model Science Gateway Science Gateway App. 1 App. 2 App. N Embedded Applications Administrator Power User Basic User Users from different organisations having different roles and privileges Standard-based (SAGA) middleware-independent Grid Engine Standard-based (SAGA) middleware-independent Grid Engine Grid/Cloud/Local middleware supported so far

The Catania Grid & Cloud Engine Grid/Cloud Engine Users Tracking DB Science GW Interface SAGA/JSAGA API Job Engine Data Engine Users Track & Monit. Science GW 1 Science GW 2 Science GW 3 Grid/Cloud/Local MWs Liferay Portlets eToken Server New ModifiedNewModified New Modified

Job Engine  The Job Engine is made of a set of libraries to develop applications able to submit and manage jobs on a grid infrastructure;  It is compliant with the OGF SAGA standard;  It is optimized to be used in a Web Portal running an application server (e.g. Glassfish, Tomcat,…) based on J2EE;  It could be used also in stand-alone mode;  JSAGA is the SAGA implementation adopted.

A Simple API for Grid Applications (SAGA)  SAGA is an API that provides the basic functionality required to build distributed applications, tools and frameworks;  It is independent of the details of the underlying infrastructure (e.g., the middleware);  SAGA is an OGF specification:  Several Implementations are available:  A C++ and a Java implementation developed at the Louisiana State University / CCT and Vrije Universiteit Amsterdam (  A Java implementation developed at CCIN2P3 (  A Python implementation based on those above.

A Simple API for Grid Applications (SAGA)  SAGA is composed by:  SAGA Core Libraries: containing the SAGA base system, the runtime and the API packages (file management, job management, etc.);  SAGA Adaptors: libraries providing access to the underlying grid infrastructure (adaptors are available for Globus, gLite, etc.);  SAGA defines a standard We then need an implementation!

JSAGA  JSAGA is a Java implementation of SAGA developed at CCIN2P3;  JSAGA:  Enables uniform data and job management across different grid infrastructures/middleware;  Makes extensions easy: adaptor interfaces are designed to minimize coding effort for integrating support of new technologies/middleware;  Is OS indenpendent: most of the provided adaptors are written in full Java and they are tested both on Windows and Linux.

Job Engine - Requirements  The Job Engine has been designed with the following requirements in mind: FeatureDescriptionStatus Middleware Independent Capacity to submit job towards resources running different middleware DONE EasinessCreate code to run applications on the grid in a very short time DONE ScalabilityManage a huge number of parallel job submissions fully exploiting the HW of the machine where the Job Engine is installed DONE PerformanceHave a good response timeDONE AccountingRegister every grid operation performed by the usersDONE Fault ToleranceHide middleware failure to the final usersDONE WorkflowProviding a way to easily create workflowPARTIALLY DONE

Job Engine - Architecture WT Worker Threads for Job Submission WT Worker Threads for Job Check Status USERS TRACKING DB MONITORING MODULE DCIs Jobs Queue WT Jobs Submission Jobs Check status/ Get output

Job Engine Middleware Independent JSAGA supports gLite, Globus, ARC, UNICORE, etc. Adding new adaptors in JSAGA is a easy job

Job Engine Easiness  Allow to develop application able to submit jobs on the grid in a very short time;  A very intuitive API is exposed to the developers;  Support MPI applications;  The developer has only to submit the job:  The Job Engine periodically check the job status;  When the Job is done, the job output is automatically downloaded by the Job Engine in the local machine.

Job Engine Scalability (1/2)  The Job Engine is able to manage a huge number of parallel job submissions fully exploiting the HW of the machine where it is installed;  It enqueues all the parallel requests received serving it according to the HW capabilities;  The Job Engine thread pools can be configured to optimally exploit the HW capabilities;  A burst of parallel job submissions cannot damage the Job Engine responsiveness thanks to the protection provided by the thread pool mechanism.

Job Engine Scalability (2/2)  The answer time is linear;  Response time depends on the HW capabilities and thread pools configuration.

Job Engine Performance  All the delays due to grid interactions are hidden to the final users:  The Job Engine provide asynchronous functions for each job management actions (submit, check status, download output, cancel);  Final users “feel” a response time equals to 0.  The Job Engine is able to submit thousands of jobs in a short time:  The Job Engine submit jobs using a configurable thread pool;  The Job Engine is able to submit jobs in less than 1 hour with 50 threads in the thread pool;  We could improve this measurement increasing the number of threads in the thread pool.

Job Engine Accounting  A very powerful accounting system is included in the job engine;  It is fully compliant with EGI VO Portal Policy and EGI Grid Security Traceability and Logging Policy;  The following values are stored in the DB for each job submitted:  Users;  Job Submission timestamp;  Job Done timestamp;  Application submitted;  Job ID;  Proxy used;  VO;  Site where the job is running (e.g., CE for EMI-gLite).

Job Engine Fault Tolerance  Job Engine implements an advanced mechanism to guarantee job submission:  Developers can set an appropriate value of “shallow retry”;  Automatic re-submission mechanism when a job is aborted:  Hide every failure to the final users

Job Engine Collection, Parametric & Workflow  Currently the Job Engine natively support:  Collection jobs;  Parametric jobs;  N-1 workflows.  In the next releases we’ll add the support for DAG (Direct Acyclic Graph)

Example Job Submission String wmsList[] = {"wms://wms-4.dir.garr.it:7443/glite_wms_wmproxy_server“, "wms://wms005.cnaf.infn.it:7443/glite_wms_wmproxy_server"/}; Resource Manager List Job Description GEJobDescription description = new GEJobDescription(); description.setExecutable("/bin/sh"); description.setArguments("hostname.sh"); description.setInputFiles("/home/mario/Documenti/hostname.sh"); description.setOutput(“Output.txt"); description.setError(“Error.txt"); Submit the Job JSagaJobSubmission tmpJSaga = new JSagaJobSubmission(description); tmpJSaga.useRobotProxy("etokenserver.ct.infn.it", "8082", "332576f78a4fe70a e90cd11f", "gridit", "gridit", true); tmpJSaga.setResourceManagerList(wmsList); tmpJSaga.submitJobAsync("mtorrisi", " :8162", 1, "gLite Test job“);

Example Workflow N-1 (1/3) Job 1Job 2Job 3Job N … Final Job OUTPUT InfrastructureInfo infrastructures[] = new InfrastructureInfo[2]; String wmsList[] = { "wms://wms005.cnaf.infn.it:7443/glite_wms_wmproxy_server" }; infrastructures[0] = new InfrastructureInfo("gridit", "ldap://gridit-bdii-01.cnaf.infn.it:2170", wmsList, "etokenserver.ct.infn.it", "8082“, "332576f78a4fe70a e90cd11f", "gridit", "gridit"); String globusList[] = {"wsgram://xn03.ctsf.cdacb.in:8443/GW"}; Infrastructures[1] = new InfrastructureInfo("GARUDA","wsgram","", globusList, "etokenserver.ct.infn.it","8082","332576f78a4fe70a e90cd11f","gridit","gridit"); Define Infrastructures

Example Workflow N-1 (2/3) for (int i = 0; i < 3; i++) { GEJobDescription description = new GEJobDescription(); description.setExecutable("/bin/sh"); switch (i) { case 0: description.setArguments("hostname.sh"); description.setInputFiles("/home/diego/test_wf/hostname.sh"); break; case 1: description.setArguments("ls.sh"); description.setInputFiles("/home/diego/test_wf/ls.sh"); break; case 2: description.setArguments("pwd.sh"); description.setInputFiles("/home/diego/test_wf/pwd.sh"); break; } description.set… descriptions.add(description); } Define First Level Jobs

Example Workflow N-1 (3/3) GEJobDescription finalJobDescription = new GEJobDescription(); finalJobDescription.setExecutable("/bin/sh"); finalJobDescription.setArguments("ls.sh"); String tmp = ""; for(int i = 0; i < descriptions.size(); i++){ if(tmp.equals("")) tmp=descriptions.get(i).getOutput(); else tmp+=","+descriptions.get(i).getOutput(); } finalJobDescription.setInputFiles(tmp + ",/home/diego/test_wf/ls.sh,/home/diego/test_wf/ifconfig.sh"); finalJobDescription.setOutput("myOutput-FinalJob.txt"); finalJobDescription.setError("myError-FinalJob.txt"); Define Final Job JobCollection wf = new WorkflowN1("scardaci", "Workflow N-1", "/tmp", descriptions, finalJobDescription); JobCollectionSubmission tmpJobCollectionSubmission = new JobCollectionSubmission(wf); tmpJobCollectionSubmission.submitJobCollection(infrastructures, " :8162", 1); Submit the Workflow

My Workspace User’ Data User Jobs Help User Job Map

MyJobs

Data Engine  Make interfaces simple for non expert users  CLI-based Grid storage interface is not straightforward  Grid transactions require user certificates  Complexity of current protocols to manage grid storage elements  Very little or no support for access through modern browsers or others web-based applications

26 1. Sign in eTokenServer User Tracking DB DOGS DB 5. File Upload 3. Proxy request 4. Proxy transfer 7. Update DB 6. Upload on Grid 7. Tracking 2. Upload request

Data On Grid Services DOGS  A file browser shows Grid files in a tree  File system exposed by the SG is virtual  Easy transfer from/to Grid (by SG) is done in a few clicks  Users do not need to care about how and where their files are really located

Grid & Cloud Engine Javadoc

The VRC-driven GISELA Science Gateway (  The GISELA SG is a Web site that allows users to fully exploit the e- Infrastructure both computing (jobs) and storage (data) services through a normal web browser. Multi Languages support

The VRC-driven GISELA SG: A new concept of Application Database Links to applications run pages  A new concept of Application registry allowing users to directly submit selected high impact applications on the GISELA e-infrastructure in an easy way

The GISELA Science Gateway: Phylogenetics (MrBayes) Input Parameters

The GISELA Science Gateway Feedback from the final review  The main technological achievement of the project was the adoption of a Science Gateway approach for the LA user communities decreasing significantly the entry barrier for new users.  The SG approach has proven to successfully answer the needs and expectations of user communities and subsequently be an attractor for Latin American stakeholders  Impact on the Latin American scientific and research community has been very good.  The technical objectives have been met and even exceeded expectations. In particular the Science Gateway approach has taken advantage of current developments and considered sensibly the demands of user communities and future e-infrastructure providers.

DECIDE ( 33

The agINFRA Science Gateway R (  Well known statistical data analysis tool

Summary and conclusions  The Catania Grid & Cloud Engine provides developers with a powerful API to port applications on a e-Infrastrucure in a esay way  The same code can be used to execute an application in different types of e-Infrastructures: Grid, Cloud, HPC, local  Several projects already adopted and successfully used the CSGF and the Grid & Cloud Engine 35

References  The Catania Science Gateway Framework:  Grid & Cloud Engine Javadoc: gateways.it/training-materialhttp:// gateways.it/training-material  A Simple API for Grid Applications (SAGA):  JSAGA:

Thank you ! 37 Would you like to evaluate the CSGF and the Grid & Cloud Engine ? Please, write to