11
Cloud Computing Frédéric Desprez LIP ENS Lyon/INRIA Grenoble Rhône-Alpes EPI GRAAL 25/03/2010 Introduction La transparence d’utilisation des grandes plates-formes distribuées est primordiale Il est moins coûteux de louer de la capacité de calcul et de stockage que de monter un centre de calcul Un long historique du calcul distribué à plus ou moins grande échelle Des supercalculateurs et grappes aux Clouds en passant par les grilles Des besoins applicatifs de plus en plus importants et variés Explosion du nombre et du volume de données

100325 Intro Intech

Embed Size (px)

DESCRIPTION

introduction to the cloud

Citation preview

Page 1: 100325 Intro Intech

Cloud Computing

Frédéric Desprez LIP ENS Lyon/INRIA Grenoble Rhône-Alpes

EPI GRAAL

25/03/2010!

Introduction •! La transparence d’utilisation des grandes plates-formes

distribuées est primordiale

•! Il est moins coûteux de louer de la capacité de calcul et de

stockage que de monter un centre de calcul

•! Un long historique du calcul distribué à plus ou moins grande

échelle

•! Des supercalculateurs et grappes aux Clouds en passant par les

grilles

•! Des besoins applicatifs de plus en plus importants et variés

•! Explosion du nombre et du volume de données

Page 2: 100325 Intro Intech

Qu’est-ce que le Cloud Computing ?

Un paradigme de calcul distribué émergeant dans lequel les

données et les services sont disponibles dans des data centers

extensibles et peuvent être accédés de manière transparente

depuis des appareils (ordinateurs, téléphones, grappes, …)

connectés par Internet

Credit: IBM Corp.

Cloud Computing

Cloud Computing Né de

•! La profusion de ressources (data centers)

•! Une technologie de virtualisation mature

•! Des communications à haut débit

Deux concepts clés

•! Effectuer des opérations sur 1000x plus de données ne doit pas être 1000x plus dur

•! Les cycles et les octets sont la nouvelle matière première, pas le matériel

•! IaaS: Infrastructure as a Service

Le Cloud Computing c’est

•! Fournir des services sur des machines virtuelles

allouées sur des plates-formes de grandes tailles

•! Une méthode pour résoudre les problèmes

d’extensibilité et de disponibilité pour les grandes applications

•! Le calcul distribué (enfin) démocratisé

Page 3: 100325 Intro Intech

Une vue à 10000 pieds

SLAs!

Services web!

Virtualisation!

Cloud Computing •! Plusieurs modes d’utilisation

•! Infrastructure as a Service (IaaS)

•! Le matériel est fourni sous forme de machines virtuelles sur

lesquelles on installe son image disque

•! Amazon EC2, Rackspace, GoGRID, …

•! Platform as a Service (PaaS)

•! On peut développer ses propres applications en utilisant les services

fournis

•! Google Apps, Windows Azure, Amazon S3, IBM, …

•! Software as a Service (SaaS)

•! Des applications entières sont disponibles à distance

•! Googledocs, Facebook, …

Page 4: 100325 Intro Intech

Infrastructure as a Service

Avoir accès à la demande à un grand nombre de ressources

virtualisées

•! Dynamicité, élasticité

•! Paiement à la consommation

Concept de virtualisation

•! Le système d’exploitation n’est plus central et est un logiciel comme un

autre !

•! Le concept de machines virtuelles consiste à recevoir des instances de

systèmes.

•! Les ressources physiques sont partagées par plusieurs machines

virtuelles

Virtualisation

N0

VM0 VM1 VM2

Noeud de calcul

Machines virtuelles s’exécutant sur un nœud de calcul

Page 5: 100325 Intro Intech

Virtualisation

Propriétés !! Isolement

? VM2 VM1

simulation Apache

web server

Machine virtuelle

Machine virtuelle

Virtualisation

N0

Noeud de calcul

VM0

N1

Noeud de calcul

VM0

Propriétés !! Isolement

!! Portabilité

Machine virtuelle

Machine virtuelle

Page 6: 100325 Intro Intech

Virtualisation

VM0

Propriétés !! Isolement

!! Portabilité

!! Suspend/restart

Machine virtuelle

Amazon Elastic Compute Cloud

A set of APIs and business models which give developer-level access to Amazon’s infrastructure and content:!

" ! Data As A Service " ! Amazon E-Commerce Service

" ! Amazon Historical Pricing

" ! Search As A Service " ! Alexa Web Information Service

" ! Alexa Top Sites

" ! Alexa Site Thumbnail

" ! Alexa Web Search Platform " ! Infrastructure As A

Service " ! Amazon Simple Queue Service

" ! Amazon Simple Storage Service

" ! Amazon Elastic Compute Cloud

" ! People As A Service " ! Amazon Mechanical Trunk

Credits: Jeff Barr, Amazon

Page 7: 100325 Intro Intech

Amazon Web Services

!"#$%#&'(

)*+$,&'( -$."/0&'(

-#"12$(!+34%*&(

!#+%5(6-!78(

)934#&()*+'"0&((

)&':9$&(6);8(

)934#&(<%&%&(

)&':9$&(6)<)8(

Credits: Jeff Barr, Amazon

Amazon Elastic Compute Cloud

=>?@(4&'(1&':&'(

.+%'(

•!(A9'*%"#(!+34%*&(!#+%5(

•!(-#"12$(!"4"$9*B(

•!(?>C(DEF(GHI(

•!(?>C(DJ(KLM(

•!(?I@(DJ(N91,(

•!(7O@(MJP)&$+/5(Q&*R+',(

•!(Q&*R+',()&$%'9*B(M+5&#(

S93&(+'(S'"T$UV"1&5()$"#9/0W(X+"5(*&12/0W(

)93%#"2+/("/5(L/"#B191W(K&/5&'9/0W(

)+YR"'&("1("()&':9$&(Z#"[+'3W(E+12/0(

=>?@(U(=>?H(4&'(DJ(

5"*"(*'"/1\&'(

•! Provides on-demand processing power!

•! Virtual machine images (Amazon Machine Image, AMI)!

Page 8: 100325 Intro Intech

Amazon EC2 Concepts

Amazon Machine Image (AMI): •! Bootable root disk •! Pre-defined or user-built •! Catalog of user-built AMIs •! OS: Fedora, Centos, Gentoo, Debian,

Ubuntu, Windows Server •! App Stack: LAMP, mpiBLAST, Hadoop

Instance: •! Running copy of an AMI •! Launch in less than 2 minutes •! Start/stop programmatically

Network Security Model: •! Explicit access control •! Security groups

Inter-service bandwidth is free

Amazon Simple Queue Service

=>?@(4&'(?@@@(

3&11"0&1(

•!()$"#"V#&(<%&%9/0(

•!(-#"12$(!"4"$9*B(

•!(K&#9"V#&W()934#&W()&$%'&(

]/*&'U4'+$&11(3&11"09/0W(5"*"(

V%^&'9/0W("'$.9*&$*%'&($+34+/&/*(( =>?@(U(=>?H(4&'(DJ(

5"*"(*'"/1\&'(

Efficient, reliable load distribution layer

Pay by the message

Page 9: 100325 Intro Intech

=>?O(4&'(DJ(4&'(

3+/*.(

1*+'"0&(

•!(_V`&$*UJ"1&5()*+'"0&(

•!(?(J(a(O(DJ(P(+V`&$*(

•!(b"1*W(K&#9"V#&W()$"#"V#&(

•!(K&5%/5"/*W(N914&'1&5(

•!(cc>ccd(L:"9#"V9#9*B(D+"#(

•!(Z'9:"*&(+'(Z%V#9$(

•!(Z&'U+V`&$*(eKX1(f(L!X1(

•!(J9*S+''&/*()%44+'*( =>?@(U(=>?H(4&'(DJ(

5"*"(*'"/1\&'(

=>@?(\+'(?@@@(*+(

?@@@@('&g%&1*1(

Virtually infinite storage capacity

Provides permanence layer when EC2 nodes are not running

Des clouds open source

Nimbus (Freeman and Keahey, University of Chicago)

•! Client-side cloud-computing interface to Globus-enabled TeraPort cluster at

University of Chicago

•! Based on GT4 and the Globus Virtual Workspace Service

–! Great if local resources are GT4 proficient

–! Tutorials and documentation in “grid space”

Eucalyptus (Wolsky, University of Santa Barbara)

•! Web services based implementation of elastic/utility/cloud computing

infrastructure

•! Linux image hosting (IaaS)

Open Nebula (Montero & Llorente, DSA-Research at UCM)

•! Support for the Xen, KVM and VMware virtualization

platforms

•! Access to Amazon EC2 and ElasticHosts clouds

•! libvirt, EC2 Query API and OGC OCCI interfaces

Page 10: 100325 Intro Intech

Grid’5000 vu comme un Cloud ?

Grid’5000

•! Plateforme distribuée pour des expériences à grande échelle

•! 9 sites et plus de 5000 cœurs connectés via Renater

Quelques caractéristiques de Cloud

•! Possibilité de gérer vos propres images disques (installées via kdeploy)

•! Réservation de ressources transparente (via OAR)

•! Plateforme complètement contrôlée

•! Images de machines virtuelles (Xen, Vmware)

•! Isolement d’applications

Grid’5000 pourrait devenir Cloud’5000?

•! Plateforme parfaite pour la validation de résultats de recherche sur les

Clouds

•! Instances de machines virtuelles connectées via un WAN dédié

•! Plusieurs projets autour de Clouds open source et Map Reduce

Quelques challenges de recherche

•! Composition de services

•! Service Level Agreement

•! Sécurité

•! Résistance aux fautes

•! Construire des applications basées sur les services

•! Gestion de l’infrastructure

•! Energie / Green-IT

•! Ordonnancement et gestion élastique des ressources

•! Gestion de données

•! Accès transparent à des plateformes hybrides

Page 11: 100325 Intro Intech

Conclusion

•! De nombreuses applications prêtes à être « cloudifiées »

•! Les ressources sont là !

•! Nombreuses offres de Clouds publics et privés

•! Notion de virtualisation et logiciels « mature »

•! « Quelques » problèmes à traiter encore mieux

•! extensibilité, sécurité, gestion de données à grande échelle, tolérance

aux fautes, …

•! Le Cloud n’est pas prêt d’enterrer les supercalculateurs pour

autant (architecture petascales et bientôt exascales)

•! Gros potentiel pour de nombreuses applications avec différentes

approches (IaaS, PaaS, SaaS)

•! Grande diversité des applications

22!