tecnologia dei servizi grid e cloud computing - lezione 002a 0 lezione 2a - 14 ottobre 2009 il...

26
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 Veronesi [email protected], [email protected] http://www.cnaf.infn.it/~pveronesi/unife/ Università degli Studi di Bari – Corso di Laurea Specialistica in Informatic “Tecnologia dei Servizi “Grid e cloud computing” A.A. 2009/2010 Giorgio Pietro Maggi [email protected], http://www.ba.infn.it/~maggi

Upload: autumn-hollis

Post on 27-Mar-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 2: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 2

Grid: the “common market”(definitions and implementations)

Page 3: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

Tecnologia dei Servizi “Grid e cloud computing” - Lezione 002a 3

Power Grid inspiration: seamlessly delivering electricity as a utility to users

Page 4: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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.

Page 5: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 6: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 7: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 8: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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.

Page 9: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 10: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 11: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 12: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 13: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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)

Page 14: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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.

Page 15: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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)

Page 16: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 17: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 18: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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)

Page 19: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 20: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 21: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 22: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 23: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 24: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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

Page 25: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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)

Page 26: Tecnologia dei Servizi Grid e cloud computing - Lezione 002a 0 Lezione 2a - 14 ottobre 2009 Il materiale didattico usato in questo corso è stato mutuato

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