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
Cloud Computing 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 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é
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,
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 Machines virtuelles s exécutant sur un nœud de calcul VM0 VM1 VM2 N0 Noeud de calcul
Virtualisation Propriétés!! Isolement VM1 simulation? VM2 Apache web server Machine virtuelle Machine virtuelle Virtualisation Propriétés!! Isolement!! Portabilité Machine virtuelle Machine virtuelle VM0 VM0 N0 N1 Noeud de calcul Noeud de calcul
Virtualisation Propriétés!! Isolement!! Portabilité!! Suspend/restart Machine virtuelle VM0 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 "! Infrastructure As A Service "! Amazon Simple Queue Service "! Amazon Simple Storage Service "! Amazon Elastic Compute Cloud "! People As A Service "! Amazon Mechanical Trunk "! Search As A Service "! Alexa Web Information Service "! Alexa Top Sites "! Alexa Site Thumbnail "! Alexa Web Search Platform Credits: Jeff Barr, Amazon
Amazon Web Services!"#$%#&'( -#"12$(!+34%*&(!#+%5(6-!78( )934#&()*+'"0&(( )&':9$&(6);8( )*+$,&'( )934#&(<%&%&( )&':9$&(6)<)8( -$."/0&'( Credits: Jeff Barr, Amazon Amazon Elastic Compute Cloud Provides on-demand processing power! Virtual machine images (Amazon Machine Image, AMI)! (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&#( =>?@(4&'(1&':&'(.+%'( 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\&'(
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 Efficient, reliable load distribution layer Pay by the message ()$"#"V#&(<%&%9/0( (-#"12$(!"4"$9*B( (K	"V#&W()934#&W()&$%'&( =>?@(4&'(?@@@( 3&11"0&1( ]/*&'U4'+$&11(3&11"09/0W(5"*"( V%^&'9/0W("'$.9*&$*%'&($+34+/&/*(( =>?@(U(=>?H(4&'(DJ( 5"*"(*'"/1\&'(
Virtually infinite storage capacity Provides permanence layer when EC2 nodes are not running (_V`&$*UJ"1&5()*+'"0&( (?(J(a(O(DJ(P(+V`&$*( (b"1*w(k	"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+'*( =>?O(4&'(DJ(4&'( 3+/*.( 1*+'"0&( =>@?(\+'(?@@@(*+(?@@@@('&g%&1*1( =>?@(U(=>?H(4&'(DJ( 5"*"(*'"/1\&'( 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
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
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!