Unit – II GRID SERVICES Introduction to Open Grid Services Architecture (OGSA) Motivation composition paradigm or building block approach represents the services, their interfaces, and the semantics/ behaviour and interaction of these services. Functionality Requirements Practical & Detailed view of OGSA/OGSI Data intensive grid service models OGSA services.
Unit – II What is the OGSA Standard? • Acronym for Open Grid Service Architecture • OGSA defines what Grid services are, what they should be capable of, what type of technologies they should be based on. • OGSA does not give a technical and detailed specification. It uses WSDL. • OGSA define how different components in grid interact • Open Grid Services Architecture (OGSA) is a set of standards defining the way in which information is shared among diverse components of large, heterogeneous grid systems. • In this context, a grid system is a scalable wide area network (WAN) that supports resource sharing and distribution.
Introduction - Main issues of “The Anatomy of the Grid” •
• •
Grid : – Resource sharing & coordinated problem solving in dynamic, multiinstitutional virtual organizations” • On-demand, ubiquitous access to • computing, data, and services Virtual Organization (VO) Nature of Grid Architecture – Interoperability – Protocol – Services – API (Application Programming Interface) – SDK (Software Development Kit)
Introduction to Open Grid Services Architecture (OGSA) • OGSA defines what Grid services are, what they should be capable of, what type of technologies they should be based on. • OGSA does not give a technical and detailed specification. It uses WSDL. • Defines fundamental (WSDL) interfaces and behaviours that define a Grid Service‹ – Required + optional interfaces = WS “profile” – ‹A unifying framework for interoperability & establishment of total system properties
OGSA Design Principles • Service orientation to virtualized resources – Everything is a service
• From Web services – Standard interface definition mechanisms: multiple protocol bindings, local/remote transparency
• From Grids – Service semantics, reliability and security models – Lifecycle management, discovery, other services
• Multiple “hosting environments” – C, J2EE, .NET, …
Building an Open Grid
Grid and Open Standards
Open Grid Services Architecture • From Web Services • Standard interface definition mechanisms – Interface and implementation (multiple protocol bindings) – Local/remote transparency – Language interoperability – Service semantics • From Grids – Lifecycle management – Reliability and security models – Discovery – Further services: resource management, authorization, etc.
• Open Grid Services Architecture – Objective: – To integrate services across - distributed - heterogeneous - dynamic virtual organizations – Solution: - standard mechanisms for creation, naming, discovery - location transparency, multiple protocol binding integration with hosting environment
OGSA Architecture
Architecture of OGSA • Comprised of 4 main layers Physical and Logical Resources Layer Web Service Layer OGSA Architected Grid Services Layer Grid Applications Layer
OGSA Architecture – Physical and Logical Resources Layer • Physical resources are: servers, storage, network • Logical resources manage physical resources • Examples of logical resources: database managers, workflow managers
OGSA Architecture – Web Services Layer • Web service is software available online that could interact with other software using XML • Consists of Open Grid Services Infrastructure (OGSI) sub-layer which specifies grid services and provide consistent way to interact with grid services • Also extends Web Service Capabilities Consists of 5 interfaces: 1. Factory: provide way for creation of new grid services 2. Life Cycle: Manages grid service life cycles 3. State Management: Manage grid service states 4. Service Groups: collection of indexed grid services 5. Notification: Manages notification between services & resources
OGSA Architecture – OGSA Architected Services - Layer •
Classified into 3 service categories 1. Grid Core Services 2. Grid Program Execution Services 3. Grid Data Services
Grid Core Services Composed of 4 main types of services: 1. Service Management: assist in installation, maintenance, & troubleshooting tasks in grid system 2. Service Communication: include functions that allow grid services to communicate 3. Policy Services: Provide framework for creation, administration & management of policies for system operation 4. Security Services: provide authentication & authorization mechanisms to ensure systems interoperate securely
Grid Program Execution Services • Supports unique grid systems in high performance computing, collaboration, parallelism • Support virtualization of resource processing
OGSA Architected Services – Grid Data Services • Support data virtualization • Provide mechanism for access to distributed resources such as databases, files
OGSA Architecture – OGSA Architected Services - Layer
Grid Applications Layer • This layer comprise of applications that use the grid architected services
OGSA Platform
Principal elements of OGSA Platform • Three Core elements are – Open Grid Services Infrastructure (OGSI) – OGSA Platform Interfaces – OGSA Platform Models • OGSA Platform Profiles – Environment, domain-specific supplements: • Protocol bindings • Hosting environment bindings • Sets of domain-specific services
Open Grid Services Infrastructure (OGSI) OGSI = Grid Technologies + Web Services • Gives a formal and technical specification of what a grid service is. • It is a formal and technical specification of the concepts described in OGSA. • In OGSI everything is represented as a Grid service. • Service: a network-enabled entity that provides some capabilities through the exchange of messages. • The Globus Toolkit 3 is an implementation of OGSI. • Some other implementations are OGSI::Lite (Perl)1 and the UNICORE OGSA demonstrator2 from the EU GRIP project. • OGSI specification defines grid services and builds upon web services.
Open Grid Services Infrastructure (OGSI) – Contd. • OGSI creates an extension model for WSDL called GWSDL (Grid WSDL). The reason is: • Interface inheritance • Service Data (for expressing state information)
• Components: – Lifecycle - Manages grid service life cycles – State management - Manage grid service states – Service Groups - collection of indexed grid services – Factory - provide way for creation of new grid services – Notification - Manages notification between services & resources – HandleMap
OGSI: Standard Web Services Layer 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
Factories
WSDL Conventions & Extensions • portType (standard WSDL) – Define an interface: a set of related operations • serviceType(extensibility element) – List of port types: enables aggregation • serviceImplementation(extensibility element) – Represents actual code • service (standard WSDL) – instanceOf extension: map descr.->instance • compatibilityAssertion ( extensibility element) – portType, serviceType, serviceImplementation
OGSI Key Features – Grid Service description and instances – Service state, metadata and introspection – Naming and name resolution – Fault model – Lifecycle – Service group
Motivation • An important motivation for OGSA is the composition paradigm or building block approach, where a set of capabilities or functions is built or adapted as required, from a minimalist set of initial capabilities, to meet a need. • OGSA represents the services, their interfaces, and the semantics/behavior and interaction of these services. • Provide an extensible framework for easily integrating data resources on to Grids. • Provide for data discovery from previously unknown locations. • Allow different types of data models from distributed data resources to be easily integrated to Grid applications. • Allow data to be accessed through uniform interfaces. • Facilitate the integration of data from various sources to obtain the required information.
Functional or Technical Requirements • Dynamic formation and management of virtual organizations • Online negotiation of access to services: who, what, why, when, how • Configuration of applications and systems able to deliver multiple qualities of service • Autonomic management of distributed infrastructures, services, and applications
Key functional requirements in Grid Computing • • • •
1.Resource Management 2.Security Management 3.Data Management 4.Services Management
• 1.Resource Management – The ability to keep track, allot and remove grid resources • 2.Security Management – The ability to ensure authenticated and authorized access to grid resources, from the users in the external world. • 3.Data Management – The ability of transporting , cleaning , parcelling and processing the data between any two nodes in the grid, without the knowledge of the user. • 4.Services Management – The ability of the users and applications to query and obtain response from the grid efficiently.
• The components are – numerous – owned and managed by different, potentially mutually distrustful organisations and individuals – may be potentially faulty – have different security requirements and policies – heterogeneous – connected by heterogeneous, multilevel networks – have different resource management policies – are likely to be geographically separated
OGSI • Most important components: – Grid Service – Factory – Registry – HandleMap
The Grid Service • A WSDL-defined service that conforms to a set of conventions relating to its interface and behaviors. • Description composed of two parts: -Grid service description -Describes a client’s interaction with service instances:syntax and semantics (PortType) - Can be used by any number of Grid service instances -Grid service instance • • •
Embodies a state Has one or more unique Grid Service Handles (GSHs) Has one or more Grid Service References (GSRs)
• • • • •
typed (characterized by the offered capability) interfaces (set of operations) invocation (by sequences of message exchange) created/destroyed (dynamically) GSH (Grid Service Handle): globally unique name and Shows the location of the service • GSR (Grid Service Reference): Describes how to communicate with the service and abstraction for e.g. protocol binding, network address, etc.
Factories: Creating Transient Services Factory = Factory interface + implemented service CreateService operation: - creates a requested Grid service - returns a GSH + an initial GSR
Handles and References • Grid Service Handle(GSH): reference for service instance “forever” •Grid Service Reference ( GSR ): changes during lifetime HandleMap: handle-to-reference mapper -takes a GSH -returns a valid GSR
Registry and Notification Registry: registry interface + service data elements (info about GSH) •Notification •Subscribe operation •NotificationSource interface NotificationSink: message (“keep alive”) “push” model (FindServiceData “pull” model) Semantics: protocol binding property e.g. SOAP/HTTP protocol
Client runtime architecture
GSH Resolving
Open Grid Service Infrastructure ( Practical View )
Services in the Web and the Grid OGSA, OGSI, GT3
OGSA, WSRF
OGSA, WSRF, GT4
Data intensive grid service models Applications in the grid are normally grouped into two categories • Computation-intensive and Data intensive • Data intensive applications deals with massive amounts of data. The grid system must specially designed to discover, transfer and manipulate the massive data sets. • Transferring the massive data sets is a time consuming task. • Data access method is also known as caching, which is often applied to enhance data efficiency in a grid environment. • By replicating the same data block and scattering them in multiple regions in a grid, users can access the same data with locality of references
Data intensive grid service models
49
• Replication strategies determine when and where to create a replica of the data. • The strategies of replications can be classified into dynamic and static Static method • The locations and number of replicas are determined in advance and will not be modified. • Replication operation require little overhead • Static strategic cannot adapt to changes in demand, bandwidth and storage variability • Optimization is required to determine the location and number of data replicas. Dynamic strategies • Dynamic strategies can adjust locations and number of data replicas according to change in conditions • Frequent data moving operations can result in much more overhead the static strategies • Optimization may be determined based on whether the data replica is being created, deleted or moved. • The most common replication include preserving locality, minimizing update Dr Gnanasekaran Thangavel costs and maximizing profits . 3/23/2019
Grid data Access models In general there are four access models for organizing a data grid as listed here
1.Monadic method 2.Hierarchical model
3.Federation model 4.Hybrid model 50
Dr Gnanasekaran Thangavel
3/23/2019
Monadic method • This is a centralized data repository model. All data is saved in central data repository. • When users want to access some data they have no submit request directly to the central repository. • No data is replicated for preserving data locality. Dr Gnanasekaran Thangavel 51
3/23/2019
Federation model • It is suited for designing a data grid with multiple source of data supplies. • It is also known as a mesh model • The data is shared the data and items are owned and controlled by their original owners. • Only authenticated users are authorized to request data from any data source. • This mesh model cost the most when the number of grid intuitions becomes very large
Hybrid model • This model combines the best features of the hierarchical and mesh models. • Traditional data transfer technology such as FTP applies for networks with lower bandwidth. • High bandwidth are exploited by high speed data transfer tools such as GridFTP developed with Globus library. • The cost of hybrid model can be traded off between the two extreme models of hierarchical and mesh-connected grids.
Parallel versus Striped Data Transfers • Parallel data transfer opens multiple data streams for passing subdivided segments of a file simultaneously. Although the speed of each stream is same as in sequential streaming, the total time to move data in all streams can be significantly reduced compared to FTP transfer. • Striped data transfer a data objects is partitioned into a number of sections and each section is placed in an individual site in a data grid. When a user requests this piece of data, a data stream is created for each site in a data gird. When user requests this piece of data, data stream is created for each site, and all the sections of data objects ate transected simultaneously.
Grid Services and OGSA • Facilitate use and management of resources across distributed, heterogeneous environments • Deliver seamless QoS • Define open, published interfaces in order to provide interoperability of diverse resources • Exploit industry-standard integration technologies • Develop standards that achieve interoperability • Integrate, virtualize, and manage services and resources in a distributed, heterogeneous environment • Deliver functionality as loosely coupled, interacting services aligned with industry- accepted web service standards
• OGSA services fall into seven broad areas, defined in terms of capabilities frequently required in a grid scenario. Figure shows the OGSA architecture. These services are summarized as follows:
OGSA services - seven broad areas 1. 2.
3.
Infrastructure Services Refer to a set of common functionalities, such as naming, typically required by higher level services. Execution Management Services Concerned with issues such as starting and managing tasks, including placement, provisioning, and life-cycle management. Tasks may range from simple j obs to complex workflows or composite services. Data Management Services Provide functionality to move data to where it is needed, maintain replicated copies, run queries and updates, and transform data into new formats. These services must handle issues such as data consistency, persistency, and integrity. An OGSA data service is a web service that implements one or more of the base data interfaces to enable access to, and management of, data resources in a distributed environment. The three base interfaces, Da ta Access, Da ta Fa ctory, and Da ta Ma na gement, define basic operations for representing, accessing, creating, and managing data.
OGSA services - seven broad areas 4.
5.
Resource Management Services Provide management capabilities for grid resources: management of the resources themselves, management of the resources as grid components, and management of the OGSA infrastructure. For example, resources can be monitored, reserved, deployed, and configured as needed to meet application QoS requirements. I t also requires an information model (semantics) and data model (representation) of the grid resources and services. Security Services Facilitate the enforcement of security-related policies within a (virtual) organization, and supports safe resource sharing. Authentication, authorization, and integrity assurance are essential functionalities provided by these services.
OGSA services - seven broad areas 6. Information Services Provide efficient production of, and access to, information about the grid and its constituent resources. The term “information” refers to dynamic data or events used for status monitoring; relatively static data used for discovery; and any data that is logged. Troubleshooting is j ust one of the possible uses for information provided by these services. 7. Self-Management Services Support service-level attainment for a set of services (or resources), with as much automation as possible, to reduce the costs and complexity of managing the system. These services are essential in addressing the increasing complexity of owning and operating an I T infrastructure.
WSRF • 5 normative WSRF specifications: – WS-ResourceProperties - properties of resources – WS-ResourceLifetime - WS-Resource based on timebased scheduled. – WS-RenewableReferences - Web service endpoint reference (WS-Addressing) can be renewed in the event the addressing becomes invalid or stale – WS-ServiceGroup- heterogeneous by-reference collections of Web services (WS-Resources) – WS-BaseFault- fault reporting use of an XML Schema – WS-Notification family of specifications-Standard approaches to notification of changes
OGSA Service Model • System comprises (a typically few) persistent services & (potentially many) transient services – Everything is a service
• OGSA defines basic behaviors of services: fundamental semantics, life-cycle, etc. – More than defining WSDL wrappers