CloudComputing FS 2020-2021
CloudComputing FS 2020-2021
CloudComputing FS 2020-2021
CLOUD COMPUTING
Cours de Licence
Par
Pr YENKE Blaise Omer
December 2, 2020
CLOUD COMPUTING 1 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Programme du cours
CLOUD COMPUTING 2 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 3 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 4 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 6 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Avantages
Faible coût de communication entre processus
Bonne performance (temps de calcul)
inconvénients
Ne passent pas à l’échelle
Fortes contraintes pour assurer la tolérance aux fautes
Faible ratio coût/performance
Consomment beaucoup d’énergie (de l’ordre du mégawatt)
CLOUD COMPUTING 8 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 9 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Avantages
Passent aisément à l’échelle
Tolérants aux fautes
Bon ratio coût/performance
Capacité élevée de stockage et de mémoire
inconvénient
Les temps de communication entre les processus peuvent être élevés
CLOUD COMPUTING 10 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Classification de Tanenbaum
CLOUD COMPUTING 11 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Synthèse
CLOUD COMPUTING 12 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Principales architectures
⇒ A moyenne échelle:
Grappes (Clusters)
Intranets
⇒ A grande échelle:
Grilles (Grids)
Cloud Computing
Internet
CLOUD COMPUTING 13 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 14 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Grappes
Grappe typique
En général homogène
Noeuds de calcul: PCs, SMP
Réseau: haut débit (Giga Ethernet, Myrinet,Quadrix, InfiniBand)
Usage typique
Environnement dédié de calcul
CLOUD COMPUTING 15 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Grappes : Architecture
CLOUD COMPUTING 16 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Grappes : Exemple
CLOUD COMPUTING 17 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Intranets
Configuration générale
Interconnexion de PCs standards
Architecture: modèle client-serveur
Principales activités
Messagerie et échanges de données entre usagers, Traitement de
texte, recherche et consultation de documents internes,
communications à travers les vidéoconférences
Usage parallèle
Environnement non dédié de calcul HPC (grappe virtuelle) pendant
les nuits, les week-ends, les périodes de congé.
Ressources des postes de travail partiellement ou entièrement
utilisées.
CLOUD COMPUTING 18 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 19 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 20 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 21 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Grilles
CLOUD COMPUTING 22 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Cloud computing
Usage des ressources de calcul (matériel et logiciel) qui sont
fournis comme un service via un réseau (typiquement Internet)
Traitements informatiques sur poste utilisateur déportés vers des
infrastructures distantes
Mutualisation des ressources par les entreprises
Ressources: Matériel ; bibliothèques; applications
Architecture générale:
CLOUD COMPUTING 23 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 24 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 25 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
SaaS: Software-as-a-Service
⇒ Ressources accessibles à distance comme des services à la
demande
Ressources: infrastructure de calcul + applications
Requêtes des usagers ou clients: données + applications sollicitées
Quelques plateformes de SaaS
OVH : hébergeur de sites web (près de 120 000 serveurs)
Basecamp : outil Web de gestion de projets
Salesforec.com (solutions en gestion des relations clients)
Zoho; Heroku; Microsoft Azure; etc.
CLOUD COMPUTING 26 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Internet
CLOUD COMPUTING 27 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
Synthèse
- PC standanrd de plus en plus multiprocesseurs multicoeurs
- Forte croissance du dév. d’environnements de calcul distribué
⇒ De nouveaux défis
Développer des algorithmes efficaces pour ces environnements
Comment utiliser efficacement des resources libres des intranets
Comment assurer effecicament la taulérance aux fautes
comment placer efficacement les tâches sur ces environnements
Comment assurer la disponibilité, la fiabilité, la maitenabilité de tels
environnements
CLOUD COMPUTING 28 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
CLOUD COMPUTING 29 / 30
Architectures de machines Systèmes distribués Cloud Computing Google App Engine et Python
A voir en TP
CLOUD COMPUTING 30 / 30