Professional Documents
Culture Documents
Course Contents
Grid Architecture Open Grid Services Architecture Resource and Service Management Building Reliable Clients and Services Instrumentation and Monitoring
Grid Architecture
Grid Architecture
Descriptive
Provide a common vocabulary for use when describing Grid systems
Guidance
Identify key areas in which services are required
Prescriptive
Define standard Intergrid protocols and APIs to facilitate creation of interoperable Grid systems and portable applications
Identity & authentication Authorization & policy Resource discovery Resource characterization Resource allocation (Co-)reservation, workflow Distributed algorithms Remote data access High-speed data transfer Performance guarantees Monitoring
Adaptation Intrusion detection Resource management Accounting & payment Fault management System evolution etc. etc.
10
distinct institutions
Resource discovery, access, reservation, allocation; authentication, authorization, policy; communication; fault detection and notification;
11
13
Address security and policy concerns of resource owners and users Are flexible enough to deal with many resource types and sharing modalities Scale to large number of resources, many participants, many program components Operate efficiently when dealing with large amounts of data & computation
14
Diverse components, policies, mechanisms E.g., standard notions of identity, means of communication, resource descriptions
E.g., one port/service/protocol for remote access to computing, not one per tool/app E.g., Certificate Authorities: expensive to run
15
16
Collective
Application
Resource
Connectivity Fabric
Transport Internet
Link
17
Connectivity APIs
Connectivity Protocols Local Access APIs and Protocols
Fabric Layer
18
Important Points
Layering here is conceptual, does not imply constraints on who can call what
Protocols/services/APIs/SDKs will, ideally, be largely self-contained Some things are fundamental: e.g., communication and security But, advantageous for higher-level functions to use common lower-level functions
19
Propose set of core services as basic infrastructure Use to construct high-level, domain-specific solutions Core
Design principles
Keep participation cost low Enable local control Support for adaptation IP hourglass model
services
Local OS
20
Hourglass
21
22
Just what you would expect: the diverse mix of resources that may be shared
Individual computers, Condor pools, file systems, archives, metadata catalogs, networks, sensors, etc., etc.
Few constraints on low-level technology: connectivity and resource level protocols form the neck in the hourglass Defined by interfaces not physical characteristics
23
Fabrics in general
24
Communication
25
26
Others emerging: Catalog access, code repository access, accounting, etc. All built on connectivity layer: GSI & IP
27
Replica catalogs Replication services Co-reservation and co-allocation services Workflow management services etc. Condor: www.cs.wisc.edu/condor
28
29
App
30
Collective Coherency control, replica selection, task management, (App) virtual data catalog, virtual data code catalog,
Collective Replica catalog, replica management, co-allocation, (Generic) certificate authorities, metadata catalogs,
Resource Access to data, access to computers, access to network performance data,
Communication, service discovery (DNS), Connect authentication, authorization, delegation Fabric Storage systems, clusters, networks, network caches,
31
32
34
Service-Oriented Architecture
Service: an entity that provides some capability to its clients by exchanging messages Service: defined by identifying sequences of specific message exchanges that cause the service to perform some operations
36
Service-oriented Architecture
Great flexibility in implementation and location: because all operations are defined in terms of message exchanges
SOAP: Simple Object Access Protocol
37
Service-oriented Architecture
Definition: a service-oriented architecture is one in which all entities are services, and thus any operation visible to the architecture is the result of message exchange
Message exchanges
Underlying infrastructure
services
38
Service-oriented architecture
Examples:
A storage service A data transfer service A troubleshooting service
low-level service
high-level service
39
40
Service-oriented architecture
41
42
Service-oriented architecture
A higher-level service behavior (data transfer) can be implemented via the composition of simpler behaviors (storage service)
Ease of composition is a second major design goal for OGSA
43
Service-oriented architecture
Similarity in protocols
44
Service-oriented architecture
By encapsulating service operations behind a common message-oriented service interface, service-oriented architecture encourages service virtualization, isolating users from details of service implantation and location
45
Service-oriented architecture
Virtualization
46
Service-oriented architecture
Virtualization
Everything is becoming virtual: virtual stores, virtual workspace, virtual organization, virtual networks, More than 60 million US workers work remotely
47
Service-oriented architecture
Interaction with a given service is facilitated by using a standard interface definition language (IDL), such as WSDL, to describe the services interfaces.
48
Service-oriented architecture
49
Service-oriented architecture
50
Service-oriented architecture
An IDL defines the operations supported by a service, by specifying the messages that a service consumes and produces An interface specification describes the messages the service expects but does not define what the service does in response to those messages (i.e., its behavior)
51
Service-oriented architecture
52
Service-oriented architecture
53
Service-oriented architecture
A well-defined interface definition language and a separation of concerns between service interface and implementation simplify the manipulation and management of services in four important respects: service discovery, composition, specialization, and interface extension.
54
Service-oriented architecture
Service discovery
55
Service-oriented architecture
Service discovery
Service Location Protocol (SLP) Jini: A service discovery architecture based on Java Universal Plug and Play (UPnP): Microsoft's solution to service discovery Salutation: A light weight network protocol independent service discovery protocol
56
Service-oriented architecture
Service composition
57
Service-oriented architecture
58
Service-oriented architecture
Interface extension: allow for specialized implementations to add additional, implementationspecific functionality, while still supporting the common A value-added extension interface
59
Objectives of OGSA
Manage resources across distributed heterogeneous platforms Deliver seamless quality of service Provide a common base for autonomic management solutions Define open, published interfaces Exploit industry standard integration technologies
60
61
software developers to model and interact with grid services by providing interfaces for discovery, life cycle, state management, creation and destruction, event notification, and reference management.
62
Requesting a service
63
resource allocation
service requester
service discovery
service instances
register service
service registry
64
OGSI and web services: OGSA architecture enhances Web services to accommodate requirements of the grid. These enhancements are specified in OGSI. Over time, it's expected that much of the OGSI functionality will be incorporated in Web services standards.
65
66
67
68
69
70
Naming
Because Grid services are dynamic and stateful, we need a way to distinguish one dynamically created service instance from another. Thus, we need a naming scheme for Grid service instances.
71
72
Naming
73
Naming
74
Naming
75
Naming
76
Naming
77
Naming
OGSI defines a two-level naming scheme for Grid service instances based on simple, abstract, long-lived Grid service handles (GSH). GSH can be mapped by handle resolution services to concrete but potentially short-lived Grid service references (GSR).
78
Naming
A GSH is a globally unique name that distinguishes that specific Grid service instance from all other Grid service instances that have existed, exist now, or will exist in the future. A GSH is represented using a Uniform Resource Identifier.
79
Naming
A GSH carries no protocol- or instance-specific information such as network address or supported protocol bindings. All other instance-specific information is encapsulated into a single abstraction called a Grid service reference (GSR).
80
Naming
Resolve (GSH) client time<T GSR1 time>T GSR2 handle resolver
service instance
migrate at time T
service instance
81
The introduction of transient service instances raises the issue of determining the services lifetime, that is, determining when a service can or should be terminated so that associated resources can be recovered.
82
83
OGSA addresses this problem through a soft-state approach in which Grid service instances are created with a specified lifetime. Three steps:
Negotiating an initial lifetime Explicit terminating Requesting a lifetime modification
84
85
86
87
88
Resv message
89
OGSA Implementations
Container (good for code reuse) demarshaling/decoding protocol termination adaptation layer
Grid service implementation
protocol termination
protocol termination
90
OGSA Implementations
91
OGSA Implementations
92
OGSA Implementations
93
Future Directions