ogsi evolution: ws-resource framework and ws-notification carl kesselman globus alliance @ usc/isi...

37
OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI [email protected]

Upload: sarah-sullivan

Post on 27-Mar-2015

219 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

OGSI Evolution:WS-Resource Framework

and WS-Notification

Carl Kesselman

Globus Alliance @ USC/ISI

[email protected]

Page 2: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

2WS-Resource Framework www.globus.org/wsrf

Context

OGSA/I introduced two years ago (GGF4)◊ Grid over Web services

Convergence of requirements from:◊ Grid computing◊ Systems Management◊ Business computing

OGSI concernsthreatened ubiquity

Solution: Evolve OGSI toprovide key middleware forscientific & commercial needs

GridComputing

SystemsManagement

BusinessComputing

WebServices

Page 3: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

3WS-Resource Framework www.globus.org/wsrf

Web Servicesand Stateful Resources

“State” appears in almost all applications◊ Data in a purchase order◊ Current usage agreement for resources ◊ Metrics associated with work load on a server

There are many possible ways Web services might model, access and manage state◊ OGSI v1.0 defined one approach◊ WS-Resource Framework proposes an evolution of

that approach◊ Ad-hoc approaches can be used per-application

Page 4: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

4WS-Resource Framework www.globus.org/wsrf

Building large-scale systems by composition of many heterogeneous components demands that we extract and standardize common patterns

◊ Approach to resource identification◊ Resource lifetime management interfaces◊ Resource inspection and monitoring interfaces◊ Base fault representation◊ Service and resource groups◊ Notification◊ And many more…

Standardization encourages tooling & code re-use◊ Support to build services more quickly & reliably

Why Standardize An Approach?

Page 5: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

5WS-Resource Framework www.globus.org/wsrf

OGSI Overview 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

Page 6: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

6WS-Resource Framework www.globus.org/wsrf

Grid

Web

However, despite enthusiasm for OGSI, adoption within Web community turned out to be problematic

Started far apart in apps & tech

OGSI

GT2

GT1

HTTPWSDL,

WS-*

WSDL 2,

WSDM

Have beenconverging ?

Convergence ofGrid and Web Services

Page 7: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

7WS-Resource Framework www.globus.org/wsrf

Concerns

Too much stuff in one specification

Does not work well with existing Web services tooling

Too object oriented

Page 8: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

8WS-Resource Framework www.globus.org/wsrf

Convergence ofGrid and Web Services

Grid

Web

The definition of WSRF means that Grid and Web communities can move forward on a common base

WSRF

Started far apart in apps & tech

OGSI

GT2

GT1

HTTPWSDL,

WS-*

WSDL 2,

WSDM

Have beenconverging

Page 9: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

9WS-Resource Framework www.globus.org/wsrf

A family of Web services specification proposals ◊ WS-Resource Framework (WSRF): Introduces a design

pattern to specify how to use Web services to access “stateful” components

◊ WS-Notification: Introduces message-based publish-subscribe to Web services

WS-

Serv

ice

Gro

up

WS-RenewableReferences

WS-

Not

ifica

tion

Modeling Stateful

Resources with Web Services

WS-B

ase Faults

WS-ResourceProperties W

S-Resource

Lifetime

IntroducedJanuary 20

To be released

DocumentsAnnounced at GlobusWorld

Page 10: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

10WS-Resource Framework www.globus.org/wsrf

Document Authors

WSRF: CA, Fujitsu, HP, Globus, IBM◊ Strong participation from systems management

companies WS-Notification: CA, Fujitsu, HP, Globus, IBM +

Akamai, Sonic, SAP, Tibco◊ Strong participation from messaging companies

Author notes:◊ IBM: Both Web service & OGSI authors◊ HP: WSMF authors

Page 11: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

11WS-Resource Framework www.globus.org/wsrf

Concerns AddressedBy WSRF and WS-Notification

Too much stuff in one specification WSRF partitions OGSI v1.0 functionality into a

family of composable specifications Does not work well with existing Web services

tooling WSRF tones down the usage of XML Schema

Too object oriented WSRF makes an explicit distinction between

the “service” and the stateful “resources” acted upon by that service

Page 12: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

12WS-Resource Framework www.globus.org/wsrf

What is a WS-Resource?

Web service: Operation execution component made available at an endpoint address◊ Implementation often stateless, but accesses state

WS-Resource: Web service + associated resource◊ Equivalently: A resource with an associated WS

A WS-Resource has:◊ Identity: Can be uniquely identified/referenced◊ Lifetime: Often created & destroyed by clients◊ State: Can be projected as an XML document

WS-Resource type = Web service interface WS-Resources are not just for physical devices

◊ Jobs, subscriptions, logical data sets, etc.

Page 13: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

13WS-Resource Framework www.globus.org/wsrf

Inte

rface

WebService

WSDLRun-time environment

Web Services Model

Page 14: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

14WS-Resource Framework www.globus.org/wsrf

Inte

rface

WebService

message

message

Invoking a Web Service

address

Endpoint Reference

Run-time environment

Web Services Model

Page 15: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

15WS-Resource Framework www.globus.org/wsrf

context

Inte

rface

WebService

messageid

message

Using a Web service to access a resource

id

address

resource

Run-time environment

Endpoint Reference

WS-Resource Framework Model

AddressResource id

Page 16: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

16WS-Resource Framework www.globus.org/wsrf

context

Inte

rface

WebService

messageid

message

Using a Web service to access a resource

id

address

resource

resource

Endpoint ReferenceEndpoint Reference

WS-Resource Framework Model

Run-time environment

Page 17: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

17WS-Resource Framework www.globus.org/wsrf

Any Web service capable of bringing aWS-Resource into existence◊ Typically by creating a resource, associating

it with a service, and assigning the pair an identifier (e.g. Endpoint Reference)

A pattern, not a particular operation◊ Request message customized for particular

type of resource(s) to be created◊ Response message of a factory operation

usually includes an EPR that refers to the new WS-Resource

◊ May create one or many WS-Resources

WS-Resource Factory

Page 18: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

18WS-Resource Framework www.globus.org/wsrf

Inte

rface

WebService

message

message

Creating / Locating a WS-Resource

address

Endpoint Reference

resource

Endpoint Reference

Web Service either locates or creates a

WS-Resource

address

id

WS-Resource Framework Model

Run-time environment

Page 19: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

19WS-Resource Framework www.globus.org/wsrf

Service Composition

Transports

Messaging

Description

Quality ofExperience(QoX)

HTTP/HTTPS SMTP RMI / IIOP

XSD WSDL

SOAPXML WS-Addressing WS-RenewableReferences

WS-MetadataExchangeWS-Policy

WS-ServiceGroup

WS-Resource Properties

JMS

WS-Security

WS-ReliableMessaging WS-Transaction

WS-ResourceLifetime

WS-BaseFaults

WS-Notification BPEL4WS

How these proposals relate to other Web services standards

Page 20: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

20WS-Resource Framework www.globus.org/wsrf

Open Grid Services Architecture

Define a service-oriented architecture …◊ the key to effective virtualization

… to address vital “Grid” requirements◊ AKA utility, on-demand, system

management, collaborative computing … building on Web services standards

◊ extending those standards where needed

Page 21: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

21WS-Resource Framework www.globus.org/wsrf

•OGSA Services can be defined and implemented asWeb services

•OSGA can take advantage of other Web services standards

•OGSA can be implemented using standard Web services development tools

•Grid applications will NOT require special Web services infrastructure

Network

OGSA Enabled

Storage

OGSA Enabled

Servers

OGSA Enabled

Messaging

OGSA Enabled

Directory

OGSA EnabledFile

Systems

OGSA Enabled

Database

OGSA EnabledWorkflo

w

OGSA Enabled

Security

OGSA Enabled

Web Services

WS-Resource Framework & WS-Notification are an evolution of OGSI

OGSI – Open Grid Services Infrastructure

How these proposals relate to OGSA

Web Services

OGSA Architected Services

Applications

WS-

Serv

ice

Gro

up

WS-RenewableReferences

WS-

Not

ifica

tion

Modeling Stateful

Resources with Web Services

WS-B

ase Faults

WS-ResourceProperties W

S-Resource

Lifetime

Page 22: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

22WS-Resource Framework www.globus.org/wsrf

From OGSI to WSRF:Refactoring and Evolution

OGSI WSRF

Grid Service Reference WS-Addressing Endpoint Reference

Grid Service Handle WS-Addressing Endpoint Reference

HandleResolver portType WS-RenewableReferences

Service data defn & access WS-ResourceProperties

GridService lifetime mgmt WS-ResourceLifetime

Notification portTypes WS-Notification

Factory portType Treated as a pattern

ServiceGroup portTypes WS-ServiceGroup

Base fault type WS-BaseFaults

Page 23: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

23WS-Resource Framework www.globus.org/wsrf

OGSI Overview 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

Page 24: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

24WS-Resource Framework www.globus.org/wsrf

WSRF & WS-N Overview 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

Page 25: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

25WS-Resource Framework www.globus.org/wsrf

WSRF & WS-N Overview Naming and bindings (basis for virtualization)

◊ Every resource can be uniquely referenced, and has one or more associated services for interacting with it

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

Page 26: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

26WS-Resource Framework www.globus.org/wsrf

WSRF & WS-N Overview Naming and bindings (basis for virtualization)

◊ Every resource can be uniquely referenced, and has one or more associated services for interacting with it

Lifecycle (basis for fault resilient state management)◊ Resources created by services following factory pattern◊ Resources destroyed immediately or scheduled

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

Page 27: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

27WS-Resource Framework www.globus.org/wsrf

WSRF & WS-N Overview Naming and bindings (basis for virtualization)

◊ Every resource can be uniquely referenced, and has one or more associated services for interacting with it

Lifecycle (basis for fault resilient state management)◊ Resources created by services following factory pattern◊ Resources destroyed immediately or scheduled

Information model (basis for monitoring & discovery)◊ Resource properties associated with resources◊ Operations for querying and setting this info◊ Asynchronous notification of changes to properties

Service Groups (basis for registries & collective svcs)◊ Group membership rules & membership management

Base Fault type

Page 28: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

28WS-Resource Framework www.globus.org/wsrf

WSRF & WS-N Overview Naming and bindings (basis for virtualization)

◊ Every resource can be uniquely referenced, and has one or more associated services for interacting with it

Lifecycle (basis for fault resilient state management)◊ Resources created by services following factory pattern◊ Resources destroyed immediately or scheduled

Information model (basis for monitoring & discovery)◊ Resource properties associated with resources◊ Operations for querying and setting this info◊ Asynchronous notification of changes to properties

Service Groups (basis for registries & collective svcs)◊ Group membership rules & membership management

Base Fault type

Page 29: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

29WS-Resource Framework www.globus.org/wsrf

WS-Resource Framework Capabilities

Clarifies how stateful resources are addressed Specifies how to use XML to describe and access a

resource’s properties Defines how a resource is created and messages to

destroy resources Provides a message subscription and notification

mechanism for Web services Defines how to organize groups of resources and

services Adds a fault tolerance capability to WS-Addressing Defines a standard, extensible format for Web services

error messages

In publicly released specifications

Page 30: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

30WS-Resource Framework www.globus.org/wsrf

Specifies the representation of the address of a Web service deployed at a given network endpoint

EndpointReference (EPR) is an XML serialization of a network-wide pointer to a Web service

EPRs can be used to pass around service references An EPR contains:

◊ Service address (wsa:Address)◊ Reference properties (wsa: ReferenceProperties): can be used

to define a resource associated with service address◊ Metadata associated with the Web service such as service

description information ◊ Policy information related to the use of the service

WS-Addressing

Page 31: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

31WS-Resource Framework www.globus.org/wsrf

IBM

WS-ResourceProperties◊ Resource state and metadata “Projected” as

an XML document◊ Query and Set operations

WS-ResourceLifetime◊ Synchronous or scheduled

(“soft-state”) destruction◊ Provides for cleanup of resource instances

resource

<ProcessorProperties><ProcID>5A34C1DE03</ProcID><ProcArchitecture>Power6.2</ProcArchitecture><ProcSpeedMIPS>400</ProcSpeed><ProcCacheMB>256<ProcCache><ProcRunning>1</ProcRunning>

</ProcessorProperties>

WS-Resource Framework Model

Page 32: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

32WS-Resource Framework www.globus.org/wsrf

Subscriber indicates interest in a particular “Topic” by issuing a “subscribe” request

Broker (intermediary) permits decoupling Publisher and Subscriber

“Subscriptions” are WS-Resources◊ Various subscriptions are possible

Publisher need NOT be a Web Service

Notification may be “triggered” by:◊ WS Resource Property value changes◊ Other “situations”

Broker examines current subscriptions

Brokers may ◊ “Transform” or “interpret” topics◊ Federate to provide scalability

Broker

Subscriber

Publisher

subscribe

subscribe

S S S

notify

notify

notify

notify

WS-Notification

Page 33: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

33WS-Resource Framework www.globus.org/wsrf

Network

RRR

A

ServiceLevel

Scenario: Resource management & scheduling

Storage

RRRIBM

IBM

Computers

RRR

Notification

GridScheduler

WS-Resource used to “model” physical

processor resources

WS-Resource Properties “project” processor status (like utilization)

Local processor manageris “front-ended” with A Web service interface

Other kinds of resources are also“modeled” as WS-Resources

JJ

J

WS-Notification can be used to “inform” the

scheduler when processor utilization

changes

Grid “Jobs” and “tasks” are also modeled using

WS-Resources and Resource Properties

Grid Scheduleris a

Web Service

Service Level Agreement

is modeled as a WS-Resource

(WS-Agreement)

Lifetime of SLA Resource tied to the duration

of the agreement

Bringing it All Together

Page 34: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

34WS-Resource Framework www.globus.org/wsrf

Globus Toolkit® andWS-Resource Framework

3.2

Improved robustness, scalability, performance,

usability

3.2March

4.0 Q2

4.0Q3

4.2Q1 ‘05

4.2 Q4

Numerous new WSRF-based services

4.2

4.0

WSRF; some new functionality; further usability, performance enhancements

2004 2005

Note: We are not waiting for finalizationof WSRF specs

Page 35: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

35WS-Resource Framework www.globus.org/wsrf

Globus Toolkit != WSRF/OGSI WSRF/OGSI impl is just one small part of GT

◊ GT = Services for execution mgt, data mgt, monitoring, and discovery

E.g. GRAM, GridFTP, RFT, RLS, OGSA-DAI, etc.

GT services are largely unaffected by WSRF◊ Changing thin middle layer of some services◊ Interfaces and semantics largely unchanged◊ But not interoperable due to protocol changes◊ GT3 work in GRAM & RFT will transition easily

Pre-WS components continue to be supported◊ GridFTP, RLS

Page 36: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

36WS-Resource Framework www.globus.org/wsrf

Stabilize the services around WSRF◊ Usability, performance, reliability, scalability,

documentation, internationalization◊ Leverage Apache even more

Axis, WS-Security, WS-Addressing, …

Bring to fruition new functionality in pipeline ◊ Data access & integration (OGSA-DAI)◊ Enhanced GridFTP◊ Community scheduling framework◊ Monitoring & discovery capabilities

GT2GT3 bump >> GT3GT4 bump

Globus Priorities for 2004

Page 37: OGSI Evolution: WS-Resource Framework and WS-Notification Carl Kesselman Globus Alliance @ USC/ISI carl@isi.edu

37WS-Resource Framework www.globus.org/wsrf

Summary

WSRF is straight-forward evolution of OGSI OASIS WSRF TC continues the standards

process started by GGF OGSI WG◊ Addresses concerns raised with OGSI◊ Reflects its broader applicability

GT4 will start migration of Globus infrastructure to WSRF◊ Impact at low level, not high level services