160 likes | 350 Views
Middleware for Grid Computing and the relationship to Middleware at large. ECE 1770 : Middleware Systems By: Sepehr (Sep) Seyedi Date: Thurs. January 23, 2003. What is Grid Computing?. Definition of the Grid Controlled sharing of geographically distributed resources Virtual Organization
E N D
Middleware for Grid Computing and therelationship to Middleware at large ECE 1770 : Middleware Systems By: Sepehr (Sep) Seyedi Date: Thurs. January 23, 2003
What is Grid Computing? • Definition of the Grid • Controlled sharing of geographically distributed resources • Virtual Organization • Analogy with power grids • Consistent, pervasive, dependable, and transparent access to electricity from different sources • Characteristics of a Grid • No centralized control center • Heterogeneity (of resources) • Scalability • Dynamic and Adaptable
Presented early to see relevance to the design methodologies in grid middleware Classifications of Applications/Uses: Computational Service Inherent part of ALL applications Data Service Scalable storage and access to distributed datasets Application Service Example: like web services Information Service Example: WWW portal Knowledge Service Example: data mining Applications
A Layered View of a Grid Grid Application • Available as APIs: global resource management: resource brokers, … • Available as APIs: global resource management: resource brokers, … • Computers, supercomputers, storage devices, instruments … User-level Middleware User-level Middleware Core Middleware Core Middleware Grid Fabric • Process management, co-allocation of resources, storage access, security, information registry and discovery, …. • Process management, co-allocation of resources, storage access, security, information registry and discovery, ….
Middleware Overview • Many organizations involved • ex: Global Grid Forum and Globus User-level & Core ASPECTS • Components • Security • Secure communications (SSL) • Distributed security infrastructure • Manage user credentials to selectingappropriate resources • Data Management • Transferring data throughout the grid and to users • Globus: GridFTP • Deals with high-performance, security and reliability • Information Management • Information DB about resources • Availability, capabilities, … • Resource Management
Resource Management ? Types of resources needed ? Application Resource Broker job Resource Broker Specifications of requests Resource Information Manager Query Multi-request Resource Co-allocator request request request Local Resource Manager Local Resource Manager Local Resource Manager Service/Resource Service/Resource Service/Resource Service/Resource Service/Resource Service/Resource
Open Grid Services Architecture (OGSA) • Global Grid Forum (www.gridforum.org) driving force behind OGSA • Promoting a standard and open architecture for interfaces to resources • Assuring proper uniform behavior of all resources and interoperability in a heterogeneous environment
The Grid Service • Implemented as special a Web service • Standardized behavior Standardized interfaces • Standard interfaces in terms of Web Services Description Language (WSDL) GSDL • Implementation independent • The grid service is able to live on any host environment that supports web services. • Examples: J2EE, .NET, C, Python, … which cover most existing operating systems
The Grid Service Interface • Grid Services must support: • Discovery • Registry: holds information about service instances • Dynamic Service (instance) creation • Factory: creates service instances • Lifetime management • Life length, termination of service in case of failure of resource • Notification • Manageability • Monitoring and managing service instances • Grid Services can also provide (custom) application services, like web services
How does a Grid Service work? • Client uses a Grid service interface • A grid service instance is created from a Factory with the help of a Registry • The grid service instances run with appropriate resources automatically allocated • New instances can allocated and destroyed dynamically, to benefit performance • Example: A web serving environment could dynamically allocate extra instances to provide consistent user response time
Database Service Database Service DB 1 DB n Simple Invocation Example User Invocation … … Factory Service Instance Service Instance Service Instance Real Services -EJB -Java Class Service Instance Service Instance Service Instance … Service Instance Service Instance Service Instance Registry Compute service provider
Hierarchical Use of Grid Services Collective Services Environment Simple Hosting Environment Virtual Hosting Environment
Relationship with Middleware at large • Distributed Computing • Grid computing itself can be thought of as a distributed system • Differs by providing a controlled, dynamic resource-sharing framework that addresses the requirements of a grid • Comparison to CORBA, J2EE, and .NET • Grid computing can be used as a building block in other middleware systems • ‘Too much middleware’ • Benefiting other middleware technologies • Web services is making advances due to grid services
Conclusions • Characteristics of a grid relevant to middleware • Common design methodologies in grid middleware • Grid Services and open standardization • New and existing middleware systems are beginning to adopt core grid middleware to become easily ‘grid-enhanced’
Thank You!Any Questions ?? CHECKOUT www.gridcomputing.com for more information on Grid Computing!