Wrapping Scientific Applications As Web Services Using The Opal Toolkit Wrapping Scientific Applications As Web Services Using The Opal Toolkit Sriram.

Slides:



Advertisements
Similar presentations
Wrapping Scientific Applications As Web Services Using The Opal Toolkit Wrapping Scientific Applications As Web Services Using The Opal Toolkit Nadya Williams.
Advertisements

1 Java WS Core for Developers Rachana Ananthakrishnan Jarek Gawor.
Building Portals to access Grid Middleware National Technical University of Athens Konstantinos Dolkas, On behalf of Andreas Menychtas.
TeraGrid Deployment Test of Grid Software JP Navarro TeraGrid Software Integration University of Chicago OGF 21 October 19, 2007.
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Wrapping Scientific Applications as Web Services Gopi Kandaswamy (RENCI) Marlon Pierce (IU)
NBCR Science Gateway: Transparent Access to Remote Resources Through Rich Desktop Clients NBCR Science Gateway: Transparent Access to Remote Resources.
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
BiodiversityWorld GRID Workshop NeSC, Edinburgh – 30 June and 1 July 2005 Resource wrappers, web services, grid services Jaspreet Singh School of Computer.
This product includes material developed by the Globus Project ( Introduction to Grid Services and GT3.
Office of Science U.S. Department of Energy DANSE Kickoff Meeting 2006 Introduction to Python Grid Tools Keith R. Jackson David E. Konerding Lawrence Berkeley.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Grid Programming Environment (GPE) Grid Summer School, July 28, 2004 Ralf Ratering Intel - Parallel and Distributed Solutions Division (PDSD)
Apache Axis: A Set of Java Tools for SOAP Web Services.
Mike Jackson EPCC OGSA-DAI Today Release 2.2 Principles and Architectures for Structured Data Integration: OGSA-DAI.
SQL Reporting Services Overview SSRS includes all the development and management pieces necessary to publish end user reports in  HTML  PDF 
Struts 2.0 an Overview ( )
Using Opal to deploy a real scientific application as a Web service Sriram Krishnan
Developing Reusable Software Infrastructure – Middleware – for Multiscale Modeling Wilfred W. Li, Ph.D. National Biomedical Computation Resource Center.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
- 1 - Grid Programming Environment (GPE) Ralf Ratering Intel Parallel and Distributed Solutions Division (PDSD)
Configuration Management and Server Administration Mohan Bang Endeca Server.
Metadata Creation with the Earth System Modeling Framework Ryan O’Kuinghttons – NESII/CIRES/NOAA Kathy Saint – NESII/CSG July 22, 2014.
1 Dr. Markus Hillenbrand, ICSY Lab, University of Kaiserslautern, Germany A Generic Database Web Service for the Venice Service Grid Michael Koch, Markus.
NeSC Grid Apps Workshop Exposing Legacy Applications as OGSI Components using pyGlobus Keith R. Jackson Distributed Systems Department Lawrence Berkeley.
Chemical Toxicity and Safety Information System Shuanghui Luo Ying Li Jin Xu.
UK e-Science All Hands Meeting 2005 Paul Groth, Simon Miles, Luc Moreau.
WSRF Supported Data Access Service (VO-DAS)‏ Chao Liu, Haijun Tian, Dan Gao, Yang Yang, Yong Lu China-VO National Astronomical Observatories, CAS, China.
WSRF & WSRF’s Application in VO-DAS Haijun Tian ChinaVO
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Grids and Portals for VLAB Marlon Pierce Community Grids Lab Indiana University.
Grid Resource Allocation and Management (GRAM) Execution management Execution management –Deployment, scheduling and monitoring Community Scheduler Framework.
COMP3019 Coursework: Introduction to GridSAM Steve Crouch School of Electronics and Computer Science.
Condor Birdbath Web Service interface to Condor
1 Overview of the Application Hosting Environment Stefan Zasada University College London.
T Network Application Frameworks and XML Assignments.
Using Opal to deploy a real scientific application as a Web service Sriram Krishnan, Ph.D.
GEON meeting - May 22, 2006 GAMA 2.0 Features and Status Kurt Mueller SDSC.
The PROGRESS Grid Service Provider Maciej Bogdański Portals & Portlets 2003 Edinburgh, July 14th-17th.
ILDG Middleware Status Chip Watson ILDG-6 Workshop May 12, 2005.
By: Pramod Jagtap Aniket Bochare. Agenda Introduction to dataset Web service description Service architecture Project plan Intended clients.
Shannon Hastings Multiscale Computing Laboratory Department of Biomedical Informatics.
Managing and communicating uncertainty in geospatial web service workflows Richard Jones, Dan Cornford, Lucy Bastin, Matthew Williams Computer Science,
Course Schedule Report Web Service Carolyn Cracraft Lisa de Larios-Heiman.
The Globus Toolkit 4 (GT4) A brief introduction. Web Services, WSRF, OGSA and GT4.
Introduce Grid Service Authoring Toolkit Shannon Hastings, Scott Oster, Stephen Langella, David Ervin Ohio State University Software Research Institute.
Grid Computing at Yahoo! Sameer Paranjpye Mahadev Konar Yahoo!
Grid Services I - Concepts
Grid Security: Authentication Most Grids rely on a Public Key Infrastructure system for issuing credentials. Users are issued long term public and private.
What is SAM-Grid? Job Handling Data Handling Monitoring and Information.
SEE-GRID-SCI The SEE-GRID-SCI initiative is co-funded by the European Commission under the FP7 Research Infrastructures contract no.
Mike Jackson EPCC OGSA-DAI Architecture + Extensibility OGSA-DAI Tutorial GGF17, Tokyo.
Metadata Mòrag Burgon-Lyon University of Glasgow.
INT-9: Implementing ESB Processes with OpenEdge ® and Sonic ™ David Cleary Principal Software Engineer.
1 Service Creation, Advertisement and Discovery Including caCORE SDK and ISO21090 William Stephens Operations Manager caGrid Knowledge Center February.
System/SDWG Update Management Council Face-to-Face Flagstaff, AZ August 22-23, 2011 Sean Hardman.
GT3 Tutorial Chapter 3 and Chapter 4 Lecture for Cluster and Grid Computing, CSCE 490/590 Fall 2004, University of Arkansas, Dr. Amy Apon
Data Manipulation with Globus Toolkit Ivan Ivanovski TU München,
Tool Integration with Data and Computation Grid “Grid Wizard 2”
Steven Perry Dave Vieglais. W a s a b i Web Applications for the Semantic Architecture of Biodiversity Informatics Overview WASABI is a framework for.
Matthew Farrellee Computer Sciences Department University of Wisconsin-Madison Condor and Web Services.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
© Geodise Project, University of Southampton, Workflow Support for Advanced Grid-Enabled Computing Fenglian Xu *, M.
December, 2006 ws-VLAM Workflow Management System a Re-factoring of VLAM Dmitry Vasyunin Adianto Wibisono Adam Belloum.
Using Opal to deploy a real scientific application as a Web service Sriram Krishnan, Ph.D.
This document is proprietary. Any dispatch or disclosure of content is authorized only after written authorization by MEEO S.r.l. SAS FP – ESA-ESRIN Frascati.
Overview on the work performed during EPIKH Training Faiza MEDJEK /INFN, CATANIA 1.
An Introduction to Web Services
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Presentation transcript:

Wrapping Scientific Applications As Web Services Using The Opal Toolkit Wrapping Scientific Applications As Web Services Using The Opal Toolkit Sriram Krishnan, Ph.D.

Motivation Enable access to scientific applications on Grid resources –Seamlessly via a number of user interfaces –Easily from the perspective of a scientific user Enable the creation of scientific workflows –Possibly with the use of commodity workflow toolkits

Some Problems Access to Grid resources is still very complicated –User account creation –Management of credentials –Installation and deployment of scientific software –Interaction with Grid schedulers –Data management

Towards Services Oriented Architectures (SOA) Scientific applications wrapped as Web services –Provision of a SOAP API for programmatic access Clients interact with application Web services, instead of Grid resources –Used in practice in NBCR, CAMERA, GLEON, among others

Condor poolSGE Cluster PBS Cluster Globus Application Services Security Services (GAMA) State Mgmt GemstonePMV/VisionKepler Big Picture

Scientific SOA: Benefits Applications are installed once, and used by all authorized users –No need to create accounts for all Grid users –Use of standards-based Grid security mechanisms Users are shielded from the complexities of Grid schedulers Data management for multiple concurrent job runs performed automatically by the Web service State management and persistence for long running jobs Accessibility via a multitude of clients

Possible Approaches Write application services by hand –Pros: More flexible implementations, stronger data typing via custom XML schemas –Cons: Not generic, need to write one wrapper per application Use a Web services wrapper toolkit, such as Opal –Pros: Generic, rapid deployment of new services –Cons: Less flexible implementation, weak data typing due to use of generic XML schemas

The Opal Toolkit: Overview Enables rapid deployment of scientific applications as Web services (< 2 hours) Steps –Application writers create configuration file(s) for a scientific application –Deploy the application as a Web service using Opal’s simple deployment mechanism (via Apache Ant) –Users can now access this application as a Web service via a unique URL

Opal Architecture Tomcat Container Axis Engine Opal WS Cluster/Grid Resources Container Properties Service Config Scheduler, Security, Database Setups Binary, Metadata, Arguments

Implementation Details Service implemented as a single Java class using Apache Axis –Application behavior specified by a configuration file –Configuration passed as a parameter inside the deployment descriptor (WSDD) Possible to have multiple instances of the same class for different applications –Distinguished by a unique URL for every application No need to generate sources or WSDL prior to deployment

Sample Container Properties # the base URL for the tomcat installation # this is required since Java can't figure out the IP # address if there are multiple network interfaces tomcat.url= # database information database.use=false database.url=jdbc:postgresql://localhost/app_db database.user= database.passwd= # globus information globus.use=true globus.gatekeeper=ws.nbcr.net:2119/jobmanager-sge globus.service_cert=/home/apbs_user/certs/apbs_service.cert.pem globus.service_privkey=/home/apbs_user/certs/apbs_service.privkey # parallel parameters num.procs=16 mpi.run=/opt/mpich/gnu/bin/mpirun

Sample Application Configuration <appConfig xmlns=" xmlns:xsd=" ]]> <![CDATA[ --help : Display this text --CFAC= : Factor by which to expand mol dims to get coarse grid dims [default = 1.7]... ]]> /homes/apbs_user/bin/psize.py --GMEMCEIL=1000 false

Application Deployment & Undeployment To deploy onto a local Tomcat container : ant -f build-opal.xml deploy -DserviceName= -DappConfig= To undeploy a service : ant -f build-opal.xml undeploy -DserviceName=

Service Operations Get application metadata: Returns metadata specified inside the application configuration Launch job: Accepts list of arguments and input files (Base64 encoded), launches the job, and returns a jobID Query job status: Returns status of running job using the jobID Get job outputs: Returns the locations of job outputs using the jobID Get output as Base64: Returns an output file in Base64 encoded form Destroy job: Uses the jobID to destroy a running job

MEME+MAST Workflow using Kepler

Kepler Opal Web Services Actor

Gemstone Access to Molecular Science

Summary Opal enables rapidly exposing legacy applications as Web services –Provides features like Job management, Scheduling, Security, and Persistence More information, downloads, documentation: –