• Aucun résultat trouvé

Introduction au «Cloud Computing»

N/A
N/A
Protected

Academic year: 2022

Partager "Introduction au «Cloud Computing»"

Copied!
78
0
0

Texte intégral

(1)

POUR DES COMPÉTENCES TOUJOURS À LA POINTE

Introduction au

« Cloud Computing »

Yvon Kermarrec Professeur

Institut Mines Telecom / Télécom Bretagne

(2)

Un « cloud » de tags pour commencer…

(3)

Le cloud est d’actualité

(4)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(5)

Système distribué: des définitions

« A system in which hardware and software components located on networked computers communicate and coordinate their actions only by passing messages » (Coulouris)

« A distributed system is a collection of

independent computers that appear to the users of the system as a single computer » (Tannenbaum)

« A distributed system is one that stops you from getting any work done whenever a machine

you’ve never even heard of crashes » (Leslie

Lamport)

(6)

Vers une évolution du modèle des ordinateurs

Des besoins de calculs de plus en plus en plus importants….

Des volumes de données à traiter de plus en plus importants, rapides et diversifiés

Des temps de réponse courts à assurer

Une complexité croissante : algorithmes, croisement de données, ….

Une universalité des domaines d’application

visés: biologie, médecine, météo, tremblement de terre, tsunami, physique nucléaire, …..

(7)

Un mainframe….IBM 704 env 1957

(8)

Un super calculateur….

(9)

Des super calculateurs … aux capacités inimaginables

www.top500.org

Des puissances de calcul phénoménales …. Des consommations électriques impressionnantes … des besoins en climatisation et en locaux très

spécialisés ….

Des couts que seuls les grands états peuvent se permettre … sans compter la maintenance et les ingénieurs support en permanence.

(10)

Tianhe-2

No. 1 world powerful “system since June 2013

Tianhe-2, a supercomputer developed by China’s National University of Defense Technology, retains its position as the world’s No. 1

system with a performance of 33.86 petaflop/s (quadrillions of

calculations per second) on the Linpack benchmark. It was built by China's National University of Defense Technology (NUDT) in

collaboration with the Chinese IT firm Inspur.

According to NUDT, Tianhe-2 will be used for simulation, analysis, and government security applications. With 16,000 computer nodes, each comprising two Intel Ivy Bridge Xeon processors and

three Xeon Phi chips, it represents the world's largest installation of Ivy Bridge and Xeon Phi chips, counting a total of 3,120,000 cores.

] Each of the 16,000 nodes possess 88 gigabytes of memory (64 used by the Ivy Bridge processors, and 8 gigabytes for each of the Xeon Phi processors). The total CPU plus coprocessor memory is

(11)

Un système distribué

intranet ISP

desktop computer:

backbone

satellite link

server:

%

network link:

%

%

%

(12)

En entreprise…..

the rest of

email server Web server

Desktop computers

File server print and other servers

other servers print Local area

network

email server

the Internet

(13)

Chez vous … chez moi ….

(14)

Des nouveaux besoins et usages

Partager des ressources, des données, des fichiers, des images, des applicatifs, des imprimantes, des périphériques, …

Accéder aux ressources sans complexité …

qu’elles soient locales ou distantes … en ignorant les réseaux et les protocoles.

Agréger des puissances de calcul inutilisées la plupart du temps et adresser des problèmes inenvisageables classiquement

Des terminaux multiples et la mobilité des utilisateurs

(15)

La notion de transparences

 Location: Users are unaware of location of resources

 Migration: Resources can migrate without name change

 Replication: Users are unaware of the existence of multiple copies

 Failure: Users are unaware of the failure of individual components

 Concurrency: Users are unaware of sharing resources with others

 Parallelism: Users are unaware of parallel execution of activities

(16)

Des systèmes centralisés vers les systèmes distribués

Super computer at Virginia Tech comment construire un super calculateur (parmi les meilleurs mondiaux)

http://www.youtube.com/watch?v=vLujLtgBJC0

CRAY - NSA Supercomputer

http://www.youtube.com/watch?v=A5RwZz9UPUs&feat ure=related

Assemblage de Cray XE6 "Hermit"

https://www.youtube.com/watch?v=3qirlkHRKR0

(17)

Systèmes distribués (synthèse)

Des machines en réseau

Des puissances de calcul théoriques énormes et capacité de stockage

Difficultés pour gérer et administrer de tels équipements

Très difficile de programmer des applications pour ces système

Apports des « middlewares »

(18)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(19)

Une transition

Powerful multi-core processors

General purpose

graphic processors

Superior software methodologies Virtualization

leveraging the powerful

hardware Wider bandwidth

for

communication Proliferation

of devices Explosion of

domain applications

Cloud Futures 2011, Redmond, WA

(20)

Vers les « clouds »

Une transition ‘naturelle’ depuis les systèmes distribués

L’omni présence ces réseaux de communication et les besoins d’accès depuis des supports divers / mobiles

Un Cloud s'appuie sur les contributions des géants du Net

Le Cloud est avant tout une solution de stockage

d'information, au sens large et permet de la restituer indépendamment de sa localisation

Notion générale, qui recouvre tous les différents types de services informatiques sur Internet.

Ensemble (nuage) de serveurs et d’ordinateurs en réseau répartis dans le monde. Ce « nuage » permet une

virtualisation des applications (qui ne sont plus installées sur le poste de travail de l’utilisateur) accessibles par le web via un simple navigateur.

(21)

Cloud computing ???

The cloud computing is a culmination of

numerous attempts at large scale computing with seamless access to virtually limitless resources.

on-demand computing, utility computing, ubiquitous computing, autonomic computing, platform computing, edge computing, elastic computing, grid computing,

Modèle “Pay as you go”

Lorsqu’on utilie un cloud public, le modèle proposé est similaire à la location (vs. l’achat) d’un équipement / maison

Une organisation peut également choisir le cloud privé …. Ou une combinaison public / privé.

(22)

Le Cloud ????

Le nuage et Internet

Un peu de pub … pour Google

https://cloud.google.com/appengine/

(23)

Le cloud selon NIST

“Cloud computing is a model for enabling convenient, on-demand network access to a

shared pool of configurable computing resources (e.g., networks, servers, storage, applications,

and services) that can be rapidly provisioned and released with minimal management effort or

service provider interaction »

NIST : http ://csrc.nist.gov/groups/SNS/cloud- computing/index.html

(24)

Le cloud selon Wikipedia

“Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility over a network (typically the Internet). “

(25)

Le cloud – vu de ses détracteurs

I don’t understand what we would do differently in the light of Cloud Computing other than

change the wordings of some of our ads

Larry Ellision, Oracle’s CEO

I have not heard two people say the same thing about it [cloud]. There are multiple definitions out there of “the cloud”

Andy Isherwood, HP’s Vice President of European Software Sales

It’s stupidity. It’s worse than stupidity: it’s a marketing hype campaign.

Richard Stallman, Free Software Foundation founder

25

(26)

Caractéristiques du Cloud Computing

Common Characteristics:

Low Cost Software

Virtualization Service Orientation Advanced Security Homogeneity

Massive Scale Resilient Computing Geographic Distribution

Essential Characteristics:

Broad Network Access Rapid Elasticity On Demand Self-Service

(27)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(28)

Le cloud selon NIST

(29)

PaaS – IaaS- SaaS

(30)

SaaS : Software as a Service (1/2)

Mise à disposition par Internet d’applications informatiques ou logiciels comme un service

dans le cadre d’un abonnement,

les données peuvent aussi être stockées sur un serveur de l’opérateur SaaS.

l’utilisateur final n’a plus besoin d’installer l’application sur son poste

Il accède à son compte et aux applications par le Web

(31)

SaaS : Software as a Service (2/2)

Microsoft Office 365, Bime, Google Apps,

Keynote, FaceBook, Skype, NetFlix, DropBox, SlideShare

Des exemples:

Gestionnaire de relation client (CRM)

Comptabilité et finance / RH

Visio conférence et communications

Messagerie et logiciels collaboratifs

(32)

PaaS : Platform as a Service

PaaS désigne la mise à disposition d’un environnement de développement et

d’exploitation de logiciels sur Internet.

PaaS regroupe donc la partie développeur et système du Cloud Computing.

PaaS propose des fonctions de base (ou non) afin de simplifier ‘la vie’ du développeur (par exemple, gestion des utilisateurs et de la disponibilité des ressources).

Microsoft Azure, Bungee Connect,

WorkXpress, Force.com, Google App Engine

(33)

IaaS : Infrastructure as a Service

IaaS désigne une infrastructure matérielle, louée à la demande

L’infrastructure propose du stockage, des machines virtuelles, des OS, etc.

L’utilisateur peut disposer sur demande d’une capacité de traitement pour n’importe quel type d’application.

Amazon Web Services (AWS & EC2), RackSpace , GoGrid or CloudSigma

(34)

Les *aaS en figure

(35)

Pyramide SaaS – PaaS - IaaS

(36)

SaaS – PaaS - IaaS

(37)

Pyramide SaaS – PaaS - IaaS

(38)

Pyramide SaaS – PaaS - IaaS

(39)

Public cloud vs. Private cloud

(40)

cloud publique vs. Cloud privé

Pourquoi un cloud privé

La sécurité et privacy des données des entreprises sont des points critiques

Besoin de ne pas dépendre d’une offre / d’un vendeur

Besoin d’un SLA spécifique pour la fiabilité ou le temps de réponse

Mutualisation et conception de nombreuses applications internes

….

(41)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(42)

Un écosystème très dynamique

(43)

Evolution du CA du cloud d’Amazon

(44)

Avantages et bénéfices

Flexibilité

Il est possible d’adapter les ressources informatiques en fonction de la demande et ceci vers la hausse ou la baisse

Réduction massive des couts récurrents et investissements

Maintenance et exploitation des équipements

L’entreprise sans infrastructure informatique

Mise à jour transparente des applicatifs

Adapté à la mobilité et accès aisé à l’environnement de travail via internet

(45)

Avantages et bénéfices (2/3)

Sécurité du stockage des données

Les données sont fragmentées et quasiment inutilisables

Sécurité pour l’accès aux données

Authentification et gestion des identités

Cloisonnement des données

Les informations sont étanches entre les clients

Sécurité face aux sinistres

Du fait des réplications et répartition géographique

(46)

Avantages et bénéfices (3/3)

Une aisance de déploiement, de configuration et de gestion

Une interconnexion des outils, des services, ….

Une portabilité aisée

En 15 mn une application de e-commerce opérationnelle

http://ecommerce-platforms.com/ecommerce-selling- advice/how-to-start-an-online-shop-in-15-minutes-with- shopify

(47)

Points de vigilance (1/2)

Les coûts cachés et le « chèque en blanc »

Les évolutions imposées et leurs impacts pas toujours maitrisés

Une « personnalisation » plus difficile que pour la conception d’une application maison

La sécurité des données et qui y accèdent et pour quoi faire ????

(48)

Points de vigilance (2/2)

Fiabilité des connexions réseau

Une indisponibilité rend les données et applications inaccessibles.

Le choix du fournisseur et ses « politiques »

Localisation des données et contrôle du client

La France, l’Europe et les USA ont qq divergences….

(49)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(50)

Quelques images des infrastructures

(51)

Des éléments matériels

(52)

Le refroidissement et l’énergie

(53)

Le refroidissement

(54)

Les technologies sous jacentes

Virtualization: bare metal, hypervisor. …

VM0 VM1 VMn

Web-services, SOA, WS standards Services interface

Cloud applications: data-intensive, compute-intensive, storage-intensive

Storage Models: S3,

BigTable, BlobStore,

Bandwidth WS

(55)

environnement des fournisseurs d’infrastructures

Development Environment:

IDE, SDK, Plugins

Production Environment

Simple storage

Table Store

<key, value>

Drives Accessible through Web services

Management Console and Monitoring tools

& multi-level security

(56)

Microsoft Azure

Enterprise-level on-demand capacity builder

Fabric of cycles and storage available on-request for a cost

You have to use Azure API to work with the infrastructure offered by Microsoft

Significant features: web role, worker role , blob storage, table and drive-storage

(57)

Microsoft Azure

(58)

Amazon EC2

Amazon EC2 is one large complex web service.

EC2 provided an API for instantiating computing instances with any of the operating systems

supported.

It can facilitate computations through Amazon Machine Images (AMIs) for various other models.

Signature features: S3, Cloud Management

Console, MapReduce Cloud, Amazon Machine Image (AMI)

Excellent distribution, load balancing, cloud monitoring tools

(59)

Amazon

(60)

Google App Engine

This is more a web interface for a development environment that offers a one stop facility for design, development and deployment Java and Python-based applications in Java, Go and

Python.

Google offers the same reliability, availability and scalability at par with Google’s own applications

Interface is software programming based

Comprehensive programming platform irrespective of the size (small or large)

Signature features: templates and appspot,

(61)

Google app engine

(62)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(63)

Un nouveau contexte : le big data

Un déluge de données certes … mais des

capacités de traitement désormais accessibles

Vers l’extraction de connaissances à partir des données

http://www.d4d.orange.com/fr/Accueil

Des croisements de données et des opportunités immédiates pour les entreprises, les individus, et les Etats, ….

Des besoins de nouveaux paradigmes de calculs

(64)

GFS: Google File System

Internet génère de nouveaux challenges liés aux données des logs par exemple : large scale “peta scale”

Ces données et ces fichiers ne sont pas classiques du fait de leur modèle WORM ( “write once read many”);

Plus globalement ces données peuvent être liées à:

Des données de patients (confidentiel médical)

Des séries temporelles : finances, etc…

Google utilise ces caractéristiques pour Google file system (GFS)

(65)

Hadoop?

Google MapReduce est un modèle de calcul

“révolutionnaire” proposé par Google pour la conception de ses référencements.

GFS n’est pas “open source”.

Doug Cutting de Yahoo a conçu et développé Hadoop Distributed File System (HDFS).

Le framework qui propose HDFS, MapReduce et autres est appelé “the project Hadoop” ou Hadoop.

Hadoop est “open source” et distribué par Apache.

(66)

La tolérance aux pannes

La panne est la “norme” plutôt que l’exception

HDFS peut inclure des milliers de machines – chacune d’elle stocke une partie des données

Comme nous avons de très nombreux composants et que chacun d’eux a une probabilité de tomber en panne, il est normal que dans un tel système des composants ne

fonctionnent pas.

La détection des pannes et une reconfiguration rapide et automatique est le but de HDFS

(67)

Architecture Hadoop

(68)

Architecture HDFS

(69)

Map Reduce

2 fonctions de base:

map : applique une fonction à une liste

─ map f [] = [] | map f [x::xs] = (f x) :: (map f xs)

map square [1,2,5] -> [1,4,25]

reduce : construit une valeur à partir d’une fonction et d’une liste

─ reduce f a [] = a | reduce f a [x::xs] = reduce f (f x a) xs

reduce add 0 [1,3,6] ->10

(70)

Map reduce en action

(71)

Map Reduce

(72)

Hadoop Ecosystem

(73)

Hadoop big picture

(74)

Plan du cours

Le contexte des systèmes en réseau (systèmes distribués)

Vers le cloud

Composants du cloud et les *-aaS

Un écosystème dynamique

Quelques éléments techniques

Un nouveau modèle de programmation

Synthèse, conclusions et perspectives

(75)

Vers une transition pour les entreprises

Un passage risqué et en rupture … pour les DISI

Évaluer précisément les besoins en terme de CPU / MegaBytes …. Et aussi les couts cachés, la

formation, le coût de la transition

Évaluer plusieurs offres disponibles et les tester (il y a des offres d’essais…..)

(76)

Synthèse

Une maturité des approches et des outils et environnements stables et complets

Une élasticité et l’adaptation aux besoins du client – flexibilité et adaptabilité rapide

Des avantages nombreux pour les entreprises et les utilisateurs occasionnels

Des innovations pour l’entreprise avec les pratiques de type ‘big data’

Des points de vigilance sérieux …. Avec des en particulier la localisation et le traitement

(éventuel) des données

(77)

Quelques liens ….

Amazon AWS: http://aws.amazon.com/free/

AWS Cost Calculator:

http://calculator.s3.amazonaws.com/calc5.html

Windows Azure: http://www.azurepilot.com/

Google App Engine (GAE):

http://code.google.com/appengine/docs/whatisgo ogleappengine.html

Graph Analytics:

http://www.umiacs.umd.edu/~jimmylin/Cloud9/do cs/content/Lin_Schatz_MLG2010.pdf

For miscellaneous information:

http://www.cse.buffalo.edu/~bina

(78)

Une pause Video

Microsoft GFS Datacenter

• http://www.youtube.com/watch?v=hOxA1l1pQIw

La construction d’un data center (timelapse)

http://www.youtube.com/watch?v=ujO-xNvXj3g

Un tour dans un data center de FaceBook

http://gigaom.com/cleantech/a-rare-look-inside- facebooks-oregon-data-center-photos-video/

Références

Documents relatifs

Juliette SÉNÉCHAL, Maître de Conférences HDR à l'Université Lille 2 Nicolas DESRUMAUX, Ingénieur de Recherches à l’Université Lille 2. Frais d'inscription : 30 € (gratuit

Chèque à établir à l’ordre de l’Agent comptable de l’Université Lille 2 Possibilité de paiement par virement. Contact, renseignements et inscription

• Sources: Google places, OSM, user defined, social networks, service providers’ web pages.

En revanche, elle n’assure pas la disponibilité constante du serveur de données puisque ce dernier peut être arrêté pour cause de panne pendant une période allant de

In terms of proximity to the edge, in case of Fog Computing, the FCN may not be the first hop access point for the end device due the leveraging of legacy devices as FCNs. For

Pour une entreprise, l’utilisation d’un Cloud en mode SaaS peut être particulièrement pertinente dans les phases de maquettage ou de prototypage car cela permet, dans un

De mˆ eme on note C S E (i) le temps d’´ ecriture sur un fichier d’un r´ epertoire chiffr´ e d’un fichier de taille i octets sur le support S avec le syst` eme de chiffrement E

1997 – CPU-scavenging : Ce type de grille introduisit l’idée de diviser des tâches et de les exécuter en parallèle par un réseau d’ordinateurs. Le plus important des