Grid Computing Architectures
Noman Islam
References
•
‘The Anatomy of the Grid: Enabling Scalable
Virtual Organizations’
, I. Foster, C. Kesselman,
S. Tuecke. International J. Supercomputer
Applications
• ‘
The Physiology of the Grid: An Open Grid
Services Architecture for Distributed Systems
Integration
’, I. Foster, C. Kesselman, J. Nick, S.
Tuecke, Open Grid Service Infrastructure
•
‘The Anatomy of the Grid: Enabling
Scalable Virtual Organizations’
, I. Foster,
C. Kesselman, S. Tuecke. International J.
Supercomputer Applications
– Justifies the need for Grid Computing
Technology
– Presents an open generalized Grid
Computing Architecture
Introduction to Grid
• Coordinated resource sharing and problem
solving in dynamic, multi-institutional virtual
organizations
• Current Distributed Computing Environments
doesn’t address VO requirements well:
– Internet – addresses only communication
– EJB, CORBA – resource sharing with in single organization
Fabric Layer
• Implements the local, resource specific operations that occur on specific resource
• At a minimum enquiry and resource management mechanisms
– Computational Resources – start/stop/monitor programs, enquire about hardware /software characteristics, state information (current queue state etc.)
– Storage Resources - putting / getting files, enquire about available space et.
– Network Resources – enquire about network characteristics / load, QoS control
– Code Repositories – mechanism for managing versioned source and object code
Connectivity Layer
• Core communication and authentication
protocols required for Grid-specific
network transactions
• Communication requirements include
transport, routing, and naming
• The
Internet (IP and ICMP), transport
(TCP, UDP), and application (DNS,
Connectivity Layer – contd…
• Many of the security standards developed within the context of the Internet protocol suite are applicable
– Single sign on. Users must be able to “log on” (authenticate) just once and then have access to multiple Grid resources defined in the Fabric layer, without further user intervention
– Delegation. A user must be able to endow a program with the ability to run on that user’s behalf, so that the program is able to access the resources on which the user is authorized
– Integration with various local security solutions like Kerberos don’t ask for realistically wholesale
Resource Layer
• Define protocols for the secure negotiation,
initiation, monitoring, control, accounting, and
payment of sharing operations on individual
resources
– Information protocols - used to obtain information about the structure and state of a resource
– Management protocols - used to negotiate access to a shared resource, specifying, for example, resource requirements (including advanced reservation and quality of service) and the operations to be
Collective Layer
• Are not associated with anyone specific resource but rather are global in nature and capture interactions across collections of resources
• They can implement a wide variety of sharing behaviors without placing new requirements on the resources being shared
– Directory services
– Data replication services
– Monitoring and Diagnostics services - support the monitoring of VO resources for failure, adversarial attack
– Software Discovery Services discover and select the best
Application Layer
• Applications are constructed in terms of,
and by calling upon, services defined at
any layer
• What is labeled “applications” and show in
a single layer may in practice call upon
Perspectives on Grid
•
“The Grid is a next-generation Internet”
– “The Grid” is not an alternative to “the
Internet”: it is rather a set of additional
Perspectives on Grid
•
“The Grid is a source of free cycles”
– Grid computing does not imply unrestricted access to resources. Grid computing is about controlled sharing. Resource owners will typically want to enforce
policies that constrain access according to group membership, ability to pay, and so forth. Hence,
accounting is important, and a Grid architecture must incorporate resource and collective protocols for
Perspectives on Grid
•
“The Grid requires a distributed operating
system”
– Grid software should define the operating system
services to be installed on every participating system providing transparency However, we this perspective is inconsistent with the primary goals of broad
deployment and interoperability. We argue that the
appropriate model is rather the Internet Protocol suite. The tremendous physical and administrative
heterogeneities encountered in Grid environments means that the traditional transparencies are
Perspectives on Grid
•
The Grid requires new programming models
– Programming in Grid environments introduces
challenges that are not encountered in sequential (or parallel) computers, such as multiple administrative domains, new failure modes, and large variations in performance. Abstraction and Encapsulation can
reduce complexity and improve reliability. A developer who believes that all Grid resources should be
presented to users as objects needs simply to
Perspectives on Grid
•
The Grid makes high-performance computers
superfluous
– The hundreds, thousands, or even millions of processors that may be accessible within a VO
represent a significant source of computational power, if they can be harnessed in a useful fashion. This
does not imply, however that traditional
• ‘
The Physiology of the Grid: An Open Grid
Services Architecture for Distributed
Systems Integration
’, I. Foster, C.
Kesselman, J. Nick, S. Tuecke, Open Grid
Service Infrastructure Working Group,
Global Grid Forum, June 22, 2002
Introduction to OGSA
• OGSA is a SOA architecture for Grid and is the
creation of the GlobusAlliance (
http://
www.globus.org/
), a community of organizations
and individuals dedicated to advancing grid
technologies
Introduction to Web Services
• In its simplest definition, Web services is an
instantiation of a Service-Oriented Architecture
(SOA) where all of the following apply:
– Service interfaces are described using Web Services Description Language WSDL).
– Payload is transmitted using Simple Object Access Control over HTTP (Hypertext Transfer Protocol). – Universal Description Discovery and Integration
Introduction to WebServices
• The growing success of Web services is due to a number of factors, including those below
– Systems can interact with one another dynamically via standard Internet technologies.
– Services are built once and reused many times.
– Services can be implemented in any programming language.
– Service consumers do not need to worry about firewalls because communication is carried over HTTP.
Introduction to WSDL
• Web Services Description Language is the
standard format for describing a web service. A
WSDL definition describes how to access a web
service and what operations it will perform.
• WSDL document describes a web service using
these major elements
– <portType> The operations performed by the web service
– <message> The messages used by the web service – <types> The data types used by the web service
WSDL Example
<message name="getTermRequest"> <part name="term" type="xs:string"/> </message>
<message name="getTermResponse"> <part name="value" type="xs:string"/> </message>
<portType name="glossaryTerms"> <operation name="getTerm">
<input message="getTermRequest"/> <output message="getTermResponse"/> </operation>
</portType>
Introduction to SOAP
• The Simple Object Access Protocol
(SOAP)
– is a simple enveloping mechanism for XML
payloads that defines a remote procedure call
(RPC)
– SOAP is independent of the underlying
Introduction to SOAP contd…
• A SOAP message is an ordinary XML document
containing the following elements:
– A required Envelope element that identifies the XML document as a SOAP message
– An optional Header element that contains header information
– A required Body element that contains call and response information
– An optional Fault element that provides information about errors that occurred while processing the
An Example SOAP Message
<?xml version="1.0"?> <soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Body>
<m:GetPrice xmlns:m="http://www.w3schools.com/prices"> <m:Item>Apples</m:Item>
</m:GetPrice> </soap:Body>
UDDI
• UDDI (Universal Description, Discovery
and Integration Service) is an XML-based
distributed directory that enables
businesses to list themselves, as well as
dynamically discover each other
Other Standards
• The WS-Inspection specification provides
an XML format for assisting in the
inspection of a site for available services
and a set of rules for how inspection
related information should be made
available for consumption
OGSA
• The Open Grid Services Architecture
(OGSA) describes an architecture for a
service-oriented grid computing
environment for business and scientific
use
OGSA
• OGSA defines the mechanisms for creating, managing, and exchanging information among entities, called Grid Services
• The Globus Toolkit 4.0 is an open source project that can be downloaded from the Globus Alliance Web site • It provides a set of OGSA capabilities based on WSRF
(WS-Resource Framework)
• The WSRF is a set of Web Service specifications being developed by the OASIS organization that, taken
OGSA contd…
• OGSA represents everything as a Grid
Service
• Grid Services are stateful transient Web
Service instances that are discovered and
created dynamically to form larger
OGSA – contd…
• A Grid Service conforms to a set of conventions, expressed as WSDL (Web Service Description
Language) interfaces, extensions, and behaviors, for such purposes as:
– Discovery: mechanisms for discovering available services and for determining the characteristics of those services so that they can be invoked appropriately
• Registery interface
• GridService interface’s FindServiceData
– Dynamic service creation: mechanisms for dynamically creating and managing new service instances – Factory Interface’s
OGSA contd…
– Lifetime management: mechanisms for
reclaiming services and state in the case of
failed operations
• SoftState approach
– Notification: mechanisms for asynchronously
notifying Grid Service clients of changes in
state