Presentation is loading. Please wait.

Presentation is loading. Please wait.

Overview of Grid Webservices in Distributed Scientific Applications Dennis Gannon Aleksander Slominski Indiana University Extreme! Lab.

Similar presentations


Presentation on theme: "Overview of Grid Webservices in Distributed Scientific Applications Dennis Gannon Aleksander Slominski Indiana University Extreme! Lab."— Presentation transcript:

1 Overview of Grid Webservices in Distributed Scientific Applications Dennis Gannon Aleksander Slominski Indiana University Extreme! Lab

2 Portals, Components & GWS Resource layer 1000s of PCs ->massive supercomputers Information/ Naming Services Information/ Naming Services (co-)scheduling Service (co-)scheduling Service Accounting Service Accounting Service Security Service Security Service Event/Mesg Service Event/Mesg Service Discovery service Discovery service User Help Services User Help Services Monitoring Service Monitoring Service Peer Creation & resolution Services Peer Creation & resolution Services Information Routing Information Routing P2P / Grid Services Layer Grid Web Services Layer User Portals/ Science Portals Distributed Grid Application Launch, configure And control

3 Central Web Services Standards Web Services Description Language (WSDL) –An XML document that Describes the interfaces types for each port –The contents of messages it receives and sends Describes the bindings of interfaces to protocols –SOAP – XML over HTTP is default, others possible –Describes the access points (host/port) for the protocol bindings Web Services Flow Langauge (WSFL) –An XML document that describes how a business process invokes a set of services UDDI & WSIL –A mechanism to discover WSDL docs for services WSIF – –Translates WSDL docs into Java proxies

4 Why use Web Services? Standards, standards, standards … –not necessarily cohesive but simple and embraced everywhere (HTTP, XML, …) Simple enough –to make possible quick implementations Good enough for significant number of tasks, ex: –send message, notification, event, –even good for small data sets

5 Secure Web Services Collaborative effort to provide Web Services over Grid –LBL, SDSC, IBM XSOAP/Java implements SOAP1.1 with SSL and GSI security over HTTP Secure XSOAP/C++ under development GSI delegation - steps involved –Grid proxy creation [CoG] –Opening secure connection [JSSE or IAIK] –SSL client and server authorization –Proxy delegation [CoG] –HTTP payload [XSOAP, Apache Tomcat, …] –Sending SOAP payload [XSOAP]

6 Where do we use it? Better glue for component –Control tasks done with standard protocol that is simple, XML based and works everywhere (HTTP) –Example: bootstrap of components (creation service and GRAM together) Events and event channels –Computation steering and monitoring –Resource monitoring Publishing NWS events

7 Web Services software we use: XCAT –Java and C++ implementation of CCA over SOAP –Open Framework Code Gen. Toolkit (CGT) generating stubs, skeletons and glue code (such as marshalling objects to XML) XSOAP –Java and C++ implementation of SOAP 1.1 that adss RMI API, JNDI (LDAP) integration and GSI security XEVENTS –Reliable application event service using event channels that that is SOAP 1.1 service XSPACES 3 rd party: Castor, Tomcat, XML parsers…

8 Components as Services Our XCAT components that are CCA based are also web services –Can accept SOAP1.1 requests –Component references publishable in directory service (right now LDAP) CCA defines internal services –Creation –Connection –…

9 Example: creation service XX Scriptable component GRAM client SSH client Creation service GRAM service SSH server Creation service XX XCAT component Send handle Instantiate SOAP

10 Example: tracking computation XCAT Components Event Visualizer subscribe handleEvent Event Channels Event Channels Events are sent as SOAP packets NOTEBOOK This is a scientific notebook example there is text and there is also some interesting graphics and some scripts

11 Reliable Application Event Service Publish event Receive events Store events for later retrieval Deal with network failures or temporary disconnection, moving clients (DHCP) and firewalls (receiving events) Publishing from C/C++/Fortran … Interoperability –allow any SOAP/HTTP implementation to send events and receive events (generic event)

12 Web Services in Grid Programming Authentication and Authorization –Obvious examples of Grid Web Services Discovery Service –Finding remote “instances” of things May be LDAP based like MDS or other … Resource Brokering –What are the best resource upon which to run my application now? Application Factory Service

13 A service that understands a how to instantiate a running instance of an app component. –You provide it with appropriate requirements initial conditions, etc. –The service checks you credentials and authorization launches the app and returns a reference to it. App factory App Instance Provide me with an instance of application X

14 Anatomy of a Componentized Grid Service Application User Configures Application from Web Browser Sets application parameters Launches job User Portals/ Science Portals Web Server Web Server Web Server contacts appropriate application factory service (FS) Supplies FS with task parameters FS contacts Resource Broker and secures job launches. Returns jobID to server to browser Job begins execution Publishes its contact point to discovery service Begins publishing status events to event channel. Web server discovers application Allows user to interrogate it or retrieve event traces App factory Resource Broker App Instance Event channel Disc serv

15 An Application Instance Typical Instance –Publishes event stream to “well known” channel. –Has a Control Interface to allow portal level interrogation or remote steering –May be linked to other components/services Links To Other Apps/ services Control Interface check status control messages Application Instance Event stream

16 How to link and control a set of application components? We use a Jython Script –Script uses java cog to launch the component instances through gram Or script can consult a directory service –The script can call a connect operation to link two instances –The script can invoke ports directly App Script

17 WSFL & Control Flow An XML document that describes the work flow of a task that uses web services –Completely analogous to component script –Except no direct service to service link. WSFL

18 Further work Better integration with GSI –Experimenting with GSI delegation Maintain interoperability –Interoperates with SOAP/GSI from LBL pyGlobus and GSI Apache Adding GSI security to XSOAP/C++ Fully use WSDL …

19 Contact us Extreme! Lab Indiana University and check our web page:and check our web page: http://www.extreme.indiana.edu/ Get our XSOAP/Java implementation –Play with it and let us know! And more coming soon … –XEVENTS, XSPACES, XSOAP/C++, …


Download ppt "Overview of Grid Webservices in Distributed Scientific Applications Dennis Gannon Aleksander Slominski Indiana University Extreme! Lab."

Similar presentations


Ads by Google