Upload
autumn-hollis
View
222
Download
0
Embed Size (px)
Citation preview
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 1
Lezione 2a - 14 ottobre 2009
Il materiale didattico usato in questo corso è stato mutuato da quello utilizzato da Paolo Veronesi per il corso di Griglie Computazionali per la Laurea Specialistica in Informatica tenuto nell’anno accademico 2008/09 presso l’Università degli Studi di Ferrara.
Paolo [email protected], [email protected]://www.cnaf.infn.it/~pveronesi/unife/
Università degli Studi di Bari – Corso di Laurea Specialistica in Informatica
“Tecnologia dei Servizi “Grid e cloud computing” A.A. 2009/2010
Giorgio Pietro Maggi [email protected], http://www.ba.infn.it/~maggi
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 2
Grid: the “common market”(definitions and implementations)
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 3
Power Grid inspiration: seamlessly delivering electricity as a utility to users
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 4
Grid history
Name “Grid” chosen by analogy with electric power grid (Foster and Kesselman 1997)
Vision: plug-in computer for processing power just like plugging in toaster for electricity.
Concept has been around for decades (distributed computing, metacomputing)
Key difference with the Grid is to realise the vision on a global scale.
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 5
GRID
MIDDLEWARE
01011010110
-CPU - Memory-Disc - Input/Output
, the present, …The past
The Grid Revolution
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 6
…the future: The Grid!
virtual services
virtual
services
virtual
services
virtual services
virtual s
ervice
s
virtual s
ervices
The Grid Revolution
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 7
GRID
MIDDLEWARE
Visualising
Workstation
Mobile Access
Supercomputer, PC-Cluster
Data-storage, Sensors, Experiments
Internet, networks
The Grid Metaphor
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 8
The Grid Problem Purpose:
flexible, secure, coordinated resource sharing among dynamic collections of individuals, institutions, and resources
From “The Anatomy of the Grid: Enabling Scalable Virtual Organizations”
enable “groups of users (virtual organizations)” to share geographically distributed resources as they pursue common goals – assuming the absence of…
central location, central control, omniscience, existing trust relationships.
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 9
Virtual Organizations Virtual organization (VO): a set of individuals and/or institutions
identified by the same set of rules, which define: the resources shared (what); the individual users allowed to share (who); conditions under which sharing occurs (how).
VOs represent “community overlays” on classic organization structures. They can be large or small, static or dynamic.
VO membership: Single users and users of the same institution can be members of
different VOs
u1
u2
u3
u5
u9
VO3VO2VO1
u8
u4
u7
u6
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 10
Virtual Organizations (cont)
Examples: An industrial consortium Students from different university departments using
computing power for their simulation projects physicists from different research institutions involved in
a the same experiment implementation, using the Grid for analysis of the data generated by the experiment
Astronomers from various research institutes analyzing data gathered by multiple telescopes all over the world
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 11
Authentication and authorization
Resource sharing requires owners to make resources available, subject to contraints on when, where and what can be done
This requires: Policies and mechanisms to express them in Policy
Decision Points Authentication: the establishment of the identity of a
consumer Authorization: determining whether an operation is
consistent with resource sharing rules applicable to the consumer at Policy Enforcement Points
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 12
Some Important Definitions
1. Grid Computing2. Resource3. Protocol4. Network enabled service5. Application Programmer Interface (API)6. Software Development Kit (SDK)7. Syntax
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 13
1. Grid Computing (1/4)
Early definition: “We will probably see the spread of computer utilities, which, like present electric
and telephone utilities, will service individual homes and offices across the country” (Len Kleinrock, 1969)
The Grid:
“A computational Grid is a hardware and software infrastructure that provides dependable, consistent, pervasive and inexpensive access to high-end comptational capabilities” (I.Foster, C.Kesselman: The Grid: Blueprint for a New Computing Infrastructure”, 1998)
and: “because of the focus on dynamic cross-organization sharing, Grid technologies complement rather than compete with esisting distributed computing technologies” (I.Foster et al., The Anatomy of the Grid, 2001)
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 14
1. Grid computing: characteristics (2/4)
The three fundamental properties of Grid computing:1. Large-scale coordinated management of resources belonging to
different administrative domains (multi-domain vs single domain) Grid computing involves multiple management systems
2. Standard, open, multi-purpose protocols and interfaces that provide a range of services (standard vs proprietary)
Grid computing supports heterogeneous user applications
3. Delivery of complex Quality of Service (QoS): Grid computing allows its constituent resources to be used in a coodinated fashion to deliver various types of QoS, such as respons time, throughput, avaiability, reliability, security, etc.
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 15
1. Grid Computing (3/4)
Examples of non-Grid systems: Cluster management systems on a parallel computer
or on a Local Area Network Sun Grid Engine Load Sharing Facility (LSF, by Platform) Portable Bach System (PBS, by Veridian)
The World Wide Web: Open Based on general-purpose protocols accessing distributed
resources
Complete kwowledge of system state and user’s requests centralized control
No coordinated use of independent resources (no protocols for negotiation and sharing, yet)
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 16
Grid as a multi-institutional infrastructure
Intra-site resource
local credentialGrid-level credential
Inter-site seamless collaboration
Virtual organization
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 17
17
The three main capabilities of a Grid middleware
Virtualization of users and resources
Site A Site B
Grid system
Mapping virtual resources to physical resources
Mapping virtual users to physical users
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 18
1. Grid Computing (4/4)
The importance of standardization:
The Grid: open, general-purpose and using standard protocols
A Grid: no standardization and interoperability between services –
current situation
Similarly: an Internet (based on proprietary protocols, as in the early ages of networking) vs the Internet (based on the IP protocol)
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 19
2. Resource
An entity that is to be shared E.g., computers, storage, data, software
Does not have to be a physical entity E.g., Condor pool, distributed file system, …
Defined in terms of interfaces, not devices E.g. scheduler such as LSF and PBS define a
compute resource Open/close/read/write define access to a distributed
file system, e.g. NFS, AFS, DFS
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 20
3. Grid Protocol
A formal description of message formats and a set of rules for message exchange, which defines one of the basic mechanisms of Grid Computing
Rules may define sequence of message exchanges Protocol may define state-change in end-points triggered by a given sequence of
exchanged messages, e.g., file system state change Protocols, some examples:
Management of credentials and policies in case of multi-domain resources Secure remote access Co-allocation of multiple resources Information query protocols Data management protocols
Good protocols are designed to do one thing; for this reason, the Grid architecture relies on layering of protocols. i.e. through the composition of multiple, simple protocols.
Examples of protocols IP, TCP, Transport Layer Security (was Secure Socket Layer), HTTP, Kerberos
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 21
4. Network Enabled Services Services are defined by:
the protocol spoken, as protocols allow interaction between different services
the behaviour implemented.
Examples: Resource access service, Resource discovery, Co-scheduling, Data
replication, etc.
Services hide the complexity of resource implementations Examples: FTP and Web servers
Web Server
IP Protocol
TCP Protocol
Transport Layer Security Protocol
HTTP Protocol
FTP Server
IP Protocol
TCP Protocol
FTP Protocol
Telnet Protocol
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 22
5. Application Programming Interface (API) A specification for a set of routines to facilitate
application development Refers to definition, not implementation (several
implementations of the same API are possible) APIs are a complement of protocols, as without
protocols interoperability between APIs would be solved only case by case with specific implementations
Specification of an API is often language-specific Routine name, number, order and type of arguments;
mapping to language constructs Behavior or function of routine
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 23
6. Software Development Kit
A particular instantiation of an API
Software Development Kits consist of libraries and tools Provides implementation of API specification
One API can have multiple SDKs
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 24
7. Syntax
Rules for encoding information, e.g. XML, Condor ClassAds, Globus Resource Specification
Language X.509 certificate format (RFC 2459)
Distinct from protocols One syntax may be used by many protocols (e.g., XML) and
be useful for several purposes
Syntaxes may be layered E.g., HTML XML ASCII Important to understand layerings when comparing or
evaluating syntaxes
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 25
APIs and Protocols are Both Important
Standard APIs/SDKs are important They enable application portability But without standard protocols, interoperability is hard
(every SDK speaks every protocol? infeasible) Standard protocols are important
Enable cross-site interoperability Enable shared infrastructure But without standard APIs/SDKs, application portability
is hard (different platforms access protocols in different ways)
Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 26
A Protocol can have Multiple APIs TCP/IP APIs: BSD sockets, Winsock, … The protocol provides interoperability: programs
using different APIs can exchange information I don’t need to know remote user’s API
TCP/IP Protocol: Reliable byte streams
WinSock API Berkeley Sockets API
Application Application