Mes parents
Ma mèreNaima, qui a œuvré pour ma réussite, de par son amour, son soutien, tous les sacrifices consentis et ses précieux
conseils, pour toute son assistance et sa présence dans ma vie, reçois à travers ce travail aussi modeste soit-il, l'expression de
Mon pèreMongi, Tu as su m’inculquer le sens de la responsabilité, de l’optimisme et de la confiance en soi face aux
difficultés de la vie. Tes conseils ont toujours guidé mes pas vers la réussite. Ta patience sans fin, ta compréhension et ton
Qui n'ont cessé d'être pour moi des exemples de persévérance, de courage et de générosité.
Qui m’ont donné, le soutien, le courage et l’amour tout au long de la période du stage et qui m’ont soutenuet aidé.
J’exprime mes sentiments les plus profonds et leur dédie ce modeste travail.
Amal …
DEDICACE
A mes chères sœurs et à mon cher frère pour leur respect et leur amour
inconditionnels.
A mon cher binôme Amal, au plus proche de mon cœur Mootez, à mes chères
Rania, Malek, Imen, Sayda.
A mes chères amies Sana, Amal, Cyrine, Awatef , Hanen et Ameni qui font partie
de ces personnes rares par leur gentillesse, leur tendresse et leurs grands cœurs. Qu’ils
trouvent ici, le témoignage de tout mon amour et toute ma reconnaissance pour leur
inlassable soutien. Je vous souhaite une vie pleine de réussite, de santé et de bonheur.
A mes chers professeurs, et à tous ceux qui ont contribué de près ou de loin à
l’accomplissement de ce travail.
Maha …
REMERCIEMENTS
Au terme de ce projet de fin d’étude, nos vifs remerciements sont dédiés à tous ceux qui ont
En Premier lieu, nous remercions Monsieur Hrizi Hafedhnotre encadrant, maître Assistantau sein de
l’institut supérieur de sciences appliquées et de technologie de Mateur, pour sa disponibilité, ses directives et
son sens du détail nous ont permis de soigner et d’améliorer constamment la qualité de ce travail.
Nos remerciements s’adressent également à Monsieur Jied Med Amine, notre encadrant coté entreprise, qui a
toujours trouvé le temps de faire le suivi de notre travail et d’être à l’écoute lorsque nous rencontrions des
Nous exprimons notre gratitude à tous les responsables au sein de Group Ooredooqui nous ont donné
C’est avec une immense fierté qui nous adresse nos remerciements les plus distingués à tous nos enseignants
de l’ISSAT qui nous ont transmis leur savoir et nous ont assuré la meilleure des formations.
MERCI …
TABLE DE MATIRES
INTRODUCTION GENERAL..............................................................................................................................1
CHAPITRE 1.......................................................................................................................................................4
CONTEXTE GENERAL DE PROJET...................................................................................................................4
Introduction........................................................................................................................................................5
1. Historique..............................................................................................................................................5
2. Les qualités d’Ooredoo...........................................................................................................................6
3. Organisation d’Ooredoo.........................................................................................................................6
4. Hiérarchie de la direction technique.......................................................................................................7
5. Présentation d’Ooredoo..........................................................................................................................8
6. Identité visuelle d’Ooredoo.....................................................................................................................8
II. Cadre de Projet......................................................................................................................................8
Lot 1 :..............................................................................................................................................................8
Lot 2 :..............................................................................................................................................................9
III. Etude préalable......................................................................................................................................9
1. Etude de l’existant..................................................................................................................................9
2. Critique de l’existant..............................................................................................................................9
3. Solution proposée.................................................................................................................................10
4. Objectif du Projet.................................................................................................................................10
IV. Analyse et spécifications des besoins.....................................................................................................11
1. Besoins fonctionnels.............................................................................................................................11
2. Besoins non fonctionnels.......................................................................................................................11
Conclusion........................................................................................................................................................12
CHAPITRE 2 : CLOUD COMPUTING : ETAT DE L’ART..................................................................................14
Introduction......................................................................................................................................................14
I. Notion de Cloud Computing......................................................................................................................14
II. Historique de Cloud Computing...........................................................................................................14
III. Les formes de déploiement du Cloud Computing.................................................................................15
1. Le Cloud public....................................................................................................................................15
2. Le Cloud privé.....................................................................................................................................15
3. Le Cloud hybride.................................................................................................................................16
IV......................................................................................................................................................................16
V. Les modules de Cloud Computing........................................................................................................16
1. IaaS - Logiciel en tant que service (Infrastructure as a Service)...........................................................17
a. Avantages.........................................................................................................................................17
b. Inconvénients...................................................................................................................................17
c. Prestataires......................................................................................................................................17
2. PaaS - Plate-forme en tant que service (Plateform as a Service)...........................................................17
a. Avantages.........................................................................................................................................18
b. Inconvénients...................................................................................................................................18
c. Prestataires......................................................................................................................................18
3. SaaS – Application en tant que Service (Software as a Service)............................................................18
a. Avantages.........................................................................................................................................18
b. Inconvénients...................................................................................................................................19
c. Prestataires......................................................................................................................................19
VI. Avantages et inconvénients du Cloud Computing.................................................................................20
1. Avantages.............................................................................................................................................20
2. Inconvénients.......................................................................................................................................20
VII. Virtualisation.......................................................................................................................................20
1. Le Cloud et la virtualisation :.......................................................................................................20
2. Notion de virtualisation................................................................................................................21
3. Virtualisation de serveurs............................................................................................................21
a. Les hyperviseurs...........................................................................................................................22
b. Etude comparative des différentes technologies virtualisation..............................................24
c. Etude comparatifs entre les solutions Cloud Computing........................................................25
4. Le choix de la solution.................................................................................................................25
5. OpenStack, la solution adoptée..................................................................................................27
a. Les versions d’OpenStack................................................................................................................27
b. Les principaux composants logiciels d’OpenStack...........................................................................28
Conclusion........................................................................................................................................................32
CHAPITRE 3 : CONCEPTION DE L’APPLICATION OPENSTACK...................................................................33
Introduction......................................................................................................................................................34
I. Conception.................................................................................................................................................34
II. Description des diagrammes.................................................................................................................34
III. Spécification générale...........................................................................................................................34
IV. Identification des acteurs......................................................................................................................35
V. Identification des cas d’utilisations.......................................................................................................35
1. Diagramme de cas d’utilisation système administrateur...................................................................35
2. Diagramme de cas d’utilisation système client..................................................................................36
3. Diagrammes de cas d’utilisations détaillés........................................................................................36
a. Cas d’utilisations gestion des images................................................................................................36
b. Cas d’utilisation gestion des projets.................................................................................................37
c. Cas d’utilisation gestion des utilisateurs...........................................................................................37
d. Cas d’utilisation gestion des instances..............................................................................................38
VI. La mise en place de la solution OpenStack...........................................................................................38
1. Architecture d’installation...............................................................................................................38
2. Utilisateurs du système.....................................................................................................................39
a. L’administrateur..............................................................................................................................39
b. L’utilisateur.....................................................................................................................................40
c. Diagrammes.....................................................................................................................................40
VII. Architecture générale...........................................................................................................................42
1. Déploiement « all in one ».....................................................................................................................42
2. Déploiement sous diffèrent nœuds........................................................................................................42
a. Nœud de contrôleur..........................................................................................................................44
b. Nœud de calcul.................................................................................................................................44
3. Les composants de chaque nœud..........................................................................................................45
a. Le Dashboard d’OpenStack.............................................................................................................45
b. Service de messagerie.......................................................................................................................45
c. Service d’identité.............................................................................................................................45
d. Service de calcul...............................................................................................................................46
e. Service d’image................................................................................................................................47
f. Service de réseau..............................................................................................................................47
Conclusion........................................................................................................................................................48
CHAPITRE 4 :REALISATION DE LA SOLUTION............................................................................................49
Introduction......................................................................................................................................................50
I. Réalisation.................................................................................................................................................50
1. Environnement de travail.....................................................................................................................50
a. Environnement matériel...................................................................................................................50
b. Environnement logiciel.....................................................................................................................50
II. Installation et configuration.................................................................................................................50
1. Implémentation....................................................................................................................................50
a. Installation de composants OpenStack.............................................................................................50
b. Prérequis..........................................................................................................................................51
c. Les paquets à installer......................................................................................................................51
2. Préparation du système........................................................................................................................51
a. Réseau..............................................................................................................................................51
b. Serveur NTP....................................................................................................................................51
c. RabbitMQ........................................................................................................................................52
d. Mysql...............................................................................................................................................52
e. Keystone..........................................................................................................................................52
f. Préparation de la base de données Mysql.........................................................................................52
3. Installation...........................................................................................................................................53
4. Utilisation et Test d’OpenStack............................................................................................................66
a. Interface Authentification au nuage.................................................................................................66
b. Authentification...............................................................................................................................66
Conclusion........................................................................................................................................................80
CONCLUSION GENERALE..............................................................................................................................81
REFERENCES...................................................................................................................................................83
TABLE DES ABREVIATIONS..........................................................................................................................85
LISTE DES FIGURES
2
Cloud Computing pour Tunisie Ooredoo en s’appuyant sur des technologies de
virtualisation et de gestionnaire de CloudOpen Source : « OpenStack ». Le présent
document synthétise tout le travail effectué dans cette perspective.
Tout au long de ce projet, nous traiterons cinq chapitres :
3
CHAPITRE 1
CONTEXTE GENERAL DE PROJET
4
CHAPITRE 1 : CONTEXTE GENERAL DE PROJET
Introduction
5
Vers la fin de 2006, Ooredoo comptait à son actif près de 3 million d’abonnés et
avait raflé près de 46 % de la part du marché. [1]
2.
6
Chapitre 1 Contexte général de Projet
Direction
Direction des Administrative
Resources et Financière
Humaines
Département
Juridique
Direction
Service Client
Direction Direction
Qualité et
Générale Programme
Direction de la
régulation et
du business
international
Direction
Direction Marketing
Technique
Direction
des ventes
7
Chapitre 1 Contexte général de Projet
Notre stage a été effectué dans la direction technique(DT), plus précisément dans le
département Support IT et bureautique.
8
Chapitre 1 Contexte général de Projet
5. Présentation d’Ooredoo
9
Chapitre 1 Contexte général de Projet
Lot 2 :
Développement d’un nuage privé exploitable via un portail qui optimise
l’utilisation des ressources informatiques de la société.
III. Etude préalable
Une étape essentielle de tout projet informatique consiste à effectuer une étude
complète des outils actuels pour lesquels nous voulons apporter des solutions afin de
déceler les défaillances et les insuffisances auxquelles nous devons remédier. En effet
dans la majorité, voir dans la totalité des cas, la mise en place d’un projet est due à un
problème ou un manque dans l’entreprise. Il faut donc bien étudier l’existant pour
aboutir à une spécification efficace des besoins de l’entreprise. Dans ce qui suit, nous
commençons par une description de l’existant et la critique de ses limites et enfin nous
annoncerons la solution.
1. Etude de l’existant
2. Critique de l’existant
10
Chapitre 1 Contexte général de Projet
du temps qui est un facteur très important et qui est pris en compte dans le délai de
création.
Le coût assez élevée de l’exploitation de la solution commerciale, en effet sans clé
de licence saisie à l‘installation ESX présente un mode d’évaluation pour 60 jours. Au-
delà de la période d’évaluation, il n’est plus possible d’accéder à l’hyperviseur. Les
machines virtuelles démarrées restent néanmoins en ligne.
3. Solution proposée
Le projet consiste à étudier et mettre en place un Cloud privé au sein d’Ooredoo via
la solution Cloud IaaS basée sur OpenStack .Chaque utilisateur devra avoir la possibilité
de gérer ses ressources sans l’intervention d’un administrateur grâce à un portail
accessible à travers une interface Web. Ainsi, chaque client pourra, tout seul, créer et
utiliser des machines virtuelles et modifier ses ressources en cas de besoin. Cette
solution propose aussi à l’administrateur Cloud un portail qui lui permet de faire le
monitoring des serveurs virtuels. Il pourra aussi gérer les comptes des utilisateurs à
travers son propre portail.
Etude de projet
Installation le système d’exploitation CentOS7
Installation d’OpenStack
Créer les différents services fournit par OpenStack
Créer des machines virtuelles pour clients d’Ooredoo
4. Objectif du Projet
11
Chapitre 1 Contexte général de Projet
Services à la demande :Les besoins métiers sont variables. L’IT doit être réactif
pour fournir des services performants et en un minimum de temps. Ainsi les niveaux de
services fournis par les acteurs de l’IaaS répondent à de tels enjeux.
12
Chapitre 1 Contexte général de Projet
La disponibilité :l’application doit être disponible pour être utilisée à tout instant et
n’importe quel endroit où l’utilisateur se trouve.
L’ergonomie :L’application offre une interface conviviale et facile à utiliser.
L’utilisabilité : l’interface de l’application doit être claire pour que l’utilisateur ait la
possibilité de l’utiliser sans problème ou difficulté.
Conclusion
En vue de suivre un avancement logique dans ce rapport, l’état de l’art fera l’objet
du chapitre suivant.
13
CHAPITRE 2 : CLOUD
COMPUTING :ETATDE L’ART
14
CHAPITRE 2 : CLOUD COMPUTING : ETAT DE L’ART
Introduction
Dans ce chapitre nous ferons une description des nouvelles technologies utilisées
tout au long de la réalisation de notre projet d’où la définitiondu Cloud Computinget de
la virtualisation.
L’idée du Cloud Computing a pris naissance en 1990 et surtout en 1991 avec la naissance
d’Internet et la mise sur le marché du logiciel CERN qui a été le premier logiciel accessible
par le Web. Ensuite, l’idée a progressé avec l’apparition de nouvelles solutions IT le
lancement du navigateur Mosaic en 1993 et celui du navigateur Netscape en 1994. En 1995, la
découverte d’EBay et d’Amazon a encore accéléré le processus. Enfin, le lancement en 1996
15
Chapitre 2 Cloud Computing : Etat de L’art
de l’assistant Palm PDA a donné une nouvelle impulsion.En 2000, l’arrivée de Google a
favorisé une réelle émergence du Cloud Computing. Dans l’avenir, le Cloud Computing
devrait connaître une belle croissance car moins de 10% des sociétésy avaient recours en
2009. Nous prévoyons que 30 à 50 % des sociétés devraient utiliser ce service bien que les
entreprises semblent préférer le cloud privé. Il se peut que l’arrivée de nouvelles solutions IT
provoque une accélération du phénomène.[3]
Les entreprises peuvent choisir de déployer des applications sur des Clouds publics, privés ou
hybrides. Les intégrateurs Cloud peuvent jouer un rôle essentiel dans la détermination du bon
chemin de Cloud pour chaque organisation. Nous distinguons trois formes de Cloud Computing
tels que le Cloud public, également le premier apparu, le Cloud privé et le Cloud hybride qui est
en fait la combinaison des deux premiers.
1. Le Cloud public
Les nuages publics sont détenus et exploités par des tierces parties, ils offrent des
économies d’échelle supérieures aux clients, car les coûts d’infrastructure sont répartis entre
un mélange d’utilisateurs, donnant à chaque client un modèle attrayant à faible coût Pay-as-
you-go (payer selon la consommation). Tous les clients partagent le même pool
d’infrastructure avec une configuration limitée (demande de lourds investissements pour le
fournisseur de services), des protections de sécurité (n’est pas sécurisé) et des écarts de
disponibilité (Offre un maximum de flexibilité). Ceux-ci sont gérés et pris en charge par le
fournisseur de Cloud notamment qu’Amazon et Google. Un des avantages d’un Cloud public
est :
C'est un environnement déployé au sein d'une entreprise. Ainsi, elle doit gérer toute
seule son infrastructure. Dans ce cas, implémenter un Cloud privé signifie transformer
16
Chapitre 2 Cloud Computing : Etat de L’art
l'infrastructure interne en utilisant des technologies telles que la virtualisation pour enfin
délivrer, plus simplement et plus rapidement, des services à la demande. L'avantage de
ce type de Cloud par rapport au Cloud public réside dans l'aspect de la sécurité et la
protection des données.
En effet, l'ensemble du matériel est conservé au sein de votre propre emplacement. De
ce fait, les ressources sont détenues et contrôlées par votre propre département
informatique.
Ce modèle est :
Cher pour le client.
Dédié et sécurisé.
Moins flexible comparé au Cloud public.
3. Le Cloud hybride
Les Clouds hybrides combinent des modèles Cloud publics et privés. Avec un Cloud
hybride, les fournisseurs de services peuvent utiliser des fournisseurs de Cloud tiers de
manière complète ou partielle, augmentant ainsi la souplesse de l’informatique.
L’environnement Cloud hybride est capable de fournir à la demande une échelle provisionnée
en externe. La possibilité d’augmenter un nuage privé avec les ressources d’un Cloud public
peut être utilisée pour gérer toute surtension inattendue dans la charge de travail.
IV.
V. Les modules de Cloud Computing
17
Chapitre 2Cloud Computing : Etat de L’art
Désigne que nous disposons d’une infrastructure (serveurs, stockage, réseau) hébergée
dans les centres de données cloud. L’accès à la ressource est complet et sans restriction,
équivalent de fait à la mise à disposition d’une infrastructure physique réelle.Si vous
souhaitez utiliser ce matériel virtualisé ou cesserveurs, nous devons payer les fournisseurs de
cloud.
a. Avantages
Eviter l’achat et la gestion de matériel.
Offre une grande flexibilité.
Contrôle total des systèmes (administration à distance par ssh ou RDP).
Capacité de stockage infini.
b. Inconvénients
Besoin d'administrateurs systèmecomme pour les solutions serveurs classiques sur site.
Demande pour les acteurs du cloud des investissements très élevés
c. Prestataires
AmazonEC2, RackSpace, Terremark, GoGrid.
2. PaaS - Plate-forme en tant que service (Plateform as a Service)
18
Chapitre 2Cloud Computing : Etat de L’art
Ce module permet aux utilisateurs de créer leurs propres applications Cloud à l'aide de
fournisseurs de services Cloud avec des outils et des langues spécifiques simplifiés. PaaS est
un service totalement intégré pour les bases de données, les applications Web et les
déploiements.
a. Avantages
Facilite à gérer les développements des applications
Le déploiement est automatisé, pas de logiciel supplémentaire à acheter ou à installer.
Pas d’infrastructure nécessaire
Pas d’installation
b. Inconvénients
L’application doit être programmée pour la plate-forme cible.
La sécurité des données doit être prise en compte et analysée, car les informations sont
stockées hors site.
La récupération des donnés peut être difficile.
Un fournisseur de PaaS moins qu'idéal pourrait laisser votre entreprise frustrée, besoin
de bons niveaux de vitesse, de fiabilité et de support pour que PaaS en vaille la peine.
c. Prestataires
Google avec Google App Engine, Microsoft avec Windows Azure, Force.com.
3. SaaS – Application en tant que Service (Software as a Service)
19
Chapitre 2 Cloud Computing : Etat de L’art
Plus de licence.
Paiement à l’usage.
Facilité de faire le test de nouveaux logiciels.
b. Inconvénients
Dépendance total du prestataire.
Difficulté de changement de prestataire.
Le coût du fonctionnement en mode SaaS peut-être nettement supérieur à
l’acquisition de l’application.
Interruptions de service.
c. Prestataires
Google avec Google Drive, Microsoft avec Office 365.
20
Chapitre 2 Cloud Computing : Etat de L’art
21
Chapitre 2Cloud Computing : Etat de L’art
virtualisation des ressources. D’un autre côté, le Cloud propose plusieurs projets qui
proposent plusieurs services qui permettent la gestion des ressources. Dans cette partie,
nous nous intéresserons aux technologies de virtualisation ainsi qu’aux solutions Cloud
en particulier la solution OpenStack.
2. Notion de virtualisation
3. Virtualisation de serveurs
22
Chapitre 2 Cloud Computing : Etat de L’art
De coup, un serveur exploitant ces capacités s’avère plus économe qu’un ensemble
utilisant uniquement un faible pourcentage de ces capacités.
Ainsi, la virtualisation des serveurs offre une grande flexibilité dans la répartition
des charges pour une utilisation optimale des ressources ainsi que plusieurs autres
avantages dont nous citons :
Réduction des coûts en matériel et en exploitation (entretien, consommation,
etc.) des sauvegardes et des snapshots simplifiés.
Mise en place d’un cloud privé : déploiement d’un ensemble de services sous
forme de machines virtuelles dimensionnées pour transformer l’informatique en un
centre de services.
a. Les hyperviseurs
23
Les2 machines
Chapitre Cloudvirtuelles utilisant
Computing : Etat de un
L’artnoyau Linux KVM, qui transforment un noyau
Linux complet en hyperviseur, sont également considérées comme hyperviseurs de type
1.
24
Chapitre 2 Cloud Computing : Etat de L’art
25
• Open source, moyen de créer une base commune (standard ouvert) sur
laquelle chacun eut développé sa valeur ajoutée en comparaison d’une offre
100% propriétaire comme VMware.
Inconvénients
• Modifier les couches basses des systèmes d’exploitation hôtes, afin qu’ils
puissent collaborer avec l’hyperviseur. Ces modifications sont assez intrusives et
altèrent profondément la façon dont le noyau travaille en interne.
Hyperviseur(ESXi)
Avantages
• Possède son système d’exploitation basé sur Linux.
Chapitre 2 •Cloud
La solution la plus
Computing : Etat performante
de L’art sur le marché -VMware propose d’autres
produits qui permettent de gérer les ESXi et de créer des vCenter et des vCloud.
Inconvénients
• Licence non gratuite et cout de déploiement élevé.
Hyperviseur (Hyper-V)
Avantages
• Produit libre Intégré dans noyau de linux
Inconvénients
• Moins performant
c. Etude comparatifs entre les solutions Cloud Computing
26
Chapitre 2 OpenStack
Cloud Computing : Etat de L’art OpenNebula Eucalyptus
Type de IaaS IaaS IaaS
service
27
programmati C++ +, Python
on
Interface Interface EC2 WS API EC2 WS
Utilisateur Web OCCI API API
Outils tel
que :
Chapitre 2 Cloud Computing : Etat de L’art Hybridfox
,
Elasticfox
Tableau 1: Etude comparative des différentes technologies de virtualisation
Donc la solution qui convient le mieux et qui répond aux besoins de l’entreprise est
OpenStack.
¤ Modulaire et innovante
¤ Evolutive
¤ Open source sécurisé en (Sous licence libre)
¤ Extensible
28
2011
Essex 5 avril 2012 Nova,Glance,Swift,Horizon, Keystone
Chapitre 2 PourCloud
La réalisation deEtat
Computing : notredeprojet
L’art nous avons utilisé la version Mitaka.
b. Les principaux composants logiciels d’OpenStack
Nova :
29
Le service d'image d'OpenStack s'appelle Glance. Il permet la découverte, l'envoi et
la distribution d'image disque vers les instances. Les images stockées font office de
modèle de disque. Le service Glance permet aussi de stocker des sauvegardes de ces
disques. Glance peut stocker ces images disques de plusieurs façons : dans un dossier
sur serveur, mais aussi à travers le service de stockage objet d'OpenStack ou dans des
stockages décentralisés comme Ceph. Glance ne stocke pas seulement des images, mais
aussi des informations sur celles-ci, les métadonnées. Ces métadonnées sont par
exemple le format du disque (comme QCOW2 ou RAW) ou les conteneurs de celles-ci
(OVF par exemple).
Keystone :
30
Chapitre 2 Cloud Computing : Etat de L’art
Swift :
31
Chapitre 2 Cloud Computing : Etat de L’art
parti des API REST fournies par les autres composants d'OpenStack comme Nova,
Cinder ou Neutron.
32
pour décider de créer des instances supplémentaires en fonction de la charge d'une
application par exemple.
33
Chapitre 2 Cloud Computing : Etat de L’art
Ceilometer :
Trove est le service qui permet d'installer et de gérer facilement des instances de
base de données relationnelle et No SQL au sein d'OpenStack. À ce jour les services de
base de données supportés sont les suivants : MySQL, Redis, PostgreSQL, Mongo dB,
Cassandra, Couchbase et Percona.
Sahara :
Sahara a pour but de fournir aux utilisateurs les moyens simples de provisionner
des clusters de Hadoop en spécifiant plusieurs paramètres comme la version, la
topologie du cluster ou d'autres. Après avoir rempli ces paramètres, Sahara déploie le
cluster en quelques minutes. Sahara fournit aussi les moyens d'évolution du cluster en
rajoutant des nœuds à la demande.
Conclusion
Dans ce chapitre, nous avons entamé par la définition duCloud computing puis
nous avons de la virtualisation, ensuite nous avons présenté l’OpenStack notre solution
adopter et nous avons fini par la présentation et l’explication des différents versions et
composants, nous avons maintenant une idée sur la solution à adopter et qui sera
présenté dans le chapitre suivant : Conception de l’application OpenStack.
34
CHAPITRE 3 : CONCEPTION DE
L’APPLICATION OPENSTACK
35
CHAPITRE3: CONCEPTION DE L’APPLICATION
OPENSTACK
Introduction
Dans ce chapitre nous commencerons parune présentation de l’architecture générale
puis le diagramme de déploiement, ainsi que le diagramme de packages et nous
finissons par les diagrammes de séquences.
I. Conception
La conception est une étape nécessaire dans la réalisation d’une application web tel
que la création d’une application. Elle regroupe les activités d’étude qui suivent la
spécification, et ce jusqu’au codage.
La conception est donc une étape à ne pas négliger, elle rend le développent plus fidèle
aux besoins clients.
L’analyse conceptuelle représente la modélisation des données à partir des besoins et de
l’existant.
Tout au long de ce chapitre nous allons implémenter notre schéma conceptuel.
II. Description des diagrammes
Un diagramme est une représentation visuelle simplifiée et structurée des idées, des
constructions, des relations des données statiques. Il est employé dans tous les aspects
des activités humaines pour visualiser et éclaircir la matière. Un diagramme permet
aussi de décrire des phénomènes, de mettre en évidence des corrélations en certains
facteurs ou de représente des parties d’un ensemble.
À cet effet, nous avons choisi de mettre en relief les diagrammes de
modélisationqui ont paru indispensables pour la compréhension du fonctionnement du
système.
36
Chapitre 3 Conception de l’application OpenStack
Les principaux acteurs qui sont définit dans le cadre de ce projet sont :
Administrateur
Cet acteur a le droit de gérer toutes les ressources des projets ainsi que tous les clients et
leurs rôles. Il possède les droits administratifs qui lui permettent de contrôler tout le
nuage et d’accéder à l’interface d’administration sur le portail « Dashboard » ainsi qu’à
tous les autres projets.
Le client
Cet acteur a le droit de gérer les instances et les images des machines virtuelles ainsi
que les bases de données qui sont associées au projet dans lequel il est affecté.
V. Identification des cas d’utilisations
Après avoir distingué les principaux acteurs nous allons présenter les différentes
fonctionnalités de ces derniers par les diagrammes de cas d’utilisation.
1. Diagramme de cas d’utilisation système administrateur
37
Chapitre 3 Conception de l’application OpenStack
38
Chapitre 3 Conception de l’application OpenStack
39
Chapitre 3 Conception de l’application OpenStack
La gestion des instances est un service important dans OpenStack qui offre à
l’utilisateur que ce soit un administrateur ou un simple utilisateur la possibilité de lancer
ou terminer une instance avec d’autres actions comme il est illustré dans le diagramme
de cas d’utilisation.
Pour mettre en place la solution open source OpenStack choisie, Il va falloir étudier
les différents cas d’architecture possibles, présenter les utilisateurs du système et enfin
l’installer. Cette installation nécessite une configuration matérielle et des outils logiciels
et des prérequis bien spécifiques
1. Architecture d’installation
40
Chapitre 3 Conception de l’application OpenStack
Pour nos premiers pas nous avons donc essayé la première installation sur un seul
nœud dans laquelle tous les services ainsi que toutes les instances sont hébergés au sein
du même serveur.
Cette solution nous permet uniquement d’effectuer des tests sur le Cloud pour des fins
purement techniques.
2. Utilisateurs du système
41
Chapitre 3 Conception de l’application OpenStack
Diagramme de séquence
Diagramme de séquence du cas d’utilisation « connexion »
42
Chapitre 3 Conception de l’application OpenStack
43
Figure 22 : Diagramme de séquence "stocker des données"
Tous les services ainsi que toutes les instances sont hébergées au sein du même
serveur. Cette solution est très rarement utilisée. En fait, l’installation sur un seul nœud
est limitée, car ce genre de déploiement nous oblige à installer des modules bien
déterminés. Ce mode comportera plusieurs inconvénients en termes de flexibilité, et
n’assura pas la haute disponibilité de ressources et des services.
Pour cela OpenStack propose d’autres modes de déploiement.
44
Chapitre 3 Conception de l’application OpenStack
45
Chapitre 3 Conception de l’application OpenStack
En ce qui concerne notre projet nous avons besoin trois nœuds chacun à sa
fonction dans la machine, nous les regrouper pratiquement sur un seul nœud qu’on le
renomme MahaAmal.
Un nœud de contrôle (Controller Node)
Un nœud de calcul (Compute Node) MahaAmal
Un nœud de réseau (Network Node)
Par la suite nous allons détailler le rôle de chaque nœud dans l’architecture
d’OpenStack.
a. Nœud de contrôleur
46
Chapitre 3 Conception de l’application OpenStack
47
Chapitre 3 Conception de l’application OpenStack
Ces interactions sont faites à travers plusieurs services nous sitons parmi eux :
Nova-api :Accepte et répond aux appels de l’utilisateur final d’API de calcul. Le
service prend en charge l’API OpenStack Compute, l’API Amazon EC2, et une
API d’administration spéciale pour les utilisateurs privilégiés d’effectuer
des actions administratives. Il initie la plupart des activités
d’orchestration, telles que l’exécution d’une instance.
Nova-compute :Ce service permet de créer et mettre fin à des instances de
machine virtuelles via les API d’hyperviseur. Par exemple :
XenAPI pour XenServer / XCP
libvirt pour KVM ou QEMU
VMware API pour VMware
Nova-schedular :Prend une demande d’instance de machine virtuelle à partir de
la file d’attente et détermine sur quel serveur de calcul hôte sera exécutée.
48
Chapitre 3 Conception de l’application OpenStack
49
Chapitre 3 Conception de l’application OpenStack
ins sont mis en œuvre pour accueillir les différents équipements et logiciels, ils offrent
une flexibilité à l’architecture d’OpenStack et son déploiement.
Conclusion
Dans ce chapitre, nous avons fait la conception qui contient en premier lieu
l’analyse et spécification des besoins (fonctionnels et non fonctionnels) et en second
lieu l’architecture générale et nous avons fini par présenter les diffèrent services et
d’OpenStack et leur fonctionnalité.
50
CHAPITRE 4 :REALISATION DE LA
SOLUTION
51
CHAPITRE 4 : REALISATION DE LA SOLUTION
Introduction
Dans ce chapitre, nous allons mettre en place notre solution OpenStack en
présentant son architecture, quels sont les différents cas d'utilisation du système avec
des diagrammes, comment se fera le dimensionnement des couches matérielles,
notamment des serveurs et enfin nous allons présenter des spécifications sur les autres
éléments à installer avant d'installer la solution proprement dite.
I. Réalisation
1. Environnement de travail
a. Environnement matériel
Pour la réalisation de ce projet, nous avons effectué notre travail à l’aide de notre
ordinateur personnel :
Disque dur de taille 1 TB
Processus Intel® Core™i7-3520M CPU @ 2.90GHz
RAM de taille 8 GB
système d’exploitation 64bits processeur 64bits
A l’aide de VMware Workstation Professionnel 2015 on a construire une machine
virtuelle :
Controller : RAM 16GB, Processeur 4.
b. Environnement logiciel
Durant la période de travail, nous avons utilisé la version CentOS 7. Nous avons
choisi ce système pour sa comptabilité avec la version d’OpenStack Mitaka.
Linux est le système open source le plus sécurisé et le plus rapide pour l’exécution de
notre plateforme OpenStack.
II. Installation et configuration
1. Implémentation
a. Installation de composants OpenStack
52
Chapitre 4 Réalisation de la solution
53
Chapitre 4 Réalisation de la solution
54
Chapitre 4 Réalisation de la solution
3. Installation
Nous avons poursuivi les étapes suivantes pour installer OpenStack avec PackStack
qui est la meilleur solution pour faciliter l’installation les tous en un démarche simple.
[12]
Avec cette commande nous avons su l’adresse IP Fixe ens33 192.168.65.133,
encore le nom de machine localhost.localdomain, le fichier /etc/hosts contient les
adresses locales.
Pour savoir que le réseau est connecté et mise en relation avec Google et que ça
fonctionne correctement :
55
Chapitre 4 Réalisation de la solution
Désactiver la connexion :
56
Chapitre 4 Réalisation de la solution
57
Chapitre 4 Réalisation de la solution
58
Chapitre 4 Réalisation de la solution
59
Chapitre 4 Réalisation de la solution
Le chemin de clé publique soit configuré avec /root/.ssh, et nous avons installé
MariaDB, Glance et Cinder :
60
Chapitre 4 Réalisation de la solution
Avec la commande PackStack nous avons fait l’installation de tous ces composants :
61
Chapitre 4 Réalisation de la solution
L’installation est terminée avec succès et OpenStack est installé, ainsi que tous les
composants sont installés.
Les trois nœuds (Controller, Network, Compute) sont donc installés sur un seul nœud en
utilisant l’interface PackStack en leurs effectuant une adresse IP fixe 192.168.65.133.
Pour passer à l’accès Dashboard il faut http:// 192.168.65.133/Dashboard
62
Chapitre 4 Réalisation de la solution
de configuration de br-ex
63
Chapitre 4 Réalisation de la solution
64
Chapitre 4 Réalisation de la solution
65
Chapitre 4 Réalisation de la solution
66
Chapitre 4 Réalisation de la solution
67
Chapitre 4 Réalisation de la solution
Cette étape permet de tester les différentes fonctionnalités attendues du nuage privé.
Ainsi elle permet de lier l’étape de virtualisation aux autres étapes.[13]
Elle consiste à :
Ajouter des projets.
Ajouter des utilisateurs.
Créer un réseau (créer un sous-réseau interne et un sous-réseau externe)
Créer un routeur
Télécharger l’image test déjà virtualisé
Télécharger des volumes.
Lancer des instances.
Configurer les accès.
a. Interface Authentification au nuage
Il existe deux types d’utilisateur du nuage, administrateur ou membre d’un projet.
Selon le type d’utilisateur des interfaces ou d’autres s’affichent après l’authentification
(nous utilisons l’utilisateur en tant que administrateur
b. Authentification
La première étape qui devrait être effectué par l’administrateur pour qu’il puisse se
connecter à l’horizon est l’authentification.
Interface d’authentification
Ce Cloud est utilisé soit par l’administrateur ou par un client interne de la société
Ooredoo, il suffit donc de saisir le login et le mot de passe approprié pour consulter le
Dashboard d’OpenStack :
68
Chapitre 4 Réalisation de la solution
69
Chapitre 4 Réalisation de la solution
Crée un Projet
La figure 69 montre comment nous pouvons aussi affecter des utilisateurs aux
projets, Nous avons prendre ici l’exemple d’affecter l’utilisateur « admin » au Projet «
Tunisie Telecom » ainsi que nous pouvons mettre à jour le rôle de ce utilisateur.
70
Chapitre 4 Réalisation de la solution
Utilisateurs
La figure 70 montre la liste les utilisateurs qui ont été créés.
Nous pouvons aussi créer de nouveaux utilisateurs et / ou désactiver / supprimer des
utilisateurs existants depuis le bouton « Editer ».
71
Chapitre 4 Réalisation de la solution
Créer un réseau
Créer un réseau de nom Ooredoo_Tunisie-external et avoir le même nom pour le
sous-réseau en lui attribué une adresse réseau 192.168.65.0/24 avec une passerelle
192.168.65.1, ensuite allouer une plage d’adresses de 192.168.65.150 jusqu’à
192.168.65.240 et effectué un serveur Dns 8.8.8.8
72
Chapitre 4 Réalisation de la solution
73
Nous avons créé un autre réseau de nom Ooredoo_Tunisie-internal en lui attribué
une adresse réseau 172.17.20.0/16 avec une passerelle 172.17.20.1, ensuite effectué un
serveur Dns 172.17.20.1.
Créer un routeur
Créer un routeur de nom Ooredoo_Tunisie-router avec l’activation de l’adresse de
translation de réseau statique, après la création de routeur nous obtenons l’@ Ip
192.168.65.162 et d’@ ID du sous-réseau 94d18759-529b-42d7-aee1-1d18b1e16657 en
lui lier avec le réseau externe Ooredoo_Tunisie-external
74
Figure 74 : Ajouter une interface au routeur
Topologie du réseau
75
Nous aurons le graphique de topologie du réseau du Cloud avec son réseau
publique et son routeur.
Gabarits « Flavors »
76
Les Gabarits sont des Modèles de matériel virtuel appelées «Flavors» dans
OpenStack, définissant la taille de RAM, disque, nombre de cœurs, et ainsi de suite.
La figure 37 ci-dessous représente les différents modèles existant ainsi que la
création d’un model personnalisé nommé CentOS7.L’onglet « accès au Gabarits » nous
a permet d’affecter un projet au Gabarit qui est en cours de construction.
Accès et sécurité
Les groupes de sécurité sont des ensembles de règles de filtrage IP qui sont
appliqués à la configuration réseau d'une VM. Après sa création, nous pouvons ajouter
des règles à un groupe de sécurité.Les paires de clés sont des identifiants SSH injectés
dans les images lors de leur lancement. L'action de créer une nouvelle paire de clés
enregistre la clé publique et télécharge la clé privée (fichier .pem).La figure ci-dessous
montre la manière de création d’un groupe de sécurité, la mise à jour d’un group
existant ainsi que la génération des paires clé.
77
Chapitre 4 Réalisation de la solution
78
Chapitre 4 Réalisation de la solution
Créer un Volume
Nous avons créé le volume Ooredoo_Tunisie-Volume pour l’installation de l’image
de Windows 10 avec une taille de 16GiO
79
Chapitre 4 Réalisation de la solution
80
Chapitre 4 Réalisation de la solution
81
Chapitre 4 Réalisation de la solution
Alors, de ce fait, nous obtenons une machine virtuelle qui est au fait le Cloud
privé, qui permet au client d’Ooredoo de gérer ses ressources sans l’intervention
d’un administrateur chez Ooredoo. Nous avons créé d’autres VMs, chacun d’ils
son adresse d’accès.
Conclusion
Dans ce chapitre, nous avons mis l’accent sur la procédure de déploiement de notre
solution. Par ailleurs nous avons exposé les différents services fournit par OpenStack.
82
CONCLUSION GENERALE
83
CONCLUSION GENERALE
En conclusion ce document est le fruit de notre travail dans le cadre du projet de fin
d’études dont l’objectif était la mise en place d’un Cloud privé basée sur la solution
OpenStack.
Nous avons entamé la première phase de notre projet par l’étude de l’existant et la
récolte des informations sur les technologies de bases qui entrent enjeux dans la
réalisation de notre travail. Par la suite, nous avons mis l’accent sur les solutions
permettant l’hébergement d’une infrastructure Cloud, dont nous avons précisé le choix
pour la mise en place de notre projet.
Le dernier volet de notre projet était la partie réalisation, au cours de laquelle nous
nous sommes heurtés à de nombreux problèmes, que ce soit dû aux solutions de Cloud
ou à leur configuration et installation, notamment en ce qui concerne le réseau.
Tous ces problèmes nous ont montré la complexité d’utiliser une telle plateforme,
et leurs résolutions nous a souvent retardé mais nous a amené à expérimenter le mode «
investigation », primordial pour tout informaticien.
84
REFERENCES
Webographie
[1] https://fr.wikipedia.org/wiki/Ooredoo_(Tunisie)#Histoire/
Consulté le 03/02/2019
[2] http://www.ooredoo.tn/institutionnel/qui-somme-nous/
Consulté le 03/02/2019
[3] http://www.cloud-entreprise.info/historique-cloud-computing/
Consulté le 12/02/2019
[4]https://blog.econocom.com/wp-content/uploads/2014/07/PaaS_cloud_stack-
e1404826877689.gif
Consulté le 18/02/2019
[5]https://encryptedtbn0.gstatic.com/images?
q=tbn:ANd9GcQB326L5sSs3tMiAh1NK6S1G4jjqZyA50F57rJhGfrGmMq_sLog
Consulté le 14/03/2019
[6]http://www.renaudvenet.com/cloud-computing-avantages-et-inconvenients-
2011-01-26.html
Consulté le 15/03/2019
[7]https://images.itnewsinfo.com/dis/articles/originale/000000011136.jpg
Consulté le 21/02/2019
[8]http://wwwigm.univmlv.fr/~dr/XPOSE2008/virtualisation/images/
hyperviseur1.png
Consulté le 23/02/2019
[9]https://encryptedtbn0.gstatic.com/images?
q=tbn:ANd9GcSuLs4kOWEB9N0VeaT5mHNazRbEybwSd4qUC0JTvsCb8t-
LK5siBA
Consulté le 23/02/2019
[10] https://cdn.ttgtmedia.com/visuals/LeMagIT/hero_article/ProjectMap.jpg
Consulté le 30/02/2019
[11]https://openstack-folsom-install-guide.readthedocs.io/en/latest/
85
Consulté le 09/04/2019
[12]http://openstack.redhat.com/install/packstack/
Consulté le 12/02/2019
[13]https://www.supinfo.com/articles/single/5088-mise-place-cloud-prive-avec-
openstack
Consulté le 06/04/2019
Bibliographie
[14]http://vixra.org/pdf/1605.0018v1.pdf
Consulté le 06/04/2019
86
TABLE DES ABREVIATIONS
87
VCenterVirtual Center
VCloudVirtual Cloud
NISTNational institute of standards and technology
APIApplication Programming Interface
EC2Elastic Compute Cloud
WSWeb services
OCCI Analyse ET sens d’Astrologique
NASANational Aeronautics and Space Administration
CPUCentral Processing Unit
QCOW2/ RAWFormats de stockage disponible pour KVM
OVFOpen Virtualization Format
LDAPLightweight Directory Access Protocol
DHCPDynamic Host Configuration Protocol
Ceph Plateforme libre de stockage distribué
EMC Plateformes de stockage
ScaleIOSolution de software defined storage hyper-convergente
VMAX ET VNX Stockage en mode bloc dans ViPR
HDSHitachi Data Systems
SANStorage Area Network
XIVStorage System
GPFSGeneral Parallel File System
NetApp Systèmes de stockage des données
3PARStoreServ and Store Virtual Software
Django Framework de développement web
API RESTApplication Programming Interfaces mise à zéro
NoSQLNot only Structured Query Language
MySQL Un serveur de bases de données relationnelles SQL
REDISResource and Environmental Data Interpretation System
PostgreSQL Object-relational database management system is available in
several source
Mongo dBSystème de gestion de base de données orientée
SQLStructured Query Language
NTPNetwork Time Protocol
88
URLUniform Resource Locator
SQLiteStructured Query Language Lite
RADOSReliable Autonomic Distributed Object Store
HTTPHypertext Transfer Protocol
89
Résumé
Le Cloud Computing est un environnement logiciel puissant et flexible qui délègue la gestion du matériel, et
qu'on paie selon la consommation. La migration des applications d'entreprise sur cet environnement ne cesse de
s'accentuer. Une grande partie de ces applications est offerte sous forme de services Web, qui standardisent l'accès
aux logiciels métier via Internet. Le but de notre projet est de mettre en place une solution Cloud Computing privé
pour une entreprise en lui créant une infrastructure en tant que service.
Abstract
Cloud Computing is a powerful and flexible software environment that delegates hardware management and pays
according to consumption. The migration of enterprise applications to this environment continues to grow. Many of
these applications are offered as web services, which standardize access to business software over the Internet. The
goal of our project is to set up a private Cloud Computing solution for a company by creating an infrastructure as a
service.
Resumen
Cloud Computing es un entorno de software potente y flexible que delega la administración del hardware y
paga según el consumo. La migración de aplicaciones empresariales a este entorno continúa creciendo. Muchas de
estas aplicaciones se ofrecen como servicios web, que estandarizan el acceso al software empresarial a través de
Internet. El objetivo de nuestro proyecto es configurar una solución privada de computación en la nube para una
90