Designing and BuildingGrid Services GGF9 Chicago October 8, 2003 Organizers: Ian Foster, Marty Humphrey, Kate Keahey, Norman Paton, David Snelling
Open Grid Services Architecture • Service-oriented architecture • Key to virtualization, discovery, composition, local-remote transparency • Leverage industry standards • Internet, Web services • Distributed service management • A “component model for Web services” • A framework for the definition of composable, interoperable services “The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration”, Foster, Kesselman, Nick, Tuecke, 2002
More Specifically • A standard substrate: the Grid service • OGSI = Open Grid Service Infrastructure • Web services interfaces and behaviors that address key distributed system issues • … supports standard service specifications • Resource mgt, dbms, workflow, security, … • Target of current & planned GGF efforts • OGSA wg defines “OGSA compliance” • … and arbitrary application-specific services based on these & other definitions
OGSI Specification • Defines WSDL conventions and extensions • For describing and naming services • Working with W3C WSDL working group to drive OGSI extensions into WSDL 1.2 • Defines fundamental interfaces (using extended WSDL) and behaviors that define a Grid Service • A unifying framework for interoperability & establishment of total system properties • http://www.ggf.org/ogsi-wg
OGSI: Standard Web Services Interfaces & Behaviors • Naming and bindings (basis for virtualization) • Every service instance has a unique name, from which can discover supported bindings • Lifecycle (basis for fault resilient state management) • Service instances created by factories • Destroyed explicitly or via soft state • Information model (basis for monitoring & discovery) • Service data (attributes) associated with GS instances • Operations for querying and setting this info • Asynchronous notification of changes to service date • Service Groups (basis for registries & collective svcs) • Group membership rules & membership management • Base Fault type
Resource allocation Create Service Grid Service Handle Service data Keep-alives Notifications Service invocation Service discovery Register Service Service instances Open Grid ServicesInfrastructure (OGSI) Authentication & authorization are applied to all requests Service factory Service requestor (e.g. user application) Service registry Interactions standardized using WSDL
OGSI Implementations • Globus Toolkit version 3.0 (Java, C client) • U Virginia OGSI.NET (.NET) • LBNL pyGlobus (Python) • U Edinburgh (.NET) • U Manchester (PERL) • Fujitsu Unicore (Java)
Structured Data Integration Job Submission Brokering Workflow Registry Banking Authorisation Transformation Structured Data Access Data Transport Resource Usage Web Services: Basic Functionality Structured Data Relational XML Semi-structured Open Grid Services Architecture Users in Problem Domain X Applications in Problem Domain X Application & Integration Technology for Problem Domain X Generic Virtual Service Access and Integration Layer OGSA OGSI: Interface to Grid Infrastructure Compute, Data & Storage Resources - Distributed Virtual Integration Architecture
Issues • Design methodologies & principles • Tooling • Application requirements • Benchmarking • Reuse • Debugging • Service orchestration • Scalability • Interoperability
Issues • What makes for a good Grid service (or a bad service)? • How to organize service data? • How to factor problems into services? • Views on service lifetime and granularity? • Experiences with building Grid services? • How to teach Grid service design?
Workshop • 20 position papers received, 12 selected for presentation by organizers • Program emphasizes discussion • 13:00-15:00 – Intro, 4 talks • 15:30-17:00 – 4 talks • 17:30-19:00 – 4 talks • 19:00-19:30 – Discussion and wrapup
Grid Services & Resource Mgmt(Chair: Dave Snelling) • C. Eric Wu, Design and Implementation of Manageability Services for Common Management Model • Kate Keahey, Matei Ripeanu, Karl Doering:Dynamic Creation and Management of Runtime Environments in the Grid • Lavayna Ramakrishnan: Policy Management for OGSA Applications as Grid Services • Jim Pruyne, Vijay Machiraju: Quertermaster: Grid Services for Data Centre Resource Reservation
Data Intensive Grid Services(Chair: Marty Humphrey) • Mario Antonioletti, et al.: Experiences of Designing and Implementing Grid Database Services in the OGSA-DAI Project • Nedim Alpdemir, et al.: An Experience Report on Designing and Building OGSA-DQP: A Service-Based Distributed Query Processor for the Grid • Savas Parastidis, Paul Watson: Experiences with Migrating myGrid Web Services to Grid Services • William Allcock, Ravi Madduri: Lessons learned producing an OGSI compliant Reliable File Transfer System.
Service Deployment and Control(Chair: Kate Keahey) • Glen Wasson and Marty Humphrey: Attribute-Based Programming for Grid Services • Dennis Gannon, et al.: Building Grid Services for User Portals • Deepti Kodeboyina and Beth Plale: Experiences with OGSA-DAI: Portlet Access and Benchmark • Laura Pearlman, et al.: Experiences using Grid Services for Control
Questions • Shareability of service instances • Are services designed to support the interaction of a single requester or shared by many? • Lifetime and granularity of services • Does a service instance represent a single task, several at a time, or several in sequence? • Scope of use of service instance model • Were situations encountered in which it was not clear what to represent as service instances, and how was this resolved? • Representing stateful interactions • Sometimes a context approach (e.g. as in WS-transaction) might seem more suitable than using service instances. How were such situations addressed?
Questions, contd. • Design of SDEs • There are issues relating, for example, to the granularity of SDEs, materialisation vs computation, etc. Were such issues encountered, and if so, how were they resolved? • Performance • Were design decisions made because of potential performance implications? What were these, and how were they resolved? • Security • Were design decisions made because of potential security implications? What were these, and how were they resolved? • Interfaces and operation extensibility • Any issues with the OGSI interfaces? Extensibility?