Sei sulla pagina 1di 37

OGSA

SERVICE ORIENTED GRID ARCHITECTURE

CORE ELEMENTS
OGSI ( Open Grid Services Infrastructure) OGSA Services OGSA Schemas

Core components
More specialized and domain-specific services OGSA Services : registry, authorization, monitoring, Data access, management , etc, etc Other Schemas O G S A Schemas

Open Grid Services Infrastructure

Web services

Hosting Environment

Protocol

Why need OGSI?


Current Web services do not address basic service semantics
Creation Lifetime Faults State management

Why need OGSI?


Service behaviors must be standardized to enable service virtualization and service interoperability Such issues are addressed by a core set of interfaces called OGSI A Web service that adheres to OGSI standards is called a Grid service

OGSI
Addresses essential building blocks of distributed systems ( standard interfaces and associated behaviors)
Describing and discovering service attributes Creating service instances Managing service lifetime, group of services Subscribe/deliver notifications

Other issues
How to provide Identity / authentication? Policy expression/negotiation ? Service discovery ? SLA monitoring ? Data and computation resource integration? Monitoring and managing collection of services?

The answer - OGSA


Standardization in other areas than OGSI for
Build large scale systems in standard fashion Achieve code reuse Interoperability among components

OGSA define additional services in these and other domain specific areas

Service Factory Create Service Resource Allocation Authentication & Authorization are applied to all requests Grid Service Handle

Service Requestor

Service data Keep-alives Notifications Service Invocation

Register Service

Service Instances

Service Registry

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Standard Interfaces defined by OGSI


portType name GridService * HandleResolver NotificationSource NotificationSubscription NotificationSink Factory ServiceGroup ServiceGroupRegistration ServiceGroupEntry Description Encapsulates the root behavior of the service model, including service data and lifetime management Mapping from a GSH to GSR Allows clients to subscribe to notification messages For managing the lifetime and other properties of a subscription Defines a single operation for delivering a notification message to the service instance that implements the operation Standard operation for creation of Grid service instances Service data for representing a group of service instances, and the policies associated with group memberships Allows Grid services to be added and removed from a ServiceGroup For managing lifetime and other properties of a registration to a ServiceGroup

* Every OGSI compatible service must support them

Operations defined by OGSI GridService Interface


Operation findServiceData setServiceData requestTerminationAfter requestTerminationBefore destroy Description Query information about the GridService instance Modify service data values Specify earliest desired termination time Specify latest desired termination time Terminate Grid service instance

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Grid Service descriptions and Instances


Transient services need considerations on how they are managed, named, discovered and used. Distinction between the definition of a Grid service and an instance of that definition A Grid service description consists of the WSDL defines Grid service interfaces and associated semantics A Grid service instance is an addressable, potentially stateful, potentially transient instantiation of a service description

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Service State, metadata and Introspection


Explicit declaration of publicly visible state associated with an interface called as service data OGSI defines standard operations for accessing ( via both queries and subscriptions) the state Each interface defined in the service description can specify zero or more service data elements (SDEs) SDE s are named, typed XML elements with properties like how they can be modified during the lifetime of the instance. SDE s can represent static characteristics of a Grid service instance ( capacity, location , speed) and dynamic state information ( free space, load) , information about error conditions, access control policies, active transfers The OGSI service data mechanisms allows introspection, discovery and monitoring Client can query( introspect) SDE s of a service instance to determine whether it meets requirements A service instance might be configured to communicate the SDE information to one or more registry services using notifications ( efficient discovery) Notification can be used to intimate management applications, allowing them to detect and respond ( monitor) erroneous conditions.

Service State, metadata and Introspection


<wsdl:definitions xmlns:tns=.. targetNamespace-..> <gwsdl:portType name=StorageService extends=ogsi:GridService> <wsdl:operation name=getFile> </wsdl:operation> <sd:serviceData name=capacity type=xsd:integer/> <sd:serviceData name=location type=xsd:string/> <sd:serviceData name=speed type=xsd:integer/> <sd:serviceData name=freeSpace type=xsd:integer/> <sd:serviceData name=load type=xsd:integer/> <sd:serviceData name=outOfSpaceError type=ogsi:FaultType minOccurs=0/> <sd:serviceData name=accessControlPolicy type=tns:PolicyType/> <sd:serviceData name=activeTransfer type=activeTransferType minOccurs=0 maxOccurs=unbounded/> </gwsdl:portType> <wsdl:definitions> OGSI WSDL definitions for service data in a simple Grid Service

Service State, metadata and Introspection


Service Data elements defined in the GridService Interface

SDE Interface ServiceDataName

# 1+ 0+

Description Names of the interfaces (portTypes) supported by the GridService instance Names of the service data elements contained in the instances service data values documents The factory that created the instance, or NIL if none GSHs for the Grid service instance GSRs for the Grid service instance Query expression types that can be passed to the findServiceData operation Update expression types that can be passed to the setServiceData operation Earliest and latest termination times of the Grid service instance

FactoryLocator GridServiceHandle GridServiceReference FindServiceDataExtensibility SetServiceDataExtensibility TerminationTime

1 0+ 1+ 1+ 2+ 1

Accessing Service data Elements


OGSI defines both pull- and push-mode mechanisms for accessing service data findServiceData provides pull-mode , can accept an extensible set of query expressions ( simple to complex queries like Xpath or XQuery) push delivery via NotificationSource, NotificationSubscription and NotificationSink.

Notification Source (Implements NotificationSubscription portTpe)

keepalive

Notification Sink(Client) (Implements NotificationSubscription portTpe)

Notification messages

Accessing Service data Elements


A subscription request consists of A subscription expression describing
Contents and types of the XML elements to be sent from source tosink When messages should be sent

The Grid service instance ( sink) to which notification messages should be delivered An initial lifetime for the subscription

Service data Element Schema


The monitoring and management functions consuming service data will be implemented with application-specific standards like CIM, SNMP or LDAP Thus there is need for standard schema, a variety of such standard schema are defined by OGSA Common management models, an abstract representation of a resource ( node, interface adapter, disk, file system or IP address) Management is the active process of monitoring, modifying, and making decisions about a resource Manageable entities are exposed as Grid services in OGSA A manageable Grid service ( resource) implements the GridService interface and additional interfaces for being used from or included in an appliaction or management tool.

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Naming and Name resolution


Naming scheme should allow Grid services to be upgraded during their lifetime The names should not require a fixed mapping of service instances to network addresses, since that would make it difficult to relocate a service instance, failover, load balancing or replicated implementations for scaling OGSI adapts a two-level naming scheme for Grid Service Simple abstract, long-lived Grid service Handles (GSH) represented using a URI (Invariant) GSH s can be mapped to concrete but potentially short-lived Grid Service references (GSR s) by handle resolution services. GSH carries no protocol-or instance specific information like network addresses or supported protocols The GSR encapsulates all instance specific information into a single abstraction The format and content of GSH are dependent on the underlying protocol binding in a SOAP environment it is represented as WSDL containing <service> and <binding>
resolve (GSH) time >T

Client
time <T

Handle resolver

GSR1

GSR2
Migrate

Service instance
At time T

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Service Life Cycle


Grid service may be transient and created as a part of the normal operation
Mechanisms to create new services Specify assertions about the lifetime of a service
The OGSA Factory, Registry, GridService, and HandleMap interfaces support the creation of transient service instances and the discovery and characterization of the service instances

Creating Transient Services : Factories

Three different hosting environments simple hosting environment, virtual hosting environment, multicomponent

Service Life Cycle


Service Lifetime Management Negotiating an initial lifetime Client uses factory s createService operation and indicates earliest and latest acceptable termination time Explicit Termination
Uses the grid service interfaces destroy operation

Requesting a lifetime modification Eg: A file transfer service Things that proceed are A Request to initiate transfer, leads to negotiation of an initial life-time The Client sends periodic keep alives to indicate its interested to continue At some point of time, one of three things happen The transfer completes, the file transfer service instance terminates The client fails, and its failure to send further keepalive messages leads to the destruction of the transfer service, once its service lifetime expires The clienr decides that it no longer interested in the transfer and, to conserve resources, performs an explicit destroy of the transfer service instance

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Fault Model
Automatic adaptation to faults requires ability to return faults ( exceptions) Contains information about the cause of the fault Consistent in its content Semantics Means of delivery Contains a standard XSD type ogsi:FaultType
Originating service Time stamp

Grid Service operation will define one XSD type for each fault and extends ogsi:FaultType

OGSI- Features
Virtualize and compose services needs Interface Definition Language (WSDL) And standard Interface definitions and semantics for common service interactions These standard interfaces and semantics are provided in OGSA by the OGSI ( uses WSDL and human readable form ). The OGSI features are Grid Service descriptions and Instances Service State, metadata and Introspection Naming and name resolution Service life cycle Fault type Service groups

Service Groups
For organizing group of services ServiceGroup ServiceGroupEntry ServiceGroupRegistration A service group is a Grid service that maintains information about a group of Grid service instances Services need not to have same interface, creator, lifetime, purpose or any point in common

portType GridService portType Factory portType ServiceGroup SDE entry GSH Other Info SDE entry GSH Other Info

Service instance

Service instance

Service Groups
The ServiceGroup portType defines an optional SDE, membershipContentRule- to define constraints for members Each enter SDE may contain a reference to a service instance implementing the ServiceGroupEntry portType The ServiceGroupRegistartion portTypes defines add and remove operations that can be used to add and remove ServiceGroupEntry instances from a ServiceGroup.

OGSA Services and Schema


OGSI defines mechanisms for creating, managing, and exchanging information among Grid services OGSI is a building block to construct higher-level interfaces and associated behaviors, that are derived by composing OGSI mechanisms. OGSA Services and Schemas are the Grid components that are commonly seen in any Grid system Service discovery Service management Monitoring Security Data access Messaging Definition of standard interfaces, behaviors and schema for such components helps reusable components and interoperable systems in a consistent fashion. Best ways to factor Grid functionality into OGSA services and appropriate interfaces

OGSA Services and Schema


The service groups are classified into 3 sections
Core-services
Name resolution and discovery Service domains Security Policy Messaging, queuing, and logging Events Metering and Accounting Data naming and access Replication Metadata and provenance Provisioning and resource management Service orchestration Transactions Administration and deployment

Data and information related services


Computation management services ( Resource and service management)


Not all these services become standardized as part of OGSA but will provide useful capabilities

Implementation
Container Protocol Termination
Demarshalling/ Decoding

Grid service Impl. Grid service Impl.

Protocol Termination

Protocol Termination

Grid service Impl.

GT3 and other OGSI Implementations


GT is an open source software which provides middleware services and libraries for the construction of Grid applications Components for
Authentication and authorization Communication Job-submission Data transfer Resource monitoring and discovery etc.

GT3 provides complete implementation of OGSI Refactored components (OGSI standard)


Discovery of services Submission and monitoring of program execution jobs Reliable file transfer

Other components being refactored


Data delivery Replica location Community authorization

pyGlobus and UNICORE( java implementation)

Future directions
Services and tools
Services for integration of Grids into different application scenarios

Implementation
Need for high-performance protocols Lightweight service instance implementation Effective sandboxing technologies

Semantics
No formal mechanism for expressing the behavior of individual services Mechanisms for analyzing, reasoning about the behavior of service compositions.

Scalability
Reputation management services service economy

Potrebbero piacerti anche