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
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
DIANE Overview Germán Carrera, Alfredo Solano (CNB/CSIC) EMBRACE COURSE Monday 19th of February to Friday 23th. CNB-CSIC Madrid.
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.
DORII Joint Research Activities DORII Joint Research Activities Status and Progress 6 th All-Hands-Meeting (AHM) Alexey Cheptsov on.
LCG Middleware Testing in 2005 and Future Plans E.Slabospitskaya, IHEP, Russia CERN-Russia Joint Working Group on LHC Computing March, 6, 2006.
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.
Conference name Company name INFSOM-RI Speaker name The ETICS Job management architecture EGEE ‘08 Istanbul, September 25 th 2008 Valerio Venturi.
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
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/
EGEE-II INFSO-RI Enabling Grids for E-sciencE Practical using WMProxy advanced job submission.
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.
Breaking the frontiers of the Grid R. Graciani EGI TF 2012.
Co-ordination & Harmonisation of Advanced e-Infrastructures for Research and Education Data Sharing Co-funded.
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.
The Catania Grid Engine and some implementations of the framework Diego Scardaci INFN The Catania Science Gateway Framework.
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.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
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
Workload Management Workpackage
Operations Management Board 19th Dec. 2013
Giuseppe LA ROCCA INFN - Catania, Italy
FutureGateway Overview
Design rationale and status of the org.glite.overlay component
Data Bridge Solving diverse data access in scientific applications
GWE Core Grid Wizard Enterprise (
CHAIN-REDS computing solutions for Virtual Research Communities CHAIN-REDS Workshop – 11 December 2013 Roberto Barbera – University of Catania and.
FJPPL Lyon, 13 March 2012 Sylvain Reynaud, Lionel Schwarz
Grid2Win: Porting of gLite middleware to Windows XP platform
Riccardo Rotondo INFN Catania – Italy
GSAF Grid Storage Access Framework
Interoperability & Standards
Management of Virtual Execution Environments 3 June 2008
SCL, Institute of Physics Belgrade, Serbia
Elisa Ingrà – Consortium GARR
Module 01 ETICS Overview ETICS Online Tutorials
Wide Area Workload Management Work Package DATAGRID project
Grid Engine Riccardo Rotondo
Grid Engine Diego Scardaci (INFN – Catania)
Grid Systems: What do we need from web service standards?
Introduction to the SHIWA Simulation Platform EGI User Forum,
Presentation transcript:

The Catania Science Gateway Framework The Catania Grid Engine and some implementations of the framework Diego Scardaci (diego.scardaci@ct.infn.it) INFN The Catania Science Gateway Framework

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

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

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

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: http://www.gridforum.org/documents/GFD.90.pdf Several Implementations are available: A C++ and a Java implementation developed at the Louisiana State University / CCT and Vrije Universiteit Amsterdam (http://saga.cct.lsu.edu); A Java implementation developed at CCIN2P3 (http://grid.in2p3.fr/jsaga/); 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; 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: Feature Description Status Middleware Independent Capacity to submit job towards resources running different middleware DONE Easiness Create code to run applications on the grid in a very short time Scalability Manage a huge number of parallel job submissions fully exploiting the HW of the machine where the Job Engine is installed Performance Have a good response time Accounting Register every grid operation performed by the users Fault Tolerance Hide middleware failure to the final users Workflow Providing a way to easily create workflow PARTIALLY DONE

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

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 10000 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 Example Job Submission 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", "332576f78a4fe70a52048043e90cd11f", "gridit", "gridit", true); tmpJSaga.setUserEmail("mario.torrisi@ct.infn.it"); tmpJSaga.setResourceManagerList(wmsList); tmpJSaga.submitJobAsync("mtorrisi", "193.206.208.183:8162", 1, "gLite Test job“);

Example Workflow N-1 (1/3) 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“, "332576f78a4fe70a52048043e90cd11f", "gridit", "gridit"); String globusList[] = {"wsgram://xn03.ctsf.cdacb.in:8443/GW"}; Infrastructures[1] = new InfrastructureInfo("GARUDA","wsgram","", globusList, "etokenserver.ct.infn.it","8082","332576f78a4fe70a52048043e90cd11f","gridit","gridit"); Define Infrastructures Example Workflow N-1 (1/3) Job 1 Job 2 Job 3 Job N … Final Job OUTPUT

Example Workflow N-1 (2/3) Define First Level Jobs 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);

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 Example Workflow N-1 (3/3) JobCollection wf = new WorkflowN1("scardaci", "Workflow N-1", "diego.scardaci@ct.infn.it", "/tmp", descriptions, finalJobDescription); JobCollectionSubmission tmpJobCollectionSubmission = new JobCollectionSubmission(wf); tmpJobCollectionSubmission.submitJobCollection(infrastructures, "193.206.208.18:8162", 1); Submit the Workflow

My Workspace User Jobs User Job Map User’ Data Help

MyJobs

Grid & Cloud Engine Javadoc http://www.catania-science-gateways.it/training-material

The VRC-driven GISELA Science Gateway (http://gisela-gw.ct.infn.it) 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 A new concept of Application registry allowing users to directly submit selected high impact applications on the GISELA e-infrastructure in an easy way Links to applications run pages

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.

GridEEG @ DECIDE (http://applications.eu-decide.eu/)

The agINFRA Science Gateway R (http://aginfra-sg.ct.infn.it/) 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

References The Catania Science Gateway Framework: http://www.catania-science-gateways.it/ Grid & Cloud Engine Javadoc: http://www.catania-science- gateways.it/training-material A Simple API for Grid Applications (SAGA): http://www.gridforum.org/documents/GFD.90.pdf; JSAGA: http://grid.in2p3.fr/jsaga/;

Thank you ! Would you like to evaluate the CSGF and the Grid & Cloud Engine ? Please, write to sg-licence@ct.infn.it