Le 06/ 07/2017
Sujet intitul :
M SEFRAOUI Omar
Cest avec une immense fiert quon adresse nos remerciements les plus
distingus tous nos
enseignants qui nous ont transmis leur savoir et nous ont
assur la meilleure des formations.
L e Cloud Computing est devenu aujourdhui, le sujet le plus dbattu dans le secteur des
technologies de l'information. En effet il sagit dun nouveau modle qui consiste proposer des services
informatiques sous forme de services la demande, accessibles distance via lInternet, n'importe o,
n'importe quand et par n'importe qui. L'volution du Cloud Computing est le moteur de la prochaine
gnration de services Internet.
Le service de base le plus connu du Cloud Computing est lIaaS (infrastructure as a service), qui
fournit un socle dinfrastructure informatique virtualis, en offrant des ressources informatiques
(serveurs, stockage, rseaux) la demande selon les besoins des clients. Ceci permet aux entreprises
dexternaliser leurs systmes informatiques et donc de rduire leurs cots informatiques tout en tant
plus efficaces et plus flexibles.
Ce mmoire prsente le travail ralis dans le cadre de notre projet de fin danne dont le but consiste
faire la conception et le dploiement dun environnement Cloud priv, en tudiant et en explorant les
fonctionnalits offertes par une plateforme open source. OpenStack tait notre solution de choix pour
entamer la mise en place du projet, une plateforme qui rpond parfaitement aux besoins des utilisateurs
finaux.
Mots-cls : Cloud Computing, infrastructure en tant que service (IAAS), virtualisastion, OpenStack.
Cloud Computing has become the most discussed topic in the information technology sector.
Indeed, it is a new model which consists to provide IT services as on-demand services accessible
remotely via Internet, anywhere, anytime and by anyone.
The evolution of cloud computing is the moving force for the next generation of Internet services.
The well known basic service of Cloud Computing is the IaaS (infrastructure as a service), which
provides a base of virtualized IT infrastructure, by providing IT resources on-demand (servers, storage,
networks) according to customer's needs
This allows companies to outsource their IT systems and therefore reduce their IT costs while being
more efficient and flexible. This paper presents the work that has been done as part of our project whose
aim is to design and deploy a private cloud environment, by studying and exploring the features offered
by an open source platform. OpenStack was our solution of choice to begin the implementation of the
project, a platform that meets the needs of end users.
Abrviation Dsignation
IP Internet Protocol
VM Virtual Machine
Remerciements ......................................................................................................................................... 1
Rsum ..................................................................................................................................................... 2
Abstract .................................................................................................................................................... 3
Liste des acronymes ................................................................................................................................. 4
Liste des figures........................................................................................................................................ 5
Table de matires...................................................................................................................................... 6
Introduction gnrale ................................................................................................................................ 8
Partie 1 : Etat de lart sur le Cloud computing ......................................................................................... 9
Chapitre 1 : Concept et Dfinition ........................................................................................................... 9
1. Dfinition et gnralit ................................................................................................................ 10
2.1 Introduction .......................................................................................................................... 10
2.2 Historique du Cloud Computing .......................................................................................... 10
2.3 Dfinition Du cloud Computing .......................................................................................... 10
2. Elments consititufs du Cloud computing................................................................................... 11
2.1 La virtualisation ................................................................................................................... 11
2.2 Hyperviseur .......................................................................................................................... 12
2.3 Centre de donn ( Le datacenter ): ....................................................................................... 13
3. Les formes du dploiement du cloud .......................................................................................... 13
3.1 Le nuage Public :.................................................................................................................. 13
3.2 Le nuage priv :.................................................................................................................... 14
3.3 Le nuage hybride :................................................................................................................ 14
4. Les services du cloud : ................................................................................................................ 15
5.1 IaaS : .................................................................................................................................... 15
5.2 PaaS ...................................................................................................................................... 15
5.3 SaaS ...................................................................................................................................... 16
5.4 Synthse ............................................................................................................................... 16
5. Avantage et inconvnient du cloud : ........................................................................................... 16
4.1 Avantage : ............................................................................................................................ 16
4.2 Inconvnient : ....................................................................................................................... 17
6. Conclusion :................................................................................................................................. 17
Chapitre 2 : Analyse et reprsentation de la solution ............................................................................. 18
1. Introduction : ............................................................................................................................... 19
2. Solutions du cloud existantes : .................................................................................................... 19
2.1 Solutions propritaires : ....................................................................................................... 19
2.2 Solution libre ou Open Source : ........................................................................................... 20
Le Cloud Computing est le nouveau pilier des technologies de linformation bases sur Internet.
Son expansion fulgurante durant la dernire dcennie en est la preuve criante. Le but de cette technologie
est de faciliter la vie aux internautes ainsi qu tout organisme basant son champ dactivits sur Internet.
Ceci est d lapproche innovante et originale quentreprend le Cloud Computing envers le domaine
informatique. Cette nouvelle philosophie, puissions nous la nommer de tel, est rsume en le principe
de ne payer que ce qui est consomm En effet face l'augmentation continue des cots de mise en
place et de maintenance des systmes informatiques, les entreprises externalisent de plus en plus leurs
services informatiques en les confiant des entreprises spcialises comme les fournisseurs du Cloud.
L'intrt principal de cette stratgie pour les entreprises rside dans le fait qu'elles ne paient que pour les
services effectivement consommes. Quant au fournisseur du Cloud, son but est de rpondre aux besoins
des clients en dpensant le minimum de ressources possibles. Une des approches qu'utilise le fournisseur
consiste mutualiser les ressources dont il dispose afin de les partager entre plusieurs entreprises. Le
"Cloud Computing" celui-ci consiste en une interconnexion et une coopration de ressources
informatiques, situes dans diverses structures internes, externes ou mixtes et dont le mode d'accs est
bas sur les protocoles et standards Internet. Le Cloud Computing est devenu ainsi, le sujet le plus
dbattu aujourd'hui dans le secteur des technologies de l'information. Le consensus qui se dgage est
que le Cloud Computing jouera un rle de plus en plus important dans les oprations informatiques des
entreprises au cours des annes venir. Depuis lapparition de cette technologies, et aux bnfices
quelle apporte les entreprises migrent grand pas vers le Cloud donne la naissance dun nombre
important de plateforme open source comme OpenStack, CloudStack, OpenNebula et Eucalyptus et
propritaire comme Microsoft Azure, Vcloud, Amazone EC2 et CloudForms pour la mise en place de
cette technologie.
Chapitre 1 :
Concept et Dfinition
La virtualisation permet de fournir les ressources ncessaires au support des applications du Cloud.
En fait, la mise en place d'une infrastructure virtualise est la premire tape de la cration d'un Cloud.
La virtualisation reprsente un ensemble de techniques matrielles et logicielles qui permettent de
faire fonctionner plusieurs systmes d'exploitation sur une mme machine physique et autorisent
lexcution de plusieurs applications indpendantes sur un mme serveur. Donc il sagit dune
technologie qui partitionne une machine physique en plusieurs machines virtuelles partageant les
Un hyperviseur de Type 1, ou natif, "bare metal" (littralement "mtal nu"), est un logiciel qui
s'excute directement sur une plateforme matrielle ; cette plateforme est alors considre comme outil
de contrle de systme d'exploitation. Un systme d'exploitation secondaire peut, de ce fait, tre excut
au-dessus du matriel. L'hyperviseur type 1 est un noyau hte allg et optimis pour ne faire tourner
initialement que des noyaux de systmes d'exploitation invits adapts et optimiss cette architecture
spcifique, ces systmes invits ayant "conscience" d'tre virtualiss. Sur des processeurs ayant les
instructions de virtualisation matrielle (AMD-V et Intel VT), le systme d'exploitation invit n'a plus
besoin d'tre modifi pour pouvoir tre excut dans un hyperviseur de type 1. Les machines virtuelles
utilisant un noyau Linux KVM, qui transforment un noyau Linux complet en hyperviseur, sont
galement considres comme hyperviseurs de type 1.
Type 2
Un hyperviseur de Type 2 est un logiciel qui s'excute l'intrieur d'un autre systme d'exploitation.
Un systme d'exploitation invit s'excutera donc en troisime niveau au-dessus du matriel. Les
systmes d'exploitation invits n'ayant pas conscience d'tre virtualiss, ils n'ont pas besoin d'tre
Ce type de Cloud combine les Cloud public et priv. On peut ainsi dporter nos applications vers
un Cloud public qui consommera des donnes stockes et exposes dans un Cloud priv, ou bien faire
communiquer deux applications hberges dans deux Cloud privs distincts, ou encore consommer
plusieurs services hbergs dans des Cloud publics diffrents.
5.1 IaaS :
LIaaS ou l'infrastructure en tant que service permet aux entreprises de disposer la demande d'une
infrastructure matrielle virtuelle (les serveurs virtuels, les rseaux (routeurs et commutateurs), les
espaces de stockage, les machines virtuelles et les systmes dexploitation) qui est localise
physiquement distance dans des Datacenters chez le prestataire du service. Donc les entreprises
exploitent le matriel comme un service distance et la demande.
LIaaS offre une grande flexibilit avec une administration distance et permet aux entreprises de
s'affranchir compltement de l'achat et de la gestion du matriel physique (cots de gestion,
remplacement de matriel, climatisation, lectricit), ce qui les aide normment se concentrer
en premier sur leurs processus mtiers sans se proccuper du matriel.
5.2 PaaS
Le PaaS ou la plateforme en tant que service assure un environnement d'excution en ligne qui
fournit spcialement aux dveloppeurs des plateformes (bases de donnes, serveurs d'application comme
Apache Tomcat) sur lesquelles ils peuvent dvelopper, tester, dployer et hberger leurs applications
web via lInternet.
Ce service vite donc aux dveloppeurs et les entreprises dacheter, dinstaller et de grer par exemple
les logiciels, les middlewares et les bases de donnes. En contrepartie, il les aide se concentrer sur la
partie dveloppement des applications.
L'accs au Cloud passe ncessairement par une connexion internet : par consquent, si votre
connexion est coupe, momentanment ou durablement, vous n'avez plus accs vos
documents ou service, Scurit : la plateforme Cloud, si elle est externe (non installe sur le
rseau interne ou avec une ouverture extrieure) doit tre suffisamment scurise pour viter
le risque dintrusion, de vol des donnes par piratage.
6. Conclusion :
Le Cloud Computing est certainement contribu rduire les problmes, qu'ils sont tourments les
entreprises comme : espace de stockage, ralisation les diffrentes applications et la disponibilit de
donnes. Donc le Cloud est un modle de distribution et de partage de ressources grand chelle, qu'il
offre les utilisateurs un environnement plus simple et plus efficace pour travaille, parmi d'intrt de
Cloud : facilit de travail, augmente la collaboration, rduire le cot de matriel et vit le dplacement
de client pour obtenir une donne
VMware est une entreprise filiale dEMC cre en 1998 Palo Alto. Pendant plus de 10 ans, elle a
conu diffrents produits lis la virtualisation. En 1999 apparaissait la premire version de VMware
Workstation, un logiciel client permettant la virtualisation de machines
virtuelles. D'autres ditions comme la gamme ESX ou Server (anciennement
GSX) proposent des solutions de virtualisation pour les serveurs. Depuis 2008,
VMware n'a cess d'investir dans le march du Computing, en rachetant
diffrentes entreprises comme Zimbra (application SaaS de collaboration) ou SpringSource pour son
offre PaaS avec vFabric. Ce logiciel permet de crer et grer votre Cloud priv en manire simple, il
regroupe les ressources informatiques avec davantage defficacit pour offrir des services plus flexibles
et plus dynamiques que les utilisateurs peuvent dployer automatiquement et il donne la possibilit de
crer des machines virtuelles selon des besoins des utilisateurs. Il permet aussi : La possibilit de
transformer simplement les serveurs physiques en serveurs virtuels. - Augmenter les ressources de votre
Cloud priv sans interruption de service. - Rduire facilement vos budgets IT.
2.1.1. OpenNebula
2.1.2. Eucalyptus
2.1.3. CloudStack
2.1.4. OpenStack :
OpenStack est un projet open Source de CloudComputing priv et public. Il est dvelopp par la
NASA National Aeronautics and Space Administration , qui est l'agence gouvernementale qui a en
charge la majeurepartie du programme spatial civil des tats-Unis, et Rackspace Cloud, un fournisseur
de plate-forme de Cloud Computing depuis juillet 2010. Rackspace fournit les outils de gestion des
fichiers dans le cloud, tandis que la NASA apporte les outils de gestion de l'IaaS. Ces deux socits ont
ensuite t rejointes par Cloud.com, Citrix Systems, Dell, Cloudkick, Intel, et Cisco pour le
dveloppement d'OpenStack. Cette plate-forme est intgre dans les distributions Ubuntu Server.
L'objectif d'OpenStack est de rendre le Cloud simple mettre en uvre et trs extensible.
En ce qui suit une brve description de chacun des modules constituants lOpenStack
Chapitre 1 :
Dploiement & Test dOpenstack
Vu que la procdure dinstallation de chaque module est trop longue, nous nous somme contents
de nexposer que linstallation avec script pour les modules principaux.
4.1.2. Exemple darchitecture a implementer
Pour notre installation de test nous avons utilis lexemple darchitecture suivante :
Le nud contrleur (controller node) excute le service d'identit, service de l'image, tableau
de bord, la partie management du service du Calcul (keystone, glance, nova, neutron).Il
contient galement les services d'API associes, la base de donnees MySQL et le systeme de
messagerie RabbitMQ.
Le nud de calcul (Compute Nod) execute la partie de l'hyperviseur de Compute, qui
execute les machines virtuelles des tenants. Par defaut, Compute utilise KVM comme
hyperviseur et neutron-openvswitch-agent pour la connectivit et le service nova-compute.
On peut executer plus d'un noeud de calcul (Compute Node).
Nous voyons comment creer un nud controleur (Controller node) qui va contenir la plupart des
services dOpenstack et le nud de calcul (Compute node) qui va executer les instances des machines
virtuelles. OpenStack est flexible pour ce qui concerne comment et ou on execute chaque service,
plusieurs configurations sont possibles. Toutefois, nous devons configurer certains parametres du
systeme d'exploitation sur chaque nud.
Selon la documentation officielle, il est recommand fortement d'installer un systeme d'exploitation 64
bits sur les nuds de calcul. (Compute node). Si nous utilisons un systeme d'exploitation 32-bit, le
demarrage dune machine virtuelle avec une image 64 bits, echouera avec une erreur.
Pour un deploiement de production dOpenStack, la plupart des nuds doivent avoir ces interfaces
reseau :
Autant quun utilisateur final du Cloud OpenStack, nous pouvons disposer nos propres ressources dans
les limites fixees par les administrateurs. Dans cette section nous detaillons les operations de base que
peut effectuer un utilisateur final du service Cloud Iaas :
- Se connecter au tableau de bord Openstack
- Creer et gerer des images
- Acceder a linstance a partir du VNC console
- Acceder a linstance via SSH
- Suivi de lutilisation des instances
- La gestion des volumes
- Attacher un volume a une instance
Il y a plusieurs methodes pour effectuer ces taches soit par :
Le tableau de bord OpenStack (Dashboard) : Utilisons cette interface graphique basee sur
le Web, le nom du code de projet est Horizon, pour consulter, creer et gerer les ressources.
La ligne de commande client dOpenStack : Chaque projet de base dOpenStack a une ligne
de commande client qui nous permet d'executer des commandes simples pour visualiser,
creer et gerer les ressources dans un Cloud et automatiser des taches a l'aide des scripts.
Le tableau de bord est disponible sur le nud avec le role server nova-dashboard.
1- La premiere etape est de demander a l'operateur Cloud le nom d'hote ou l'adresse IP publique a
partir de laquelle nous pouvons acceder au tableau de bord, nous demandons aussi le nom
d'utilisateur et le mot de passe pour la connexion au tableau de bord dopenstack.
Figure 14: Cration d'un nouveau projet avec le bouton Crer un projet.
4-Avec OpenStack il ya la possibilit dajouter nimporte quel type dimages (ISO, VDI, QCOW2,
VDH..)
8- CliquonsAdd.
Ce que nous avons obtenu apres lajout des deux regles :
Figure 20: allocation dune adresse IP flotante a partir dune plage d'adresses existante
** Lancer une instance
Lorsque nous lancons une instance d'une image, OpenStack cree une copie locale de l'image sur le nud
de calcul (Compute) ou l'instance demarre.
Au cours des scenarios precedents, nous avons obtenu une infrastructure fonctionnelle, accueillant
des VMs pouvant hberger les applications metiers du client. Cependant, il reside un gros point critique
dans cette infrastructure, concernant les composants de gestion. En effet, si le Cloud Controller venait a
etre hors-service, il nous serait alors impossible de gerer nos VMs ou den creer de nouvelles. Par
consequent, nous devons repenser linfrastructure afin de mettre en place des systemes redondants pour
limiter au maximum des situations dechec.Ceci pourra etre mis en place grace a des mecanismes
permettant de construire un environnement de Haute-Disponibilite (High Availability -> HA).
De nombreuses solutions de HA existent, mais parfois, elles peuvent vite representer une lourdeur
supplementaire, et par consequent compliquer grandement notre systeme en risquant de le rendre
instable. A travers cete section, nous presentons plusieurs types de HA, qui auront toutes un role precis
pour chaque element que nous devons rendre disponible.
Le terme de cluster (grappe en franais) fait rfrence une batterie d'ordinateurs, tous
interconncts, dans le but de partager des ressources informatiques.
En d'autres termes, un cluster peut tre :
soit un ensemble d'ordinateurs connects en rseaux et capable de traiter de concert un mme
travail. Par exemple le cumul de puissances des machines du cluster peut afficher un rsultat
inimaginable pour un particulier dsirant faire du rendu d'images de synthse ses temps
perdu.
soit un ensemble d'ordinateurs connects en rseaux dans le but de rpartir des tches sur
chaque machine du clusters. Par exemple un cluster de tches systmes allouera chaque
machine du cluster un ensemble de processus traiter suivant sa charge et sa puissance de
calcul.
Les principales problmatiques auxquelles rpondent les clusters sont lies la qute de puissance
et la diminution du temps d'xcution de tches. De plus, le cluster forme un systme informatique
plus fiable car il reprsente un ensemble o le stockage des donnes est redondant sur chaque ordinateur.
Ainsi, le cluster (quelqu'il soit) offre une meilleure qualit de service (QOS) aux utilisateurs.
5.1 le Cluster MySQL
Un Cluster MySQL est un groupe de processus qui s'excutent sur plusieurs serveurs MySQL, des
noeuds NDBCluster, et des processus d'administration, ainsi que des processus d'accs spcialiss. Tous
ces programmes fonctionnent ensemble pour former un Cluster MySQL. Lorsque les donnes sont
En conclusion, le travail effectu aborde principalement un dploiement dun cloud priv sous
OpenStack. Nous avons donn une ide gnrale sur le Cloud Computing, son architecture et ses
diffrents services.
Nous avons fait par la suite une tude sur diffrentes solutions open source et propritaires du Cloud
tout en prcisant les techniques de virtualisation utiliss dans chacune d'entre elles.
Ceci nous a permis d'avoir une ide riche sur les techniques de virtualisation ainsi que les diffrentes
solutions disponibles du Cloud Computing et surtout de bien maitriser le concept du Cloud.L tudes
faite prcdemment nous a permet de choisir la solution adapter pour qui est OpenStack.
A court terme et en se basant sur l'tude technique ralise sur le Cloud Computing, nous pourrons
mettre en place un environnement Cloud si les contraintes matrielles seront relaxes.
[1] https://www.openstack.org/
[2] https://docs.openstack.org/developer/devstack/
[3] https://docs.openstack.org/developer/devstack/guides/neutron.html
[4] http://fr.wikipedia.org/wiki/OpenStack
[5] http://www.lemondeinformatique.fr/flux-rss/cloud-computing/page-35.html
[6] http://docs.cloudstack.apache.org/en/master/
[7] http://fr.wikipedia.org/wiki/OpenStack
[8] http://csrc.nist.gov/groups/SNS/cloud-computing/.
[9] https://oliverveits.wordpress.com/2016/06/21/getting-started-with-openstack-using-
devstack/comment-page-1/
[10] https://blog.nicolargo.com/2011/09/cluster-mysql-tutoriels-et-documentations-15.html
[11] https://www.digitalocean.com/community/tutorials/how-to-create-a-multi-node-mysql-
cluster-on-ubuntu-16-04
[12] http://www.duquesnegroup.com/Tech-Les-fonctions-de-base-d-un-cluster-de-
serveurs_a296.html
Ouvrage et tudes
[13] Cloudopenstack-131021155100-phpapp02.pdf
[14] OpenStack-AppDevMigration8x10Booklet-v10-online.pdf
[15] 20111115_OpenStack_Briefing_1ere_Partie.pdf
[16] paper112_article_rev2024_20151109_174036.pdf