Cloud Computing et Calcul Haute Performance
(HPC High Performance Computing)
Olivier Richard (MdC- université de Grenoble)
LIG/UJF/INPG/CNRS/UPMF/INRIA
21 octobre, 2011, Formation-CNRS/ANGD
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Sommaire
Généralité, Historique et Classification
Modèle en couche et services
Type de déploiement
Exemple de solutions orientées infrastructure
Le HPC traditionnel
Les performances
Comparaison avec d’autres approches
Standardisation
Le contrôle / sécurité / confidentialité
Les images/environnements
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Cloud Computing
Ou l’Informatique en Nuage ou Infonuagique1
1
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Apparition du Cloud Computing
Dans les années 1960, John McCarthy : “computation may
someday be organized as a public utility.”
Métaphore des réseaux électriques (1966 Douglas Parkhill’s)
Grid Computing
Computing On demand (essai de Sun entre autre)
Le retour en force de la virtualisation (pour la consolidation de
serveur)
Amazon : suite à l’éclatement de la bulle Internet exploitation de
machine inutilisé avec Amazon EC2
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Caractéristiques
Agilité/Flexible: simplicité d’accès, de mise en oeuvre pour le
client
Coût: seulement à l’usage
Pas de durée d’usage
Elasticity / Scalable dynamic (“on-demand”) provisioning
(déploiement)
Vision infinie du nombre de ressources (en pratique ?)
Performant (pour les infrastructures web)
Maintenance simplifier des applications (pas d’installation
complexe)
Maintenance nulle de l’infrastructure
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Couches
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Les couches du CLoud Computing
Client: laptop, telephone, navigateur...
Application: “Software as a Service (SaaS)” bureautique,
web-mail(gmail), flickr ...
Plateforme (logicielle): “Platform as a Service (PaaS)”, pile
logicielles. Google App Engine, Azure Services Platform,
MapReduce, DB..
Infrastructure: “infrastructure as a service” (IaaS) :
instrastructure de calcul “computing”, de serveur (généralement
virtuel)
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Tout est service: XAAS
Un mantra marketing ?
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Types de cloud (de déploiement)
Public cloud
Private cloud
Community cloud
Hybrid cloud (Sky Computing)
InterCloud: “cloud of clouds ???
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Exemples (IASS,DASS,CAAS)
Amazon
Eucalyptus
OpenNebula
OpenStack
Nimbus
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Amazon
page 108-125 - [Link]
cloud-computing-introduction-2978287/download
DSP-IP: Société de consulting
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Eucalyptus
Compatibilité AWS: EC2, EBS, S3
Techno de virtualisation: Xen, KVM, et VMware
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
OpenNebula
OpenNebula2 projet originaire d’UCMadrid (Académique, Projet
Européen puis startup C12G)
Private et Hybride Cloud
2
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
OpenNebula
Ecosystéme riche et intéressant : Partenariat, Plugins,
Extension, utilisation en recherche sur les CLouds...
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
OpenStack
OpenStack is an IaaS cloud computing project by Rackspace
Cloud and NASA. Currently more than 120 companies have joined
the project among which are Citrix Systems, Dell, AMD, Intel,
Canonical, SUSE Linux, HP, and Cisco.[1] [2] It is free open source
software released under the terms of the Apache License.3
3
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
OpenStack
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Nimbus
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Grid versus Cloud
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Cloud et HPC
Performances
Maitrise des workloads (tâches)
Gestionnaire de tâches et de ressources
Intégration du Cloud et autres approches dans l’infrastructure de
calcul
Maitrise des environnements
Contrôle, Sécurité et confidentialité
Le Cloud pour absorber les pics ? Pour remplacer le HPC
classique ?
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Performance: virtualisation
Pour les applications séquentiel: CPU bound OK
Pour les applications séq. avec I/O disque: peu de
perte
Pour les applications parallèles résultats pas très bons
Virtualisation de matériels spécifiques: Ce n’est pas encore ca
GPGPU
Cartes réseaux type Infiniband
La virtualisation des couches réseaux peut être
couteuses
Pb Pour les très gros sites avoir beaucoup de VM à plat
avec une IP par VM (boum les caches ARP)
Le problème du bruit système (OS Noise) est amplifié
(à grande échelle)
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Performances: en parallèle
Sur Amazon EC2 et benchmark parallèle NAS-NPB4 , 32 noeuds.
4
Edward Walker:
Olivier ”Benchmarking
Richard (MdC- Amazon Cloud
université de Grenoble) EC2Computing
for high-performances cientific
et Calcul Haute Performance (HPC High Performance C
Maitrise des workloads en HPC
Les gestionnaires de tâches et de ressources: Batch Scheduler
Slurm, LSF, PBSpro, OGE(sge), OAR
Domaine bien connu, assez bien maîtrisé et classiquement utilisé
sur les grappes (cluster) de calcul.
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Batch scheduler
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Batch scheduler
Politiques d’ordonnancements
Backfilling
FairSharing
Timesharing
Advance Reservation
GangScheduling
Prise en compte de contrainte de topologie
(réseau, CPU)
Pas très satisfaisant avec des applications qui comporte beaucoup I/O
FileSystem (besoin d’une meilleure intégration avec l’ordonnancement
des tâches vers un ordo tâches/transferts)
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Dans le Cloud Computing
Vous payez à l’utilisation !
Consolidation / Equilibrage de charge
Pas de garantie en débit de calcul5
Délicat pour des applis parallèles qui doivent être relativement synchrone
(si pls VM sur le même noeud)
Amazon EC2 plante(ait) au bout de 20 VM
Amazon demo avec 30000 coeur (en 10/11)
5
jusqu’à très récemment
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Batch scheduler et Cloud Computing
Un marriage possible
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Moab / Adaptive Computing
Une variation
6
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Entropy
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
StratusLab (Cloud et Grid Computing)
StratusLab6 “Infrastructure as a Service” cloud by European Grid
Infrastructure (EGI) communitie. Basé sur OpenNebula
7
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Grid’5000
Une plate-forme pour l’expérimentation7 : une plate-forme de HaaS8 ?
8
[Link]
9
Hardware as a Service
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Grid’5000
Une gestionnaire de tâches et de ressources (batch
scheduler) par site (OAR).
Une outil de déploiement d’image9 bas-niveau
accessible au utilisateur (Kadeploy).
Un outil de confinement réseau (Kvlan).
Une API de type REST.
Stokage NFS par site
LDAP et SSH
Pare-Feux en entrée et en sortie
du HaaS qui permet à l’utilisateur (expérimentateur) de tester
n’importe quelle couche logiciel (même un solution de Cloud
Computing IaaS (OpenNebula, Nimbus)
10
provisioning
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
ComputeMode
Des solutions légères: le calcul sur Intranet
Wake-On-Lan - Déploiement via iPXE (OS-environement en
RAM) + gestionnaire de tâche et ressource (OAR)
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Standard
OVF Open Virtualization Format: format standard pour les
images virtuelles (virtual appliances)
De fait: Amazon EC2 et S3
OCCI (p72-p78 DSP-IP)
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
DeltaCloud
Deltacloud is an API developed by Red Hat that abstracts
differences between clouds. It was announced on September 3,
2009.
Each Infrastructure-as-a-Service clouds existing today provides its
own API. The purpose of Deltacloud is to provide one unified
REST-based API that can be used to manage services on any
cloud. Each particular cloud is controlled through an adaptor called
”driver.“ As of October 2010, drivers exist for the following cloud
platforms: Amazon EC2, GoGrid, OpenNebula,
Rackspace(OpenStack), RHEV-M, and RimuHosting, with two more
coming soon: Terremark and VMWare vCloud.10
11
[Link]
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Contrôle, sécurité et confidentialité
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Contrôle, sécurité et confidentialité
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Les environnements
Question importante (sous-estimée)
Analogie avec les voitures anciennes / moderne
Maîtrise de complexité ?
A la main
Outils spécialisés et hétérogénes
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C
Conclusion
Le Cloud Computing a supplanté le Grid Compting ?
Recouvre énormément de contextes différents
Le Cloud pour le HPC, contexte un peu particulier
Attention aux performances pour certains types d’application
Niveau de complexité ??? pour le client/l’admin ???
Question des images (construction, maintenance...)
Est-ce vraiment une révolution du point de vue du HPC ? * c’est
de l’équilibrage de charge + des VM ? * et les services alors ?
(trop de marketing ?)
HPC classique et Cloud Computing se rejoigne, se teintent
mutuellement, se mixent ?
Olivier Richard (MdC- université de Grenoble) Cloud Computing et Calcul Haute Performance (HPC High Performance C