Académique Documents
Professionnel Documents
Culture Documents
INITELEMATIQUE
Option : Génie informatique et Télécommunications
1
Remerciements
Nous remercions l'éternel Dieu tout puissant, source d'intelligence et de sagesse qui nous a
donné la vie et qui continue à nous remplir de son amour.
Nos remerciements à nos chers parents, pour les efforts qu’ils ont consentis pour notre
formation, pour leur précieux soutien moral et matériel, pour leurs encouragements continus, et
pour tous leurs sacrifices tout au long de notre vie, qu’on en sera tellement reconnaissants.
Tout d’abord, ce travail ne serait pas aussi riche et n’aurait pas pu avoir le jour sans l’aide
et l’encadrement de Mr Lionel IRAMBONA, on le remercie pour la qualité de son encadrement
exceptionnel, pour sa patience, sa rigueur et sa disponibilité durant notre parcours académique
jusqu’à la préparation de ce mémoire.
Nos remerciements s’adressent également à tous nos professeurs pour leurs générosités et
la grande patience dont ils ont su faire preuve malgré leurs charges académiques et
professionnelles.
A toutes nos familles pour l’aide apportée comme soutien moral et matérielle et pour leurs
encouragements.
A tous ceux qui ont contribué de près ou de loin à la rédaction de ce document et a tous
ceux qui ont participé, qui participent ou participeront à ce projet.
A tous les membres du jury, c’est un honneur pour nous que vous jugiez notre travail.
2
TABLES DES MATIERES
TABLE DES ILLUSTRATIONS-------------------------------------------------------------------------- 5
LISTE DES SIGLES ET ABREVIATIONS------------------------------------------------------------- 8
INTRODUCTION GENERALE--------------------------------------------------------------------------- 9
Chapitre 1. LA VIRTUALISATION ------------------------------------------------------------------- 11
DEFINITION DE LA VIRTUALISATION -------------------------------------------------- 11
LES OBJECTIFS DE LA VIRTUALISATION ---------------------------------------------- 11
LES DIFFERENTS TYPES DE LA VIRTUALISATION --------------------------------- 12
1.3.1. Virtualisation des serveurs ----------------------------------------------------------------- 12
1.3.2. La virtualisation de système d’exploitation ---------------------------------------------- 14
1.3.3. La virtualisation d’application ------------------------------------------------------------- 14
1.3.4. La virtualisation des fonctions réseau ---------------------------------------------------- 15
EVOLUTION DE LA VIRTUALISATION -------------------------------------------------- 16
LES ACTEURS DE LA VIRTUALISATION ----------------------------------------------- 18
LES APPORTS DE LA VIRTUALISATON ------------------------------------------------- 18
EXPLICATION SUR LE DATACENTER --------------------------------------------------- 19
Chapitre 2. LE CLOUD COMPUTING ---------------------------------------------------------------- 21
DEFINITION DU CLOUD COMPUTING --------------------------------------------------- 21
2.1.1. Histoire de l’informatique dans les nuages ---------------------------------------------- 23
2.1.2. Quelques outils de publication en ligne tendance vers le Cloud ---------------------- 25
CARACTERISTIQUE DU CLOUD ----------------------------------------------------------- 25
DIFFERENTE FAMILLE DU CLOUD (modèle des services) ---------------------------- 26
a. IaaS (Infrastructure as a Service) ------------------------------------------------------------- 29
b. PaaS (PlateForm as a Service) ---------------------------------------------------------------- 29
c. DaaS (Data as a service) ----------------------------------------------------------------------- 30
d. SaaS (Software as a Service) ----------------------------------------------------------------- 31
DIFFERENTS TYPES DU CLOUD (modèle de déploiement du Cloud) ---------------- 34
2.4.1. Cloud prive ----------------------------------------------------------------------------------- 34
2.4.2. Cloud public ---------------------------------------------------------------------------------- 35
2.4.3. Cloud communautaire ----------------------------------------------------------------------- 36
2.4.4. Cloud hybride -------------------------------------------------------------------------------- 36
CLASSIFICATION DU CLOUD -------------------------------------------------------------- 37
3
2.5.1. Cloud d’entreprise --------------------------------------------------------------------------- 37
2.5.2. Cloud pour gouvernement ------------------------------------------------------------------ 37
2.5.3. Cloud pour réseaux sociaux ---------------------------------------------------------------- 38
2.5.4. Cloud pour fournisseurs d’accès----------------------------------------------------------- 38
LES AVANTAGES OFFERTS PAR LE CLOUD------------------------------------------- 38
L’UTILISATION DU TECHNIQUE CLOUD ----------------------------------------------- 40
2.7.1. Qui utilise le Cloud -------------------------------------------------------------------------- 40
2.7.2. Les parts du marche de la virtualisation -------------------------------------------------- 40
2.7.3. Les enjeux du Cloud Computing ---------------------------------------------------------- 41
SOLUTIONS CLOUD --------------------------------------------------------------------------- 42
2.8.1. Présentation ----------------------------------------------------------------------------------- 42
2.8.2. Comparative des solutions------------------------------------------------------------------ 43
LA PROSPERITE DU CLOUD ET DE LA VIRTUALISATION ------------------------ 44
2.9.1. Tendance -------------------------------------------------------------------------------------- 44
a. Le Cloud Computing --------------------------------------------------------------------------- 44
b. La virtualisation--------------------------------------------------------------------------------- 45
2.9.2. Impact économique -------------------------------------------------------------------------- 46
2.9.3. Les perspectives de besoins ---------------------------------------------------------------- 47
LE BIG DATA ---------------------------------------------------------------------------------- 47
2.10.1. C’est quoi le Big Data ? -------------------------------------------------------------------- 47
2.10.2. L’analyse de données en masse ------------------------------------------------------------ 48
2.10.3. L’évolution technologique derrière le Big Data ----------------------------------------- 48
2.10.4. Evolution du Big Data ---------------------------------------------------------------------- 49
2.10.5. Les principaux acteurs du marché --------------------------------------------------------- 49
2.10.6. Big Data analytics --------------------------------------------------------------------------- 50
Chapitre 3. ANALYSE DES BESOINS ET PRESENTATION DES SERVEURS UTILISES
51
ANALYSE ET SPECIFICATION DES BESOINS ------------------------------------------ 51
3.1.1. Identification des besoins ------------------------------------------------------------------- 51
3.1.2. Identification des acteurs ------------------------------------------------------------------- 52
3.1.3. Raffinement de cas d’utilisation ----------------------------------------------------------- 55
DIAGRAMME D’ACTIVITE ------------------------------------------------------------------ 56
3.2.1. Diagramme d’activité général ------------------------------------------------------------- 56
4
3.2.2. Diagramme d’activité (Création d’instance) --------------------------------------------- 57
SERVEURS UTILISES -------------------------------------------------------------------------- 57
3.3.1. Présentation des hyperviseurs -------------------------------------------------------------- 57
3.3.2. VMware vSphere ---------------------------------------------------------------------------- 59
3.3.3. Rôle de vSphere ------------------------------------------------------------------------------ 60
3.3.4. Composants et fonctions VMware vSphere --------------------------------------------- 60
3.3.5. Explication sur ESXi 6 ---------------------------------------------------------------------- 61
Chapitre 4. IMPLEMENTATION ET DEPLOIEMENT -------------------------------------------- 63
ENVIRONNENT MATERIELLES ------------------------------------------------------------ 63
ENVIRONNEMENT LOGICIELLES --------------------------------------------------------- 64
4.2.1. Installation et configuration ESXi 6.5 ---------------------------------------------------- 64
4.2.2. Création machine virtuelle sous ESXi 6 avec vSphere web client ------------------- 65
4.2.3. Configuration du serveur Ubuntu 17.10 -------------------------------------------------- 65
a. Configuration d’adresse IP -------------------------------------------------------------------- 67
b. Configuration de samba ----------------------------------------------------------------------- 67
4.2.4. Configuration du serveur MySQL--------------------------------------------------------- 70
a. Création des utilisateurs pour MySQL et attribution des privilèges -------------------- 71
b. Création des réplications sous les bases des données ------------------------------------- 71
c. Mise en place d’un serveur de sauvegarde. ------------------------------------------------- 76
DEPLOIEMENT DE LA PLATEFORME PROPREMENT DITE ----------------------- 77
4.3.1. Déploiement et fonctionnement de la plateforme d’achat ----------------------------- 78
a. Déploiement ------------------------------------------------------------------------------------- 78
b. Fonctionnement --------------------------------------------------------------------------------- 79
4.3.2. Déploiement de la plateforme prive ------------------------------------------------------- 82
4.3.3. Déploiement et fonctionnent de la plateforme publique ------------------------------- 85
CONCLUSION GENERALE----------------------------------------------------------------------------- 88
LIMITATIONS ET PERSPECTIVES------------------------------------------------------------------- 88
BIBLIOGRAPHIE------------------------------------------------------------------------------------------ 89
5
Tables des illustrations
Figure 1 : Virtualisation des serveurs --------------------------------------------------------------------- 13
Figure 2 : Virtualisation de système d’exploitation ----------------------------------------------------- 14
Figure 3 : Virtualisation d’application -------------------------------------------------------------------- 15
Figure 4 : Virtualisation de fonction réseau -------------------------------------------------------------- 16
Figure 5 : Les acteurs de la virtualisation ----------------------------------------------------------------- 18
Figure 6 : Architecture d’un Datacenter ------------------------------------------------------------------ 20
Figure 7 : Accès au Cloud depuis Internet ---------------------------------------------------------------- 22
Figure 8 : Accès au Cloud avec diffèrent plateforme. -------------------------------------------------- 23
Figure 9 : Différentes familles du Cloud. ----------------------------------------------------------------- 27
Figure 10 : Différents modèles des services. ------------------------------------------------------------- 28
Figure 11 : Infrastructure modele IaaS. ------------------------------------------------------------------- 29
Figure 12 : Plateforme de modele des services. ---------------------------------------------------------- 30
Figure 13 : Application dans le modèle des services. --------------------------------------------------- 32
Figure 14 : Cloud Privé -------------------------------------------------------------------------------------- 35
Figure 15 : Cloud Public ------------------------------------------------------------------------------------ 35
Figure 16 : Figure Communautaire ------------------------------------------------------------------------ 36
Figure 17 : Cloud Hybride ---------------------------------------------------------------------------------- 37
Figure 18 : Les utilisateurs du Cloud ---------------------------------------------------------------------- 40
Figure 19 : Installation basé sur le serveur --------------------------------------------------------------- 41
Figure 20 : Diagramme de cas d’utilisation -------------------------------------------------------------- 53
Figure 21 : Diagramme de séquence de cas générale --------------------------------------------------- 54
Figure 22 : Diagramme d’activité -------------------------------------------------------------------------- 56
Figure 23 : Diagramme d’activité (Création d’instance) ----------------------------------------------- 57
Figure 24 : Hyperviseur Type 1 ---------------------------------------------------------------------------- 58
Figure 25 : Hyperviseur Type 2 ---------------------------------------------------------------------------- 59
Figure 26 : Composants de VMware vSphere ----------------------------------------------------------- 60
Figure 27 : Le logo de VMware ---------------------------------------------------------------------------- 61
Figure 28 : Représentation de notre environnent matérielles ------------------------------------------ 63
Figure 29 : Administration d’un serveur ------------------------------------------------------------------ 64
Figure 30 : Création d’une machine virtuelle ------------------------------------------------------------ 65
Figure 31 : PuTTy -------------------------------------------------------------------------------------------- 66
Figure 32 : Terminal de PuTTy ---------------------------------------------------------------------------- 66
Figure 33 : Editeur Nano ------------------------------------------------------------------------------------ 67
Figure 34 : Edition du fichier de configuration Samba ------------------------------------------------- 69
Figure 35 : Connexion a un serveur via samba ---------------------------------------------------------- 70
Figure 36 : Configuration de mysql avec nano----------------------------------------------------------- 71
Figure 37 : Deux serveurs master-master ----------------------------------------------------------------- 72
Figure 38 : Configuration de serveur maitre1 ------------------------------------------------------------ 72
Figure 39 : Vérification de statut du maitre1 ------------------------------------------------------------- 73
Figure 40 : Configuration de serveur maitre2 ------------------------------------------------------------ 73
Figure 41 : Vérification de statut du maitre2 ------------------------------------------------------------- 74
Figure 42 : Création de la base de données ‘test_replication’ sur le maitre1 ------------------------ 75
6
Figure 43 : Réplication de la base de donnes sur le maitre2 ------------------------------------------- 75
Figure 44 : Schéma démonstrative de notre plateforme ------------------------------------------------ 77
Figure 45 : Page d’accueil Web de notre plateforme---------------------------------------------------- 78
Figure 46 : Architecture de nos bases des données ------------------------------------------------------ 78
Figure 47 : Espace d’authentification --------------------------------------------------------------------- 79
Figure 48 : Espace de nos services ------------------------------------------------------------------------- 79
Figure 49 : Adhésion au Cloud Prive ---------------------------------------------------------------------- 80
Figure 50 : Espace de payement---------------------------------------------------------------------------- 80
Figure 51 : Liste des comptes propre à un client--------------------------------------------------------- 81
Figure 52 : Activation d’un compte déjà crée ------------------------------------------------------------ 81
Figure 53 : Information sur le compte --------------------------------------------------------------------- 82
Figure 54 : Accord de License ------------------------------------------------------------------------------ 83
Figure 55 : Lancement de l’application prive ------------------------------------------------------------ 83
Figure 56 : Connexion au serveur -------------------------------------------------------------------------- 84
Figure 57 : Fenêtre d’authentification de l’application prive ------------------------------------------ 84
Figure 58 : Fenêtre d’accueil de l’application prive ----------------------------------------------------- 85
Figure 59 : Fenêtre d’authentification de l’application publique -------------------------------------- 85
Figure 60 : Les comptes d’un client ----------------------------------------------------------------------- 86
Figure 61 : Les informations sur l’un des comptes ------------------------------------------------------ 86
Figure 62 : Fenêtre d’accueil de l’application publique ------------------------------------------------ 87
7
Table des abréviations
IP : Internet Protocol
UNIX : Système d’exploitation
IBM : International Business Machines
MIT : Massachusetts Institute of Technology
CP/SMS : Control Program/Cambridge Monitor System
VM : Virtual Machine
SOA : Service Oriented Architecture
ADM : Advanced Micro Devices
KVM : Kernel-based Virtual Machine
NAS : Network Attached Storage
TCP : Trasmission Control Protocol
ASP : Active Server Page
VNC : Virtual Network Computing
CPU : Central Processing Unit
DHCP : Dynamic Host Control Protocol
8
INTRODUTION GENERALE
Il y a quelques années, l'imagination de l'industrie informatique s'est emparée de l'idée
consistant à faire fonctionner plusieurs systèmes d'exploitation de manière concurrente sur un
même ordinateur. La virtualisation est devenue le mot à la mode et des projets ont été lancés pour
réaliser ce rêve.
La virtualisation est devenue une solution d'entreprise qui permet de réduire le nombre des
serveurs physiques. Mais, par contre, elle permet d'augmenter conséquemment le nombre des
serveurs virtuels sur chaque serveur physique, en vue d'optimiser son utilisation, de réduire les
dépenses sur le matériel serveur, de diminuer la consommation électrique ainsi que de libérer
beaucoup d'espace dans la salle serveur en facilitant l'administration du système informatique.
Grace à la virtualisation, vous n'avez pas besoin d'un ordinateur supplémentaire chaque
fois que vous voulez mettre en place un nouveau serveur. On peut faire face à des besoins
supplémentaires en termes d'infrastructure en démarrant simplement un nouveau système
d'exploitation invité. Un système invité peut être dédié à une application unique et il peut être
différent du système d'exploitation hôte. Les fonctionnalités telles que la virtualisation de stockage
permettent de déplacer les systèmes invités sans interruption de l'activité afin d'exploiter au mieux
votre matériel informatique.
Le Cloud Computing peut certainement tirer avantage de la virtualisation, mais le Cloud
Computing peut être (et a été) accompli sans l’utilisation de la virtualisation.
Une façon de décrire la différence entre la virtualisation et le Cloud Computing en termes
non techniques est de faire un petit exercice d’imagination. Alors, il faut ici vous prêter à l’exercice
avec les yeux fermés. Imaginez que votre cerveau puisse être contrôlé en obéissant aux commandes
d’une autre personne comme si vous aviez une interface clavier dans votre cerveau. Vous êtes la
machine physique, mais en effet vous êtes un cerveau contrôlé à distance puisque vous en laissez
le contrôle à un autre. Maintenant, imaginez que la personne que vous contrôlez est vous-même
qui regarde à travers un lien de télévision en circuit fermé, qui est le Cloud Computing.
Pour décrire la virtualisation, imaginez que vous êtes debout entre deux miroirs, et
maintenant vous voyez des dizaines de copies de vous-même, vous voyez cette image de vous à
l’infini comme dans la salle des miroirs à la Ronde. Maintenant imaginez que chaque copie était
capable de faire des tâches indépendantes des autres copies. Tous les exemplaires sont sur une
seule pièce de matériel (le vrai vous). Une utilisation partagée de votre cerveau sous-utilisé pour
faire de nombreuses tâches simultanées à des répliques virtuelles de vous-même. C’est la
virtualisation.
La distinction entre la virtualisation et le Cloud Computing est importante de faire en ce
moment, car tout cela devient critique dans les choix technologiques futurs. Il serait dommage
que vous fassiez les mauvais choix. Voilà pourquoi il faut choisir un bon conseiller informatique.
9
BUT ET OBJECTIFS
L’objectif du projet est de mettre en place une infrastructure de Cloud public permettant
de déployer rapidement des services SaaS.
Montrer pourquoi la virtualisation et le Cloud sont des outils attractifs pour les
entreprises et quelles en sont les limites ? Comment assurer l’intégrité des données ?
Comment fiabiliser l’accès et les échanges de données ?
Donner les explications et les avantages du serveur ESXi 6 dans les domaines de la
virtualisation des parcs informatique.
Centraliser les données sur différente serveurs et disposer des applications sur les serveurs.
PROBLEMATIQUE
À l’heure où les entreprises sont en pleine transformation numérique, le Cloud soulève de
nombreuses questions, notamment celles concernant les enjeux de stockage. La virtualisation est-
elle fiable ? Faut-il opter pour le Cloud privé ou l’informatique en Cloud (nuage) sur un serveur
Cloud public ? Sur quels points peut-on être vigilant quant à son déploiement ?
10
Chapitre 1. LA VIRTUALISATION
Bien que cette technologie ne soit pas nouveau, plusieurs solutions et besoins on était
et sont achevé sur la virtualisation. Cela donne signification à l’accaparation de la virtualisation
dans les entreprises et des grandes administrations de nos jours.
DEFINITION DE LA VIRTUALISATION
La virtualisation consiste à faire fonctionner un ou plusieurs système d’exploitation
ou applications (dans un browser), sur un ou plusieurs ordinateurs, serveur, système d’exploitation
au lieu d’installer un seul par machine.
Chaque machine virtuelle partage les ressources de cette ordination physique dans
plusieurs environnements. Une machine virtuelle est une illusion d’un appareil informatique créée
par un logiciel d’émulation. Le logiciel d’émulation simule la présence de ressources matérielle et
logicielles telles que la mémoire, le processeur, le disque dur, voire le système d’exploitation et
les pilotes, permettant d’exécuter des programmes dans les mêmes conditions que celle de la
machine simulée.
Les machines virtuelles sont utilisées pour exploiter les logiciels d’une machine qui
n’existe plus dans le commerce (ordinateur, console de jeu, assistant personnel), pour cacher la
machine simulatrice et simuler une fictive, telle que la machine virtuelle java. Elles sont également
utilisées pour exploiter une machine comme s’il y en avait plusieurs (virtualisation).
L’émulation est le fait de mettre en œuvre les fonctionnalités d’un appareil en utilisant
un autre appareil offrant des fonctionnalités différentes. Une des utilisations consiste à mettre en
œuvre le jeu d’instructions d’un processeur en utilisant un autre processeur. Ceci permet par
exemple d’utiliser un ordinateur récent pour exécuter des programmes destinés à un ordinateur ou
à une console de jeu qui n’existent plus dans le commerce. La simulation s’accompagne d’une
baisse significative de la puissance de calcul : la puce du processeur simule sera une fraction de
celle du processeur simulateur.
Au sens large, la virtualisation consiste à simuler l’existence de plusieurs machines
informatiques et de rentabiliser leurs utilisations : Les technologies de 2008 sont si puissantes
qu’en condition ordinaire un serveur n’utilise que 10% des capacités du matériel. La virtualisation
permet également de gagner du temps : une courte procédure de modification de la configuration
de l’émulateur remplace une longue procédure d’acquisition de matériel informatique.
11
machine physique à une autre. L’administration des serveurs et des postes de travail devient aussi
plus aisée.
Concrètement, imaginez que vous ayez trois serveurs physiques qui répondent chacun
à des objectifs précis : l'un d'eux est un serveur de messagerie, l'autre un serveur Web et le dernier
exécute les applications internes existantes. Seulement 30 % de leur capacité est utilisée, ce qui
n'est qu'une fraction de leur potentiel. Cependant, comme les applications existantes sont
essentielles à vos opérations internes, vous pensez sans doute que vous devez les conserver, ainsi
que le troisième serveur qui les héberge.
Auparavant, cela était le cas. Il était souvent plus simple et plus fiable d'exécuter des
tâches individuelles sur des serveurs spécifiques : un serveur avec un système d'exploitation pour
une tâche. Il n'était pas facile de faire autrement. Désormais, avec la virtualisation, vous pouvez
fractionner le serveur de messagerie en deux serveurs uniques capables de gérer des tâches
distinctes, ce qui permet ainsi la migration des applications existantes. Vous utilisez le même
matériel, mais vous exploitez davantage son potentiel.
Tout en préservant la sécurité, vous avez la possibilité de fractionner le serveur une
nouvelle fois afin de lui allouer une autre tâche. Alors que vous ne l'utilisiez initialement qu'à 30 %,
puis à 60 %, vous l'utilisez à présent à 90 %. Vous pouvez ensuite réutiliser les serveurs vides pour
exécuter d'autres tâches ou les mettre hors service afin de réduire les coûts de maintenance et de
refroidissement.
Les serveurs sont des ordinateurs conçus pour traiter un volume élevé de tâches
spécifiques afin de permettre aux autres ordinateurs (ordinateurs portables et ordinateurs de
bureau, par exemple) d'effectuer diverses autres tâches.
La virtualisation des serveurs peut se définir comme le fait de faire fonctionner
plusieurs serveurs virtuels sur un serveur physique, ces derniers étant alors remplacés par leur
équivalent virtuel. L’objectif est de mutualiser les capacités de chaque serveur, permettant à
l’entreprise de réaliser des économies et de réduire les investissements en infrastructures
physiques.
12
Figure 1 : Virtualisation des serveurs
La virtualisation des serveurs est donc intimement liée au Cloud Computing, c’est-à-dire
l’utilisation de machines et serveurs externes pour le partage ou le stockage de données par
exemple. Le principal avantage du Cloud est la possibilité de l’utiliser uniquement en cas de besoin
et de façon personnalisée.
13
1.3.2. La virtualisation de système d’exploitation
14
définie comme la technologie qui permet de séparer l'environnement du bureau et des
applications associées de la machine physique.
La virtualisation des fonctions réseau sépare les fonctions clés d'un réseau (telles
que les services d'annuaire, le partage de fichiers et la configuration des adresses IP) afin
de les répartir entre les différents environnements. Lorsque les fonctions logicielles sont
indépendantes des machines physiques sur lesquelles elles étaient hébergées, il est possible
de regrouper des fonctions spécifiques dans un nouveau réseau et de les assigner à un
environnement. [2]
15
Figure 4 : Virtualisation de fonction réseau
EVOLUTION DE LA VIRTUALISATION
Bien que le concept de virtualisation soit apparu dans les années 1960, ce n'est que dans
les années 2000 que son utilisation s'est généralisée. Les technologies qui sont à la base de la
virtualisation, telles que les hyperviseurs, ont été développées il y a plusieurs dizaines d'années
afin de permettre à divers utilisateurs d'accéder simultanément aux ordinateurs qui effectuaient des
traitements par lots. Le traitement par lots, qui permettait d'exécuter très rapidement des tâches
répétitives des milliers de fois (telles que la paie), était une technique très répandue dans le monde
de l'entreprise.
Toutefois, au fil des décennies, d'autres solutions qui permettaient l'utilisation simultanée
d'une seule et même machine par de nombreux utilisateurs ont gagné en popularité, tandis que la
virtualisation restait en marge. L'une de ces solutions était la technique du temps partagé, qui isolait
les utilisateurs au sein des systèmes d'exploitation. Elle a notamment conduit à la création d'autres
systèmes d'exploitation comme UNIX, puis Linux®. Pendant ce temps, la virtualisation restait une
technologie de niche très peu utilisée.
Une bonne part des travaux de la virtualisation fut développée au centre scientifique
d’IBM en collaboration avec le MIT, ou fut mis au point le système expérimental CP/CMS,
devenant ensuite le produit (alors nomme Hyperviseur). [3]
16
Par la suite, les mainframes ont été capables de virtualisées leurs système d’exploitation avec des
technologies spécifiques et propriétaires, à la fois logicielles et matérielles.
En 1979 fut annonce par exemple sur IBM et 4341 un accélérateur VM optionnel et
microcode.
Dans la deuxième moitié des années 1980 et au début des années 1990, on a créé des
embryons de virtualisation pour les ordinateurs personnels (Amiga, Macintosh
68xxx).
Les grands Unix ont suivi avec les architectures NUMA des Super donne d’HP (PA-
RISC et IA-64) et des E10000/E15000 de Sun (UltraSprarc). La plupart des entreprises
disposaient de serveurs physiques et de piles informatiques propriétaires. Autrement
dit, les applications existantes ne pouvaient pas être exécutées sur le matériel d'un
autre fournisseur. Lorsque les entreprises actualisaient leur environnement
informatique avec des serveurs, des systèmes d'exploitation et des applications
standard plus économiques, elles n'avaient d'autre choix que de sous-utiliser leur
infrastructure physique, sachant que chaque serveur ne pouvait exécuter qu'une tâche
spécifique au fournisseur.
C'est là que la virtualisation a pris son envol. Elle constituait la solution naturelle à
deux problèmes en permettant aux entreprises de partitionner leurs serveurs et d'exécuter les
applications existantes sur plusieurs types et versions de systèmes d'exploitation. Les serveurs ont
ainsi commencé à être utilisés plus efficacement (ou pas du tout), ce qui a entraîné la réduction des
coûts liés à l'achat, à la configuration, au refroidissement et à la maintenance. La flexibilité de la
virtualisation a permis de limiter la dépendance vis-à-vis d'un fournisseur et a jeté les bases du
Cloud Computing. Aujourd'hui, elle est si répandue dans les entreprises qu'un logiciel de gestion
de la virtualisation est souvent nécessaire pour en assurer le suivi.
La société VMware développa et popularisa à la fin des 1990 et au début des années
2000 un système propriétaire de virtualisation logicielle des architectures de type x86
pour les architectures de type x86. Les logiciels libre Xen, KVM, QEMU, Bochs,
Linux-vServer, Virtual Box et les logiciels propriétaires mais gratuits VirtualPC,
VirtualServer et VMware Server ont achevé la popularisation de la virtualisation dans
le monde x86. VMware a dernièrement rendu gratuit une version allégée de son
hyperviseur phare ESX3i. Les fabricants de processeurs x86 AMD et Intel ont mis en
œuvre la virtualisation matérielle dans leurs gammes dans la seconde moitié de l’an
2000.
En 2003 apparait la para-virtualisation avec Xen, à partir de 2005, les fabricants de
processeurs Intel et AMD implantent la virtualisation matérielle dans leurs produits.
En 2007, les machines virtuelles KVM (Kernel-based Virtual Machine) débarquent
sur Linux jusqu’alors, la virtualisation était utilisée pour tester des systèmes
d’information avant leur déploiement.
En 2008, Microsoft met sur le marché son logiciel de virtualisation Hyper-V. depuis
peu, le monde informatique connait une nouvelle mutation avec la virtualisation 3.0,
17
utilisée principalement dans les technologies liées au Cloud Computing et à la gestion
automatisée des déploiements internes.
‘
Figure 5 : Les acteurs de la virtualisation
Déploiement et migration facile, rapide des machines virtuelles d’une machines physique
a une autre, notamment dans le contexte d’une mise en production à partir d’un
environnement de qualification ou de pré-production, livraison facilitée,
18
Economie sur le matériel par mutualisation (consommation électrique, entretien physique,
surveillance, tests, compatibilité matérielle, etc.).
Sécurisation et isolation d’un réseau (cassage des systèmes d’exploitation virtuels, mais
pas des systèmes d’exploitation hôtes qui invisibles pour l’attaquant, tests d’architectures
applicatives et réseau).
Isolation des différentes utilisateurs simultanés d’une même machine (utilisation de type
site central).
19
Figure 6 : Architecture d’un Datacenter
Les bases de données étant souvent cruciales au fonctionnement des entreprises, celle-
ci sont très sensibles à leur protection. Pour cette raison, ces centres maintiennent de hauts niveaux
de sécurité et de service dans le but d’assurer l’intégrité et le fonctionnement des appareils sur
place.
Avant la bulle Internet, des millions de mettre carres destines à abriter de tels centres
furent construits dans l’espoir de les voir occupes par des serveurs. Depuis, la concentration des
centres se sont poursuivie, avec le développement de centres spécialisés pour lesquels les défis les
plus importants sont la maitrise de la climatisation et surtout de la consommation électrique. Ce
mouvement a été intègre dans le green Computing et vise à aboutir à des centres de traitement de
données dits écologiques pour lesquels sont apparus des outils spécialises.
Les missions principales du centre sont d’offrir une bonne connexion réseau (internet,
intranet, etc.) et une haute disponibilité du système d’information. En conséquence, il est possible
de déployer différentes applications logicielles pour les taches essentielles à l’activité métier des
clients. Parmi ces applications, on retrouve des gestionnaires de bases de données, des serveurs de
fichiers et de serveurs d’applications.
20
Chapitre 2. LE CLOUD COMPUTING
Le Cloud Computing est aujourd’hui le sujet phare dans le domaine des systèmes
d’information et de communication. Après la virtualisation, le Cloud parait être la révélation qui
va permettre aux entreprises d’être plus performantes et de gérer le coût des systèmes
d’information plus sereinement. Mais suite à cette entrée fracassante nous pouvons tout de même
nous demander ce qu’est le Cloud Computing ? C'est pour cela que ce travail de fin d’études de
baccalauréat s'intéresse à ce domaine tout nouveau, du moins pour nous.
Les technologies de l’information et de la communication évoluent et révolutionnent
nos modes de vie et de travail. Le Cloud Computing ou informatique virtuelle (en nuage), est
apparu ces dernières années comme un nouveau modèle de gestion et d’utilisation des systèmes
informatiques. Le concept consiste à déporter sur des serveurs distants les traitements et stockages
habituellement effectués en local afin d’y accéder sous forme de service.
Le Cloud Computing est un terme général employé pour désigner la livraison de ressources
et de services à la demande par internet. Il désigne le stockage et l’accès aux données par
l’intermédiaire d’internet plutôt que via le disque dur d’un ordinateur. Il s’oppose ainsi à la notion
de stockage local, consistant à entreposer des données ou à lancer des programmes depuis le disque
dur. La notion de Cloud ne doit pas non plus être confondue avec celle du Network Attached
Storage (NAS), utilisée par beaucoup d’entreprises via un serveur en résidence. Ces réseaux locaux
n’entrent pas dans la définition du Cloud. Cependant, certains NAS permettent d’accéder aux
données à distance depuis Internet.
De manière générale, on parle de Cloud lorsqu’il est possible d’accéder à des données ou à des
programmes depuis internet, ou tout du moins lorsque ces données sont synchronisées avec
d’autres informations sur internet. Il suffit donc pour y accéder de bénéficier d’une connexion
internet.
21
Figure 7 : Accès au Cloud depuis Internet
L’image du Cloud est utilisée de façon métaphorique pour désigner internet. Cette comparaison
date de l’époque à laquelle on représentait les infrastructures gigantesques des fermes de serveurs
internet sous la forme d’un grand nuage blanc, acceptant les connexions et distribuant des
informations tout en flottant.
Cette technologie permet aux entreprises d’acheter des ressources informatiques sous la
forme de service, de la même manière que l’on consomme de l’électricité, au lieu d’avoir à
construire et entretenir des infrastructures informatiques en interne. Selon U.S. National Institute
of Standard and Technology, le Cloud Computing est un modèle permettant d’établir un accès à la
demande en réseau vers un bassin partagé de ressources informatiques configurable. Ces
ressources sont par exemple des réseaux, des serveurs, de l’espace de stockage, des applications
et des services. Elles peuvent être approvisionnées rapidement avec un effort de gestion et une
interaction avec le fournisseur de services minimes. Le modèle Cloud met en avant la disponibilité,
et se compose de cinq caractéristiques essentielles, trois modèles de livraisons, et quatre modèles
de déploiement.
22
Figure 8 : Accès au Cloud avec diffèrent plateforme.
23
- En 1933 Norman B. Krim et Jacob Goldman, le premier invente le transistor et la
seconde force le Palo Alto Research Center à sortir de terre. Ce centre de recherche
permettra des avancées technologiques aussi fondatrices que le protocole Ethernet, et bien
d’autres.
- En 1936 Alan Turing, inventeur de la machine de Turing, rend la pensée calculable,
fondement de l’intelligence artificielle.
- En 1960 Joseph Carl Robnett Licklider, moins connu, il apporta pourtant lui aussi un
fort coup de pouce à la « démarche internet » fondatrice de l’informatique en nuages. Dès
1960 il rédige le document Man-Computer Symbiosis (symbiose Homme-Machine) où il
anticipe l’informatique interactive, les bibliothèques numériques, le commerce
électronique, la banque en ligne.
- En 1972 Vinton Cerf et Robert E. Kahn, ils font franchir en 1972 le premier gué de
l’informatique vers le nuage en inventant le protocole du futur internet TCP (Transmission
Control Protocol).
- En 1974 Roland Moreno, inventeur de la carte à puce présente dans tous les objets
numériques qui nous permettent d’accéder aux nuages numériques.
- En 1975 Bill Gates, sans l’incontournable système Windows et fondateur de Microsoft
avec Paul Allen.
- En 1976 Steve Jobs, à qui l’on doit de voir des « pommes croquées » se répandre sur la
planète depuis près de 40 ans ! Mais aussi celui qui a su rendre « indispensable » les
premiers véhicules conduisant nos attentes vers le Cloud !
24
2.1.2. Quelques outils de publication en ligne tendance vers le Cloud
CARACTERISTIQUE DU CLOUD
Une architecture dite Cloud possède les caractéristiques principales suivantes :
- Elle offre un service mesuré qui peut être facturé à l’usage, en fonction de ce que nous
consommons. C’est donc un libre-service à la demande.
- Elle offre une accessibilité via le réseau par des clients variés, c'est à dire par des
architectures hétérogènes.
25
- Elle offre une mise en commun des ressources, si deux services d’une entreprise utilisent
le même logiciel de comptabilité, ils partageront le service Cloud « comptabilité » de
l’entreprise. Cette ressource sera donc mise en commun entre plusieurs utilisateurs.
- Elle offre une élasticité permettant d’adapter facilement le service, que ce soit en taille de
stockage ou bien en puissance. En effet, il y a mutualisation et allocation dynamique de
capacité (adaptation flexible aux pics de charge).
- Elle offre des services au lieu de logiciels techniques avec une mise à jour régulière et
automatique.
Ces notions sont regroupées par les anglo-saxons sous le vocable Elastic Computing
capacity. Le National Institute of Standards and Technology en a donné une définition succincte
qui reprend ces principes de base : « L'informatique dans les nuages est un modèle pratique, à la
demande, pour établir un accès par le réseau à un réservoir partagé de ressources informatiques
configurables (réseau, serveurs, stockage, applications et services) qui peuvent être rapidement
mobilisées et mises à disposition en minimisant les efforts de gestion ou les contacts avec le
fournisseur de service. »
26
Figure 9 : Différentes familles du Cloud.
La figure 9 illustre bien cette diversité. En fin de mieux comprendre le trois termes ci-
dessous. Nous allons parler de chacune de ces catégories indépendamment.
27
Cloud clients
Mobile App, web browsers, terminal,
émulateur…
SaaS
Communication, virtual desktop, Email, CRM,
games…
PaaS
Web server, databases, Developpement Tools,
Execution Runtime,…
IaaS
Storages, Server, Virtual Machine, Network,
Load balancers,..
Comme solution, le Cloud est la mise en flexibilité (ou en disponibilité) de ces 4 niveaux. Les
moyens employés sont essentiellement l'isolation verticale et le découpage horizontal de chaque
niveau. Il faut en effet toujours être en mesure de remplacer chaque élément de la solution globale
pour que le service au client final ne s'interrompe pas. L'isolation est assurée par des normalisations
existantes ou à inventer, et est obligatoire, car les 4 niveaux étant de nature différentes, ils ne
peuvent s'interpénétrer.
Même si les techniques utilisées pour atteindre ce résultat ne sont pas fixées, elles comportent
généralement au moins la virtualisation et la décomposition granulaire (d'entités habituellement
monolithiques). En cela, il y a un rapprochement évident avec la philosophie générale d'Unix, qui
décompose toute fonction finale en briques élémentaires simples, stables et compréhensibles.
Cependant, pour Unix, c'est le développeur qui fait ce travail d'assemblage, alors que dans le cas
du Cloud c'est parfois l'utilisateur final. La transformation en Cloud est donc la mise en flexibilité
de ces 4 niveaux correspond aux termes généralement notés ainsi :
28
a. IaaS (Infrastructure as a Service)
L'infrastructure en tant que service ou, en anglais, Infrastructure as a service (IaaS) est un
modèle de Cloud Computing où :
29
Ici l’utilisateur gère mais ne contrôle pas l’infrastructure Cloud (réseaux, serveurs, système
d’exploitation, stockage). Il a ainsi les contrôles sur les applications déployées et la possibilité de
configurer l’environnement d’hébergement applicatif.
Data as a Service, ou DaaS, est un cousin des Software as a Service. Comme tous les
membres de la famille des "as a Service" (AAS), DaaS est basée sur le concept où le produit, les
données dans ce cas, peut être fourni à l'utilisateur sur demande quelle que soit la distance entre
l'utilisateur et le fournisseur des données. En outre, l'émergence de l'architecture orientée services
(SOA) et interopérable a rendu la plate-forme, sur laquelle les données sont enregistrées, sans
importance. Cette évolution a permis l'émergence récente du nouveau concept DaaS.
Les données utilisées au sein d'un service ont d'abord été principalement utilisées par des
applications composites (mashups), mais elles sont maintenant de plus en plus utilisées à la fois
commercialement et, moins fréquemment, au sein d'organisations comme l'ONU. La plupart des
organisations stockent leurs données avec un référentiel autonome, pour lequel un logiciel a été
développé spécifiquement pour y accéder et pour les présenter. Comme le nombre de logiciels
dans un même écosystème se multiplie mais pas les données et que les interactions nécessaires
entre les logiciels augmentent, une autre couche d'interface a été développée. Cette interface,
collectivement connue sous le nom d'Enterprise Application Intégration (EAI), a souvent eu
tendance à rendre captifs les utilisateurs face à leur fournisseur. En effet, il est plus facile
d'échanger des données entre applications du même fournisseur car elles reposent sur les mêmes
technologies.
Le résultat de combiner les logiciels avec leurs données et une couche de middleware EAI n'a fait
qu'augmenter la quantité de logiciels à maintenir au sein des organisations, uniquement pour
utiliser certaines données. En plus des coûts de maintenance, chaque modification du format des
données entraîne son lot d'achats des mises à jour logicielles. Cette situation contribue à
30
l'attractivité du DaaS auprès des consommateurs de données car ce concept permet la séparation
du coût des données et de celui de l'utilisation de tel logiciel spécifique ou de telle plateforme.
Data as a Service sous-entend qu'un service peut fournir des données de qualité à un endroit
précis. Ces données sont nettoyées, enrichies et mises à disposition de différents systèmes,
applications ou utilisateurs, quel que soit l'endroit où ils sont dans leur organisation ou sur le
réseau. Ainsi, les données au travers de services offrent les avantages suivants :
- Agilité : Les clients peuvent réagir rapidement en raison de la simplicité de l'accès aux
données et du fait qu'ils n'ont pas besoin de connaissances approfondies du référentiel des
données. Si les clients ont besoin d'une structure de données légèrement différente ou de
sources de données précises, la mise en œuvre est facilitée car les changements sont
minimes. Il faut s'assurer que les technologies du Web des données soient utilisées par le
service DaaS pour bénéficier de cette agilité.
- Rentabilité : Les fournisseurs peuvent constituer une base de données avec des experts et
dissocier les coûts des interfaces pour les utilisateurs, ce qui rend les demandes de
changement d'interfaces utilisateurs beaucoup moins coûteuses.
- Qualité des données : L'accès aux données est contrôlé par les services de données, ce qui
tend à améliorer la qualité des données, car il n'y a qu'un point unique pour leurs mises à
jour et pour leur accès. Un administrateur peut voir toutes ces données au travers d'un seul
service sans se soucier du logiciel qui a été utilisé pour produire ses données.
Les inconvénients du DaaS sont généralement similaires à ceux associés au type de services du
« Cloud Computing », comme la dépendance du client sur la capacité du prestataire de services
pour éviter les temps d'arrêt des serveurs. Spécifiquement au modèle DaaS, une critique courante
est que, par rapport à la livraison de données traditionnelles, le consommateur doit vraiment
« louer » les données plutôt que les télécharger une fois pour toutes, pour les utiliser pour produire
un graphique ou une carte, ou éventuellement effectuer des analyses.
Le logiciel en tant que service ou en anglais le Software as a Service (SaaS) est un concept
consistant à proposer un abonnement à un logiciel plutôt que l'achat d'une licence. Avec le
développement des technologies de l'information et de la communication, de plus en plus d'offres
SaaS se font au travers du web. Il n'y a alors plus besoin d'installer une application de bureau, mais
d'utiliser un programme client-serveur. Ce concept, apparu au début des années 2000, prend la
suite de celui du fournisseur de service d'application (« application service provider » - ASP).
L’entreprise loue les applications du fournisseur de services. Plus besoin d’acheter un logiciel. Ces
applications sont accessibles via différentes interfaces, navigateurs Web, clients légers…
31
Figure 13 : Application dans le modèle des services.
Le terme SaaS (logiciel en tant que service) a remplacé les précédents termes tels que ASP
(Application Service Provider) ou encore « On Demand ». Il est apparu le 28 février 2001, dans
un article « Strategic Backgrounder: Software As A Service » publié par The Software &
Information Industry's (SIIA) eBusiness Division, édition de Washington DC. La différence entre
le logiciel en tant que service (SaaS) et les précédents modèles tels que ASP réside dans le fait que
les applications s’appuyant sur ce modèle ont été nativement conçues pour le web. Précédemment,
il s’agissait en général d’un front-end web appliqué à des applications traditionnelles.
Une étude menée par MARKESS International montre que des domaines comme les solutions
collaboratives et la communication d'entreprise sont maintenant largement adoptés en mode le
logiciel en tant que service (SaaS). Les exemples de services collaboratifs les plus utilisés en mode
SaaS (logiciel en tant que service) sont le partage d'agendas en ligne, les outils de conférence à
distance, les services de gestion de contacts et de présence, la gestion documentaire et/ou de
contenu ainsi que la messagerie d'entreprise. L'adoption de ces outils devrait considérablement
augmenter d'ici 2020.
En 2007, le marché des logiciels en tant que service (SaaS) était estimé à près de 5 milliards de
dollars US dans le monde et 122 millions d'euros en France. Une étude de Gartner Group prédisait
32
alors le doublement du marché d'ici 2011. En 2010, la progression s'avère plus modeste que prévue
et les prévisions sont revues à la baisse.
Les avantages :
L'utilisation de solutions logicielles en tant que service (SaaS) en entreprise permet un meilleur
contrôle des charges techniques. L'ensemble des solutions techniques étant de délocalisées le coût
devient fixe et est, généralement, fonction du nombre de personnes utilisant la solution logicielle
en tant que service (SaaS). Le prix par utilisateur englobant le coût des licences des logiciels, de
la maintenance et de l'infrastructure, il est régulier que le coût d'une solution logicielle en tant que
service (SaaS) soit moindre que l'acquisition des licences et un déploiement en interne. Cependant
le coût d'installation et de formation du personnel fait que cette solution reste aujourd'hui
inaccessible pour bon nombre d'entreprises qui ne voient pas d'intérêt suffisamment concret pour
passer à cette solution.
Les avantages du logiciel en tant que service (SaaS) présentent un impact budgétaire et financier
plutôt moindre. Si les coûts totaux d'acquisition et de maintenance de la solution (TCO, total cost
of ownership) s'avèrent moyens, contrairement à une acquisition traditionnelle de licence qui est
généralement passée en immobilisation (CAPEX, hors maintenance).
Un autre avantage pour les entreprises est la rapidité de déploiement. Les solutions logicielles en
tant que service (SaaS) étant déjà préexistantes le temps de déploiement est extrêmement faible.
Dans la même lignée, les solutions logicielles en tant que service (SaaS) sont généralement très
flexibles et permettent de mettre en place des solutions « On-Demand ».
Les inconvénients :
Lors de la mise en place de solutions logicielles en tant que service (SaaS), les données relatives à
l'entreprise cliente sont, généralement, stockées sur les serveurs du prestataire fournissant la
solution. Cette délocalisation des données peut amener des soucis de confidentialité.
La délocalisation des serveurs de la solution logicielle en tant que service (SaaS) permet également
un accès nomade aux données de l'entreprise. Cet accès entraîne un souci de sécurité de
l'information lors du départ de collaborateurs. Il est indispensable d'avoir mis en place des
procédures permettant, lors d'un départ, de supprimer l'habilitation de l'ancien collaborateur à
accéder aux données de l'entreprise.
Par ailleurs, l'intégration des applications logicielles en tant que service (SaaS) entre elles ainsi
qu'avec les autres applications du système d'information, hébergées dans les centres de données de
l'entreprise, figure parmi les principaux enjeux liés au logiciel en tant que service (SaaS). De
nouveaux profils d'acteurs apparaissent pour répondre à cet enjeu à travers des plates-formes
33
applicatives de type PaaS (Platform as a Service) fournissant des briques complémentaires ou des
APIs permettant à ces applications de dialoguer entre elles.
Il est également important d'adapter son Plan de Continuité de l'Activité à l'intégration de solutions
logicielles en tant que service (SaaS) ainsi que de prévoir les divers scénarios possibles en cas de
problèmes avec le prestataire de la solution logicielle en tant que service (SaaS).
Les migrations informatiques peuvent être compliquées puisqu'il faut basculer les données de la
plateforme d'un fournisseur vers celle d'un autre, avec divers problèmes associés (compatibilité,
apparence pour le client, etc.). Pour certains, avec le logiciel en tant que service (SaaS), le client
peut se trouver lié à son fournisseur.
34
Figure 14 : Cloud Privé
Les services de Cloud public sont fournis par un tiers, par l’intermédiaire d’internet.
Ces services sont vendus sur demande généralement dans la minute ou l’heure qui suit la requête.
Les clients payent uniquement pour les cycles des CPU, le stockage ou la bande passante qu’ils
consomment. Les principaux fournisseurs de Cloud public sont Amazon Web Services, Microsoft
Azure, IBM et Google Computer Engine. Les utilisateurs de services de Cloud public n’ont pas
besoin d’investir dans le matériel, les logiciels, ou les infrastructures qui sont gérées par les
fournisseurs. On y retrouve de nombreuses applications SaaS professionnelles allant du CRM
(Customer Resource Management) aux gestionnaires de transactions en passant par les outils
analytiques de données. Les IaaS pour les services de stockage et de Computing reposent
également sur le Cloud public. Il en va de même pour les PaaS destinées au développement
d’applications Cloud.
35
2.4.3. Cloud communautaire
Le Cloud communautaire, comme son nom l’indique est utilisé par plusieurs organisations
qui ont des besoins communs. Comme dans le Cloud privé, le Cloud communautaire peut être géré
par les organisations elles-mêmes ou par une partie tierce. Et il peut être hébergé sur le site des
consommateurs ou chez un hébergeur extérieur.
Le Cloud communautaire peut héberger une application métier très spécialisée, mais commune à
plusieurs entités, qui décident de fédérer leurs efforts en construisant un Cloud pour l’héberger et
la gérer.
Enfin, le Cloud Hybride est le croisement entre le Cloud public et le Cloud privé. Les
entreprises peuvent par exemple effectuer des tâches très importantes ou des applications sensibles
sur le Cloud privé, et utiliser le Cloud public pour les tâches nécessitant une scalabilité des
ressources. L’objectif du Cloud hybride est de créer un environnement unifié, automatisé et
scalable tirant avantage des infrastructures de Cloud public tout en maintenant un contrôle total
sur les données.
En réalité, un Cloud privé ne peut exister de manière isolée du reste des ressources informatiques
de l’entreprise et du Cloud public. La plupart des entreprises utilisant le Cloud privé convergent
peu à peu vers le Cloud hybride. Celui-ci permet aux entreprises de choisir entre un Data Center
traditionnel ou un Cloud privé pour le stockage de données. Il permet également de profiter des
ressources du Cloud public comme les SaaS les plus récents ou les ressources virtuelles élastiques
des IaaS. Enfin, il permet de faciliter la portabilité des données, des applications et des services et
offre davantage de choix en termes de modèles de déploiement.
36
Figure 17 : Cloud Hybride
CLASSIFICATION DU CLOUD
2.5.1. Cloud d’entreprise
Les coûts des Data Center et des services informatiques peuvent être réduits et établis
de manière proportionnelle à l’utilisation. Selon la quantité d’usage, les coûts seront
plus ou moins élevés grâce à l’élasticité rapide.
Les dépenses et les prises de risques pour l’innovation peuvent être considérablement
réduites grâce au Cloud Computing. Ainsi, les entreprises peuvent prendre des paris
plus risqués et tester davantage de nouvelles idées. Les nouveaux projets peuvent être
soutenus directement s’ils prennent de l’envergure, ou abandonnés s’ils échouent. La
scabilité et l’élasticité offre aux entreprises des possibilités inédites pour essayer de
nouvelles idées d’activités et pour les développer si elles s’avèrent pertinentes.
Aujourd’hui, les chaînes de valeur des entreprises sont composées d’environ 20
entreprises. Le Cloud Computing permet à une entreprise de collaborer d’une nouvelle
manière avec ses partenaires commerciaux. Or, la collaboration est la clé vers
l’obtention d’avantages compétitifs au sein de la chaîne de valeur. En développant des
espaces de travail partagés au sein des Communauté Cloud, les employés d’entreprises
multiples peuvent travailler ensemble au sein d’un réseau d’entreprise virtuel comme
s’ils travaillaient pour une seule et même compagnie. Ils participent tous au sein du
même système de création de valeur, et partagent leurs ressources de communication,
d’information et d’informatique.
Pour des raisons de recherche et de développement, des instituts de recherche mettent sur
pied des environnements de Cloud. Leur développement est encouragé et financé par des
37
gouvernements. L'accès est exclusivement réservé aux personnes exerçant dans le même
domaine de recherche, ou appartenant aux instituts de recherche associés, ou ayant une
dérogation précise. Ces plateformes sont pour la plupart orientées projets.
Le développement des réseaux sociaux et des jeux en ligne nécessite de plus en plus de
grandes quantités de ressources. Cette nécessité est due à la croissance presque exponentielle
d'utilisateurs. De plus, l'essence de ces environnements est la mise en commun d'un certain
nombre de données et de connaissances (donc de ressources). Dans ce contexte, le
développement d'une plateforme similaire au Cloud devient une évidence pour optimiser
l'utilisation des ressources et faciliter le partage de données.
C'est le modèle le plus répandu. Une entreprise, appelée fournisseur, met à la disposition d'autres
(appelées clients) une plateforme d'exécution d'applications et assure le service informatique
inhérent. Il s'agit d'un modèle ouvert à tout public et à caractère commercial. La plateforme héberge
tous types d'applications et l'accès à ces applications est ouvert aux utilisateurs externes. Les défis
de sécurité et d'administration sont importants dans ce modèle. La plateforme de Cloud Computing
Amazon Elastic Compute Cloud (EC2) fait partie de cette catégorie. Sachant que cette catégorie
peut regrouper les autres. De l'informatique utilitaire des années 60, au service bureau des années
70, tout en passant par l'émergence d'Internet et des avancées de virtualisation, le Cloud Computing
comme les chiffres nous le confirme, est promis à un bel avenir.
38
Coût optimisé:
Le Cloud Computing est avant tout économique, surtout si vous êtes une petite entreprise ou
une start-up. En effet, il représente un gain de coût non-négligeable. Fini les investissements dans
une infrastructure technologique coûteuse (logiciel, droits de licence et ainsi de suite) ! Vous payez
uniquement l’espace de stockage dont vous avez besoin. De plus, vous êtes libre de rompre le
service quand vous le souhaitez, quelle qu’en soit la raison : désir de changer de fournisseur ou
tout simplement parce qu’il ne vous est plus utile. Ce qui nous amène au prochain avantage, la
flexibilité du Cloud.
L’élasticité:
Les services sont flexibles et peuvent être ajustés à tout moment en fonction des besoins et de
l’activité de l’entreprise. L’entreprise peut diminuer ou augmenter les ressources disponibles,
payant seulement ce qu’elle consomme. Ces ressources peuvent être partagées permettant aux
employés de travailler à plusieurs sur un même document, et ce, en temps réel.
Mises à jour automatiques:
En plus de la maintenance, le fournisseur de l’offre Cloud se charge de toutes les mises à jour
du service, ce qui vous permet à vous et à vos employés de vous concentrer plus efficacement sur
vos missions et, par la même occasion, d’optimiser votre productivité.
Suivi du projet:
Le Cloud permet aussi un meilleur encadrement et une meilleure gestion des projets. Leur
organisation est considérablement facilitée par les solutions de communication offertes par le
Cloud et la possibilité de suivre simultanément leur progression.
Sécurité optimale:
39
automatiquement et protégées par des systèmes de sécurité performants. La confidentialité des
données est garantie, encore plus qu’au sein de l’entreprise. Ceci veut aussi dire qu’en cas de perte
ou de vol de votre ordinateur, toutes vos données ne sont pas perdues, ni accessibles par une tierce
personne, celles-ci n’étant pas stockées dans l’ordinateur mais dans le « nuage » !
Les différences entre les segments de marché distincts sont relativement limitées. Citrix
semble connaître sa plus haute position dans le domaine public, et Microsoft seulement auprès des
entreprises du segment « Medium sized businesses » (de 50 à 250 collaborateurs aux Pays-Bas).
Parmi les pouvoirs publics, l’on utilise principalement le logiciel pour la virtualisation de
serveurs, à savoir sur 94 % des sites environ. Vient ensuite la santé publique et l’enseignement,
avec respectivement 87 % et 83 %. C’est dans le secteur du transport que l’utilisation est la plus
faible, deux tiers des sites déclarent utiliser la virtualisation des serveurs.
40
L’année dernière, la part de VMware a augmenté d’environ 2,5 %, tandis que celle de Citrix est
restée plus ou moins stable. C’est ce qu’il ressort d’une analyse menée par Computer Profile auprès
de quelque 6200 interrogés que l’infrastructure utilisée, responsables du secteur IT des sites
professionnels de 50 collaborateurs ou plus.
Le Cloud Computing implique d’importants enjeux économiques pour les entreprises, qu’il
s’agisse d’un modèle de Cloud privé, public ou hybride.
La flexibilité offerte par le système du Cloud favorise la réactivité dans les organisations
et confère une évolutivité sans précédent à leurs systèmes d’information. Le nuage favorise une
meilleure réactivité, particulièrement en réduisant le temps requis à l’accès et au partage simultané
entre des millions d’utilisateurs d’une application. Outre la flexibilité qu’il procure, le Cloud donne
par la même occasion différente niveaux d’accès en fonction des responsabilités au sein de
l’entreprise.
41
SOLUTIONS CLOUD
2.8.1. Présentation
Eucalyptus
Eucalyptus est un outil permettant de construire des infrastructures de Cloud Computing sur la
base de serveurs en cluster. Il est issu d’un projet de recherche de l’université de Californie. Il
permet de créer des Cloud IaaS de type privé ou hybride. Les moteurs de virtualisation supportés
sont Xen, KVM pour la version open source. Il existe également une version propriétaire
commercialisée par la société Eucalyptus Systems. Il apporte des fonctionnalités supplémentaires
comme le support de VMware, celui des machines virtuelles Windows et l’intégration SAN.
OpenStack
Il est né de la fusion de deux projets portés l’un par la Nasa et l’autre issu de l’offre de l’hébergeur
américain Rackspace Cloud Server. L’ensemble de la plateforme est disponible sous licence
Apache 2.0. OpenStack [9] est un logiciel libre qui permet la construction de Cloud privé et public.
Il est aussi une communauté et un projet en plus d'un logiciel qui a pour but d'aider les
organisations à mettre en œuvre un système de serveur et de stockage virtuel. Il s'installe sur un
42
système d'exploitation libre comme Ubuntu ou Debian et se configure entièrement en ligne de
commande. C'est un système robuste et qui a fait ses preuves auprès des professionnels du
domaine.
En comparaison avec les autres produits, OpenStack semble avoir la plus grande et
la plus active communauté. Les membres de la communauté sont toujours prêts à aider les autres
à trouver des solutions aux problèmes qui se posent. La technologie est populaire parmi une vaste
communauté de spécialistes et est soutenue par des sociétés telles que Cisco, Dell, NASA, Intel,
AMD, Citrix, Rackspace, et RightScale.
Les caractéristiques principales d’OpenStack sont les suivantes :
- Capacité à gérer les ressources du serveur de produits virtualisées.
- Capacité à gérer des réseaux locaux.
- Gestion de l'image de la machine virtuelle.
- Groupes de sécurité.
- Contrôle d'accès basé sur les rôles.
- VNC proxy via un navigateur Web
Afin de caractériser chaque solution open source et assurer le choix adéquat pour la
construction d'un Cloud, nous avons réalisé une étude comparative des quatre solutions libres en
se basant sur différents critères de classification.
Le tableau ci-dessous résume les principales caractéristiques de chaque solution.
Eucalyptus OpenStack OpenNebula CloudStack
Date de sortie Mai 2008 Octobre 2010 Mars 2008 Mai 2010
43
matériel et composants et dispositif paramètre par
réseau. plusieurs supportées défaut
fichiers de
configuration
Maturité Aboutie, produit Niveau deAvancée, Manque de
complet avec maturité avance deuxième maturité.
interface de avec saversion stable,
gestion web neuvième solution
version supportée par
Debian
Documentation Correcte, Excellente : une Complete, La
complète mais documentation documentation documentation
pas toujours à officielle référence de tous ne traite pas des
jour. disponible et les fichiers de questions
bien détaillée configuration complexes dans
leur intégralité,
Modelé de Cloud public et Cloud public et Cloud prive Cloud public et
déploiement prive prive prive
Tableau 1 : Tableau comparatif de chaque solution Cloud
44
Le débat n’est plus sur le choix du on-premise ou du Cloud, mais sur les avantages du
Cloud hybride et des architectures ‘Edge’ de proximité, et sur l’intégration stratégique du
Cloud public.
La montée du Serverless
L’informatique Serverless, l’exécution des applications sans avoir à se préoccuper de
l’infrastructure serveurs, fait de plus en plus d’émules. Pour autant, casser des morceaux
entiers d’infrastructure pour les faire basculer dans le Cloud est loin d’être un geste naturel
pour la majorité des entreprises.
b. La virtualisation
La virtualisation de poste de travail
En virtualisant davantage, l’enjeu est de taille : progresser en agilité sans risquer de fuite
de données, et en contrôlant complètement le processus.
45
Auparavant réservée aux grands groupes qui investissaient massivement dans les IT, la
virtualisation se démocratise, avec des solutions clés en main, plus légères et facilement
implémentables.
Cela permet à votre salarié d’accéder à son PC virtuel depuis n’importe quel terminal, à
partir du moment où il a une connexion internet de bonne qualité. Il y retrouvera l’ensemble
de son environnement de travail, applications, données, et même son fond d’écran.
Selon une étude de Forrester menée auprès de 2.600 décideurs informatiques aux Etats-
Unis et en Europe, 54 % des entreprises ont appliqué la virtualisation de serveurs x86 ou
le feront dans les 12 prochains mois. Dans le détail, on s’aperçoit que 53 % des PME ont
déjà virtualisées leurs serveurs x86 ou le feront dans les 12 prochains mois. Ce marché
profite donc à plein de la recherche d’économies des entreprises.
Une tendance qui se confirme au niveau des systèmes d’exploitation. Les PME sont 36 %
à avoir virtualisées leur environnement d’exploitation contre 31 % pour les entreprises ont
général. D’ici deux ans, les entreprises interrogées prévoient de virtualisées une moyenne
de 54 % de l’ensemble de leurs systèmes d’exploitation, alors que les PME interrogées
s’attendent à un taux de virtualisation correspondant à 61 %.
46
Au niveau mondial, le cabinet d'études IDC estime que les services Cloud représentaient 5
% des investissements TIC (technologies des informations et de la communication) mondiaux en
2009, soit 17 milliards de dollars. Stimulé par une croissance moyenne annuelle de 25 %, le Cloud
Computing capterait 10 % des investissements mondiaux en 2013, soit 44 milliards de dollars. A
l'échelle européenne et selon une étude réalisée, pour la Commission européenne, par le cabinet
PAC, le marché du Cloud Computing dans l'Europe des 27 pesait 4 milliards d'euros en 2009. Ce
montant représentait environ 1,5 % du marché total des logiciels et des services, mais pourrait
croître fortement et atteindre 13 % du marché total des logiciels et services, à l'horizon 2015. En
France, le cabinet Markess International estime le marché de l'hébergement et des services de
Cloud Computing à 2,3 milliards d'euros, en 2011. Il devrait atteindre les 3,3 milliards en 2013. «
En raison d'un besoin croissant en service de mobilité et face à la multiplication des terminaux à
usage professionnel (laptops, tablettes, smartphones, etc.), l'avenir du Cloud est tout tracé, souligne
Hélène Caraux, chef de projet Private Cloud Computing chez OVH, spécialiste de l'hébergement
de sites internet. Le Cloud permet de se libérer de la contrainte hardware et contribue au recentrage
de l'entreprise sur son cœur de métier. »
LE BIG DATA
L’explosion quantitative des données numériques a obligé les chercheurs à trouver de
nouvelles manières de voir et d’analyser le monde. Il s’agit de découvrir de nouveaux ordres de
grandeur concernant la capture, la recherche, le partage, le stockage, l’analyse et la présentation
des données. Ainsi est né le « Big Data ». Il s’agit d’un concept permettant de stocker un nombre
indicible d’informations sur une base numérique. Selon les archives de la bibliothèque numérique
de Association for Computing Machinery (ou ACM) dans des articles scientifiques concernant les
défis technologiques à relever pour visualiser les « grands ensembles de données », cette
appellation est apparue en octobre 1997. [8]
Littéralement, ces termes signifient méga données, grosses données ou encore données
massives. Ils désignent un ensemble très volumineux de données qu’aucun outil classique de
gestion de base de données ou de gestion de l’information ne peut vraiment travailler. En effet,
nous procréons environ 2,5 trillions d’octets de données tous les jours. Ce sont les informations
provenant de partout : messages que nous nous envoyons, vidéos que nous publions, informations
climatiques, signaux GPS, enregistrements transactionnels d’achats en ligne et bien d’autres
47
encore. Ces données sont baptisées Big Data ou volumes massifs de données. Les géants du Web,
au premier rang desquels Yahoo (mais aussi Facebook et Google), ont été les tous premiers à
déployer ce type de technologie.
Cependant, aucune définition précise ou universelle ne peut être donnée au Big Data. Etant un
objet complexe polymorphe, sa définition varie selon les communautés qui s’y intéressent en tant
qu’usager ou fournisseur de services. Une approche transdisciplinaire permet d’appréhender le
comportement des différents acteurs : les concepteurs et fournisseurs d’outils (les informaticiens),
les catégories d’utilisateurs (gestionnaires, responsables d’entreprises, décideurs politiques,
chercheurs), les acteurs de la santé et les usagers.
Le Big data ne dérive pas des règles de toutes les technologies, il est aussi un système technique
dual. En effet, il apporte des bénéfices mais peut également générer des inconvénients. Ainsi, il
sert aux spéculateurs sur les marchés financiers, de manière autonome avec à la clé la constitution
des bulles hypothétiques.
L’arrivée du Big Data est maintenant présentée par de nombreux articles comme une nouvelle
révolution industrielle semblable à la découverte de la vapeur (début du 19e siècle), de l’électricité
(fin du 19e siècle) et de l’informatique (fin du 20e siècle). D’autres, un peu plus mesurés, qualifient
ce phénomène comme étant la dernière étape de la troisième révolution industrielle, laquelle est
en fait celle de « l’information ». Dans tous les cas, le Big Data est considéré comme une source
de bouleversement profond de la société.
Inventé par les géants du web, le Big Data se présente comme une solution dessinée pour permettre
à tout le monde d’accéder en temps réel à des bases de données géantes. Il vise à proposer un choix
aux solutions classiques de bases de données et d’analyse (plate-forme de Business Intelligence en
serveur SQL…).
Selon le Gartner, ce concept regroupe une famille d’outils qui répondent à une triple problématique
dite règle des 3V. Il s’agit notamment d’un Volume de données considérable à traiter, une
grande Variété d’informations (venant de diverses sources, non-structurées, organisées, Open…),
et un certain niveau de Vélocité à atteindre, autrement dit de fréquence de création, collecte et
partage de ces données.
Les créations technologiques qui ont facilité la venue et la croissance du Big Data peuvent
globalement être catégorisées en deux familles : d’une part, les technologies de stockage, portées
particulièrement par le déploiement du Cloud Computing. D’autre part, l’arrivée de technologies
de traitement ajustées, spécialement le développement de nouvelles bases de données adaptées aux
données non-structurées (Hadoop) et la mise au point de modes de calcul à haute performance
(MapReduce).
48
Il existe plusieurs solutions qui peuvent entrer en jeu pour optimiser les temps de traitement sur
des bases de données géantes à savoir les bases de données NoSQL (comme MongoDB, Cassandra
ou Redis), les infrastructures du serveur pour la distribution des traitements sur les nœuds et le
stockage des données en mémoire :
Chaque technologie, appartenant au système méga donnée, a son utilité, ses atouts et ses
inconvénients. Etant un milieu en perpétuelle évolution, le Big Data cherche toujours à optimiser
les performances des outils. Ainsi, son paysage technologique bouge très vite, et de nouvelles
solutions naissent très fréquemment, avec pour but d’optimiser encore plus les technologies
existantes. Pour illustrer cette évolution, MapReduce et Spark représentent des exemples très
concrets.
Décrit par Google en 2004, MapReduce est un pattern implémenté ultérieurement dans le projet
Nutch de Yahoo, qui deviendra le projet Apache Hadoop en 2008. Cet algorithme dispose d’une
grande capacité en matière de stockage de données. Le seul hic est qu’il est un peu lent. Cette
lenteur est notamment visible sur des volumes modestes. Malgré cela, les solutions, souhaitant
proposer des traitements quasi-instantanés sur ces volumes, commencent à délaisser MapReduce.
En 2014, Google a donc annoncé qu’il sera succédé par une solution SaaS dénommée Google
Cloud Dataflow.
Spark est aussi une solution emblématique permettant d’écrire simplement des applications
distribuées et proposant des bibliothèques de traitement classique. Entre-temps, avec une
performance remarquable, il peut travailler sur des données sur disque ou des données chargées en
RAM. Certes, il est plus jeune mais il dispose d’une communauté énorme. C’est aussi un des
projets Apache ayant une vitesse de développement rapide. En somme, c’est une solution qui
s’avère être le successeur de MapReduce, d’autant qu’il a l’avantage de fusionner une grande partie
des outils nécessaires dans un cluster Hadoop.
La filière Big Data en a attiré plusieurs. Ces derniers se sont positionnés rapidement dans
divers secteurs. Dans le secteur IT, on retrouve les fournisseurs historiques de solutions IT comme
Oracle, HP, SAP ou encore IBM. Il y a aussi les acteurs du Web dont Google, Facebook, ou
Twitter. Quant aux spécialistes des solutions Data et Big Data, on peut citer MapR, Teradata, EMC
ou Hortonworks. CapGemini, Sopra, Accenture ou Atos sont des intégrateurs, toujours des acteurs
principaux dans les méga données. Dans le secteur de l’analytique, comme éditeurs BI, on peut
49
citer SAS, Micro-strategy et Qliktech. Cette filière comporte aussi des fournisseurs spécialisés
dans l’analytique comme Datameer ou Zettaset. En parallèle à ces principaux participants, de
nombreuses PME spécialisées dans le Big Data sont apparues, sur toute la chaîne de valeur du
secteur. En France, les pionniers ont été Hurence et Dataiku pour les équipements et logiciels de
Big Data ; Criteo, Squid, Captain Dash et Tiny Clues pour l’analyse de données et Ysance pour le
conseil.
50
Chapitre 3. ANALYSE DES BESOINS ET PRESENTATION DES
SERVEURS UTILISES
Notre projet de nuage s’adresse essentiellement à trois types d’utilisateurs : l’administrateur, les
membres du projet et les clients. Cette première partie, sera pour annoncer et analyser les différents
besoins fonctionnels et non fonctionnels du nuage.
Les besoins fonctionnels sont pour détailler l’ensemble des fonctionnalités que le nuage doit offrir
aux membres du projet. Ce système réalisé doit répondre aux besoins fonctionnels suivants :
Gestions d’images
On parle d’images disques stockées par le service datastore. Le membre du projet doivent consulter
la liste des images autorisées pour les projets, les éditer. Aussi sera possible de lancer des nouvelles
instances de cette image, créer une nouvelle ou supprimer une existante.
Gestion d’instance
Une instance est une machine virtuelle en cours d’exécution ou dans un état connu comme
« suspendue » qui peut être utilise comme un serveur. Un membre du projet pourrait consulter la
liste d’instances des machines virtuelles actuelles plus quelques informations globales comme le
projet auquel elles appartiennent, le serveur hôte, l’adresse IP, la taille, le statut et les actions en
cours. Il aurait aussi les possibilités d’éditer, arrêter, suspendre, redémarrer ou supprimer une
instance. Aussi il pourrait se connecter à la console VNC de l’instance ou créer une nouvelle.
Gestion des volumes
Le nuage permettra aux membres du projet de consulter la liste des volumes disques virtuels
existants, la création d’un nouveau volume et la modification d’un ancien.
Gestion des flavors
Un flavor est une configuration de matériel disponible dans un serveur. Chaque flavor possède une
combinaison unique d’espace disque et la capacité de mémoire. L’utilisateur pourrait consulter la
51
liste de types d’instances disponibles, leurs spécifications en nombre de CPUs, mémoire, espace
disque et créer des nouvelles définitions d’instance.
52
Diagramme de cas d’utilisation général
Arreter VMs
Authentification ESXi Gerer EXSi & VMs <<include>>
Administrateur <<include>>
<<include>>
<<include>>
Status Performances
Demarrer VMs
<<include>>
Gerer resources
Creer VMs
<<extend>>
<<include>>
Gerer reseaux
<<include>>
<<include>>
Gerer les softwares Gerer les materiels
Gerer stockage
<<include>>
<<include>>
<<include>>
<<include>>
Authentification
<<include>>
Membre du projet
<<include>>
<<include>>
Services clients
<<include>>
<<include>>
Prive Public
<<extend>>
<<extend>>
Client
53
Diagramme de séquence
3 : Verification session()
4 : Demande s'authentifier()
5 : Saisi info()
6 : controle saissi()
7 : Verification existance()
11 : Creation session()
14 : Controle saisi()
15 : Enregistrerment compte service()
16 : Reussi
17 : Passer payement()
18 : info carte bancaire()
19 : Payement
20 : Verification carte()
21 : Enregistrement carte()
22 : Reussi
25 : Saisi infos()
26 : Verification infos()
27 : Enregistrement()
30 : Coordonne service()
31 : affiche coordonne du service()
54
3.1.3. Raffinement de cas d’utilisation
Cette partie consiste de décrire cas par cas les acteurs intervenant dans le système :
Cas de gestion des VMs (Virtual Machine)
La gestion des machines virtuelles nécessite un administrateur principal, qui devra :
- S’authentifier sur le serveur de virtualisation (ESXi)
- Créer une machine virtuelle
- Démarrer une machine
- Arrêter une machine
- Supprimer une machine
- Modifier une machine
- Voir les performances du serveur de virtualisation et des machines virtuelle
- Gérer les ressources.
Cas de gestion des ressources
L’administrateur devra contrôler les ressources globales du serveur de virtualisation ainsi
d’allouer les ressources suivantes aux machines virtuelles :
- Gérer et allouer les stockages (datastore)
- Gérer et allouer les réseaux
- Gérer et allouer la mémoire RAM
- Gérer et allouer le processus
55
DIAGRAMME D’ACTIVITE
3.2.1. Diagramme d’activité général
Authentification
[Instance n'existe pas]
Suppression de VMs
Modifier VMs
[Instance existe]
Authentification
Installer Instance
DASHBOARD
56
3.2.2. Diagramme d’activité (Création d’instance)
Demander Instance
Authentification
[Instance n'existe pas]
[Instance existe]
Créer matériel Créer Software
Installer Instance
SERVEURS UTILISES
3.3.1. Présentation des hyperviseurs
Un hyperviseur est une plate-forme permettant d'héberger différents OS sur une même machine
physique. Cette technologie est apparue dans les années 60 grâce à IBM, et a fait un véritable bond
en avant à partir du début des années 2000.Aujourd'hui, on compte deux types d'hyperviseurs : Le
type 1, dit native, et le type 2, dit logiciel.
57
Figure 24 : Hyperviseur Type 1
Le gros avantage de ce type d'hyperviseur, c'est qu'il permet d'allouer la quasi-totalité des
ressources disponibles aux machines virtuelles, car celui-ci est directement relié à la couche
matérielle. Cela est très utile lorsqu'il s'agit de virtualiser de gros serveurs (type Exchange)
demandant de conséquentes ressources pour fonctionner correctement.
A contrario, un seul hyperviseur de ce type peut être installé sur une machine physique. Ainsi, si
vous décidez de virtualiser beaucoup de machines, ou des machines demandant un nombre de
ressources conséquents, il faudra disposer d'une machine physique disposant d'une puissance
équivalente à l'intégralité des machines virtualisées, ou prévoir plusieurs machines physiques avec
d'autres hyperviseurs.
Un hyperviseur de type 2 est considéré comme un logiciel, s'installant et s'exécutant sur un système
d'exploitation déjà présent sur la machine physique.
58
Figure 25 : Hyperviseur Type 2
L'avantage d'utiliser ce type d'hyperviseur est la possibilité d'installer et d'exécuter autant
d'hyperviseurs que l'on désire sur notre système hôte, ce type n'étant pas relié directement au
matériel. La plupart du temps, les hyperviseurs de type 2 sont utilisés pour virtualiser des OS afin
de procéder à des tests de compatibilité et/ou de sécurité.
Il existe également un environnement dans lequel ce type d'hyperviseur est particulièrement utilisé
: Pour les utilisateurs Mac OSX ayant besoin d'utiliser Windows (en raison applications non
compatibles).
A contraire, celui-ci étant pas relié directement au matériel mais s'exécutant sur un OS déjà présent
sur la machine physique (qui consomme donc déjà des ressources), la quantité de ressources
pouvant être allouée aux machines virtualisées est moindre que sur un hyperviseur de type 1.
Il existe 3 grandes entreprises qui se démarquent pour le choix : VMware, Microsoft et Citrix. Pour
réaliser notre projet nous avons utilisé VMware comme solution.
VMware vSphere est un logiciel d'infrastructure de Cloud Computing de l'éditeur VMware, c'est
un hyperviseur de type 1 (Bare Metal), basé sur l’architecture VMware ESXi.
VMware vSphere nécessite une configuration matérielle restreinte précisée dans le guide de
compatibilité VMware. La gestion de ce serveur hôte peut se faire via plusieurs possibilités :
59
Availability, vMotion, Storage vMotion, Distributed Resource Scheduler, Fault
Tolerance…) depuis une seule console.
- Continuité d’activité améliorée : vSphere permet aux entreprises de réduire les coûts et
la complexité de leurs opérations de reprise et continuité d’activité, grâce à des
fonctionnalités informatiques toujours disponibles et à une protection multiniveau contre
les interruptions de service et la perte de données.
- Fourniture de l’informatique en tant que service : VMware vSphere est la seule plate-
forme de virtualisation qui permet aux clients de bénéficier des avantages du Cloud
Computing tout en préservant la sécurité, la conformité et le contrôle total sur les ressources
de l’entreprise.
60
Services applicatifs
Services de gestion
VMware vSphere ESXi 6 est un hyperviseur mis au point par la firme VMware. La
version 6 de vSphere est sortie le 3 février 2015 et représente la dernière version stable de
vSphere. De plus, c'est l'une des solutions les plus complètes du marché des hyperviseurs.
61
VSphere ESXi 6 est un hyperviseur de Type 1 et permet de gérer et virtualiser des ordinateurs ou
des serveurs.
Pour rappel, les hyperviseurs de Type 1 (Xen, vSphere, Hyper-V Server) sont des systèmes
installés directement sur le matériel, à la différence des hyperviseurs de Type 2 (VMware
Workstation, VMware Fusion ...) qui sont, pour leur part, installés sur la couche logicielle
(Windows, OSX …).
Un serveur vSphere ESXi 6 peut prendre en charge jusqu'à 1024 machines virtuelles et peut
supporter jusqu'à 480 CPU, 6 TB de RAM et jusqu'à 2048 disques durs virtuels par hôte. Une
Machine Virtuelle peut supporter jusqu'à 128 CPU virtuels, 4 TB de mémoire vive et des disques
virtuels jusqu'à 62 TB.
62
Chapitre 4. IMPLEMENTATION ET DEPLOIEMENT
Après la conception de notre plateforme nous allons passer à la conception et l’installation et la
configuration d’hyperviseur, puis nous allons créer des serveurs virtuels
ENVIRONNENT MATERIELLES
Pour développer notre système, nous avons utilisé comme environnement matériel :
Un ordinateur Dell que nous avons transformé en serveur physique de virtualisation de
capacité :
o Intel Core i5
o RAM 8 GB
o Disque dure 500 GB
o Système de virtualisation VT-x
Un routeur TP-Link pour la mise en réseau et l’accès à nos serveurs
Un ordinateur HP comme outil d’administrateur
o Intel Core i5
o RAM 8 GB
Un ordinateur client HP
63
ENVIRONNEMENT LOGICIELLES
Pour l’environnement logiciel, nous avons utilisé :
VMware vSphere ESXi 6.5
Ubuntu server 17.10
MySQL 5.7.22
Apache 2
vSphere client 6.0
PuTTy (Access distant avec le protocole SSH)
Pour les besoins de notre projet, nous avons installé la version "Standard" de VMware vSphere
ESXi 6.5.
Afin de créer et gérer les machines virtuelles et notre hyperviseur, nous allons installer un client.
Ce dernier nous permettra, via une interface graphique, de gérer et d'administrer notre serveur.
vSphere Client : simple logiciel à installer vous permettant d'administrer votre serveur.
vSphere Web Client : Le vSphere Web Client permet de se connecter au serveur depuis un
navigateur et permet donc d'effectuer les mêmes tâches d'administrations depuis le
navigateur.
Nous disposons que d'un seul vSphere, nous installerons donc vSphere Client. Ce dernier sera
installé sur un Windows 7 Professionnel. Cependant, vous êtes libre de l'installer sur une version
ultérieure ou sur un Windows Server.
64
4.2.2. Création machine virtuelle sous ESXi 6 avec vSphere web client
Pour créer une machine virtuelle, on clique sur "Créer/Enregistrer une VM".
Comme système OS à virtualiser nous avons choisi Ubuntu server 17.10, pour sa flexibilité au la
moins consommation des ressources.
Pour accéder à nos machines virtuelles nous avons utilisé l’outil PuTTy en utilisant le protocole
SSH sur le port 22
65
Figure 31 : PuTTy
Après avoir entré l’adresse IP de la machine virtuelle, clique sur « Open », une fenêtre
console apparaitra où on l’on doit entrer le nom d’utilisateur et mot de passe de la machine
virtuelle.
66
a. Configuration d’adresse IP
Pour notre projet, nous avons intérêt à attribuer les adresses statiques pour nos machines
serveurs pour éviter les reconfigurations matérielles au démarrage. Le fichier
/etc/network/interfaces permet de configurer les cartes réseau. Ce fichier est lu au démarrage du
système et lorsqu'on utilise les commandes ifup et ifdown.
auto eth0
iface eth0 inet static
address 150.1.200.2
netmask 255.255.0.0
gateway 150.1.200.1
[server string] La description du serveur, qui apparaitra à côté de son nom dans l'explorateur
Windows. Si la description contient le terme %h, il sera remplacé par le nom d'hôte de la
machine.
67
[encrypt passwords] Détermine si les mots de passe doivent être cryptés avant d'être transmis.
C'est fortement recommandé et tous les systèmes Windows à partir de 98 et NT4 SP3 utilisent
cette fonctionnalité par défaut.
[log file] Le nom du fichier qui contiendra le journal des activités du serveur. On peut avoir un
journal par machine client en utilisant %m dans le nom du fichier. Le %m sera remplacé par le
nom de la machine client.
68
Figure 34 : Edition du fichier de configuration Samba
Configuration samba du serveur 150.1.200.3
[global]
server string = Serveur de données 2
workgroup = WORKGROUP
netbios name = Serveur Donnees 2
public = yes
security = user
encrypt passwords = true
Configuration du partage de répertoire serveur IP : 150.1.200.3
[donnees2]
path = /home/dbserver12/donnees2
read only = no
browsable = yes
writable = yes
guest ok = yes
valid users = dbserver12
comment = Notre serveur de données 2
Lacement des services
Lancement :
/etc/init.d/samba start
Pour le stopper :
69
/etc/init.d/samba stop
Pour le relancer :
/etc/init.d/samba restart
Pour accéder au partage sous Windows, il suffit d'ouvrir le voisinage réseaux d'une station
Windows et de vérifier si la machine y est.
Pour se connecter en ligne de commande à un partage à partir de Linux, on peut utiliser la
commande.
smbclient //<nom du serveur>/<nom du partage> -U <utilisateur>
Pour active l’accès distant sous MySQL, il suffit d’accéder au fichier my.conf qui se trouve dans
le répertoire :
nano /etc/mysql/mysql.conf.d/mysqld.cnf
Par défaut, MySQL n'écoute que localhost. . Il faudra désactiver la ligne relative au bind-address
dans le fichier de configuration mysql:
/* bind-address = 127.0.0.1 */
Redémarrage du MySQL
/etc/init.d/mysql restart
70
Figure 36 : Configuration de mysql avec nano
a. Création des utilisateurs pour MySQL et attribution des privilèges
Création d’utilisateur en utilisant le code SQL pour serveur dbserver11 dans dbserver12
Attribution des privilèges, l’utilisateur dbserver11 aura tous les droits sur le serveur
MySQL.
Une fois que c’est fait, on “flusher” les privilèges. Cette commande fait en sorte que les
modifications soient immédiatement effectives, sans avoir à redémarrer le serveur
flush privileges;
La réplication d’une base de données permet de disposer du même jeu de données à tout
moment sur deux serveurs ou plus. MySQL permet d’automatiser la recopie des données entre
une machine principale et plusieurs secondaires de façon unidirectionnelle (réplication master-
slave) ou de façon bidirectionnelle entre 2 serveurs (réplication master-master).
71
Pour notre cas nous avons fait l’automatisation de deux serveur (réplication master-master),
pour une bonne gestion de nos données en cas de panne, les serveurs doivent prendre la relève
directement sans pouvoir fait appel à l’administrateur.
Premièrement on passe par le fichier mysqld.cnf pour la configuration de base, en passe par
le répertoire /etc/mysql/mysql.conf.d/mysqld.cnf
72
Attribution de la réplication à l’utilisateur master ‘dbserver11’.
On flush la réplication pour être sûr que la modification effectue sur le master soit applique
directement sur le serveur master 2.
FLUSH PRIVILEGES ;
On vérifier le statut du serveur maitre 150.1.200.2 pour avoir le nom du fichier binaire et la
position du fichier et on quitter le Shell.
EXIT ;
Premièrement on passe par le fichier mysqld.cnf pour la configuration de base, en passe par
le répertoire /etc/mysql/mysql.conf.d/mysqld.cnf
Redémarrage du serveur
73
Attribution de la réplication à l’utilisateur master ‘dbserver12’ en lui donnant l’adresse IP du
serveur maitre 1, le nom d’utilisateur, mot de passe, le nom du fichier binaire et la position du
fichier.
START SLAVE
On vérifier les statuts du serveur maitre 150.1.200.3 pour avoir le nom du fichier binaire et la
position du fichier.
EXIT ;
START SLAVE ;
On passe à la vérification de la réplication en créant une base des données sur le serveur
150.1.200.2.
74
Figure 42 : Création de la base de données ‘test_replication’ sur le maitre1
75
c. Mise en place d’un serveur de sauvegarde.
Pour mettre en place un serveur de sauvegarde tout en assurant sa sécurité et la disponibilité des
données nous avons pu installer une troisième machine virtuelle (Ubuntu Server), configurer son
serveur de données (MySQL) et configurer enfin la réplication sur le maitre2.
Ce qu’il faut c’est d’attribuer la réplication à l’utilisateur master ‘dbserver12’ en lui donnant
l’adresse IP du serveur maitre2, le nom d’utilisateur, mot de passe, le nom du fichier binaire et la
position du fichier.
START SLAVE ;
76
DEPLOIEMENT DE LA PLATEFORME PROPREMENT DITE
Notre plateforme est divisée en sous partie, une partie public et une partie privée mais les
tous interconnectée sur une sous partie de cette dernière.
1 2
Demande la Demande la
plateforme plateforme
SOUS PARTIE
COORDONNEES CLIENT (Achat) COORDONNEES
77
4.3.1. Déploiement et fonctionnement de la plateforme d’achat
Nous avons déployé cette plateforme d’achat dans un serveur webserver2 (150.1.200.4), avec
la configuration d’apache. Ce dernier est connecté sur la moitié de la plateforme, elle est le
début du commence pour notre projet.
Elle héberge une base de donnée propre à lui mais connecté et dépendant avec autre base de
donnée. Pour cas d’un service public elle génère une base des données bien sécurisé avec un
utilisateur propre à lui.
A chaque achat d’un nouveau service prive, BD client se charge de déployé une nouvelle base
de donnée, un utilisateur MySQL et un administrateur de ce service.
78
Pour le cas d’un nouveau service public, BD client génère une espace réservé au service créé
avec un administrateur de ce service.
b. Fonctionnement
Etape 1 : le client connecté sur la plateforme, c’est difficile de faire les achats s’il n’a pas encore
un utilisateur pour faire achat. L’application lui obligera de créer un compte pour faire ces achats.
Ou s’il a déjà un utilisateur, il sera oblige de se connecte sur la plateforme.
Etape 3 : Enfin on créer un compte pour ce service, enfin que ce service soit préparé pour lui
automatiquement dans le système.
79
Figure 49 : Adhésion au Cloud Prive
Etape 4 : le client doit effectuer le payement pour ce compte. Il a droit à faire un essai sur la
plateforme avant de passer au payement.
80
Figure 51 : Liste des comptes propre à un client
Etape 3 : création de l’administrateur pour un service. L’administrateur créé lui seul a le droit
d’accéder sur la plateforme de service payé.
81
4.3.2. Déploiement de la plateforme prive
Cette plateforme offre un service privé de gestion des écoles, le client fait l’achat sur la
plateforme de vente. Cette dernière lui retourne l’application exécutable et les données de
configuration.
82
Figure 54 : Accord de License
83
Etape 4 : Configuration de l’application
Les coordonnées à mettre pour pouvoir vous connecter sont celles qui ont été délivré lors de
l’activation du compte à la figure 93.
84
Etape 5 : Application prêt à être utiliser.
a. Déploiement de plateforme
Ce dernier étant placé dans le serveur webserver12 (150.1.200.5), avec la configuration d’apache
85
Pour la plateforme publique, l’achat du compte est la même démarche que celui du compte privé,
sauf qu’à la création de l’administrateur du compte, il nous renvoie le nom d’utilisateur et le mot
de passe seulement.
86
Etape 3 : Passe à l’utilisation et l’adaptation de l’application.
87
CONCLUSION GENERALE ET PERSPECTIVES
Durant ce projet de fin d’études nous avons tenté de mettre en place une plateforme de
virtualisation VMware et offrir des solutions SaaS (Software as a Service) publique et prive.
Nous avons effectué une étude théorique ciblée et concise pour comprendre les notions de la
virtualisation qui est de décentraliser les ressources matérielles et les données y afférent, le Cloud
Computing à son tour s'apparente davantage à une solution qui repose sur cette séparation, puis
nous avons procédé à une étude comparative de différentes solutions de virtualisation et des
solutions SaaS.
Nous avons par la suite déployé une plateforme de virtualisation qui est basée sur des produits
VMware ESXi. Le système assure une bonne élasticité car les augmentations de besoin en
ressource seront facilement satisfaites en ajoutant les matérielles nécessaires.
Enfin, nous avons développé une plateforme qui offre de service privé ou publique au société
(Société éducatives et étatique) qui ont besoin d’améliorer leurs systèmes d’information et leurs
rendements.
Ce projet de fin d’études nous a permis d’acquérir de précieuses connaissances techniques (La
virtualisation et le Cloud Computing) et de nous familiariser avec des environnements de travail
professionnels.
Limitations
Notre projet nécessite plus de ressources matérielles (CPU, RAM, Stockage,…) pour pouvoir
tourner les outils et service dont les clients ont besoin dans notre plateforme Cloud.
Perspectives
Ce projet est un environnement de test et démonstration qui sera par la suite redéployé à un
environnement de production suite à des investissements qui auront lieu dans un avenir proche.
88
BIBLIOGRAPHIE
Ouvrage :
Philippe RAYNAUD. Déploiement d’une solution de virtualisation au sein d’une multinationale.
Réseaux et télécommunications [cs.NI]. 2011. <dumas-00587661>
Sites Web des références:
[1] https://www.redhat.com/fr/topics/virtualization/what-is-virtualization#
[2] https://www.redhat.com/en/technologies/industries/telecommunications/nfv-platform
[3] https://fr.wikipedia.org/wiki/Virtualisation
[4]http://pagesperso.lina.univ-nantes.fr/~prie-y/archives/VEILLE-2009-
2012/2012/cloudsec/partie1/01.html
[5] https://fr.wikipedia.org/wiki/Centre_de_données
[6] www.histoire-cigref.org/blog/cloud-computing-histoire-de-linformatique-en-nuages/
[7]https://www.lemondeinformatique.fr/les-dossiers/sommaire-lire-les-10-tendances-
technologiques-2018-180.html
[8] https://www.lebigdata.fr/definition-big-data
[9] http://basics622.rssing.com/chan-13049214/all_p1.html
Installation d’Ubuntu server
https://www.zenzla.com/linux/70-un-serveur-parfait-avec-ubuntu-server.html
89