Chap 2 Virtualisation PDF
Chap 2 Virtualisation PDF
Chap 2 Virtualisation PDF
INTRODUCTION
Il est commun d’entendre deux termes très souvent utilisés de façon synonymique comme s’ils
signifiaient la même chose même si, en fait, il s’agit notions différentes. Il s’agit des termes
virtualisation d’une part et cloud computing d’autre part qui sont communément utilisés de façon
interchangeable comme s’il s’agissait du même terme. Cependant, il faut comprendre que la
virtualisation n’est qu’une composante du cloud computing. Le cloud computing est quelque chose de
plus large que la virtualisation. De façon simple ce que nous faisons dans la virtualisation est de séparer
le système d’exploitation du matériel sous-jacent tandis que dans le cloud computing on sépare
principalement les applications de la plateforme matérielle sous-jacente.
Par le passé, l’installation d’un système d’exploitation se faisait exclusivement sur une plateforme
matérielle (PC, serveurs, etc.) adaptée et l’on ne pouvait installer qu’un seul système d’exploitation par
ordinateur. Plus tard, avec l’évolution technologique, dans les années 2000, on a vu naître l’avènement
du « Dual boot » qui consistait à avoir deux (ou plus) systèmes d’exploitation installés sur le même
ordinateur mais avec la possibilité de n’exécuter qu’un seul à la fois. Plus tard, on a vu apparaitre le
concept de virtualisation qui quant à lui permet d’exécuter de façon indépendante plusieurs systèmes
d’exploitation simultanément sur la même plateforme matérielle. Dans ce chapitre, il sera question
d’aborder les principes clés que l’on doit connaître pour implémenter la virtualisation dans son
environnement. Les constructeurs proposent diverses solutions de virtualisation et ce cours vous donnera
une vue générale des concepts que vous devez connaître afin de décider de manière efficace quelle
solution vous allez adopter et comment l’implémenter ou la déployer dans votre environnement. La
virtualisation comporte des techniques spécifiques qu’il faut connaître de façon particulière si vous
devez déployer une solution de virtualisation en entreprise. Nous allons donc définir les termes de base
qu’il faut comprendre en s’engageant dans la virtualisation afin d’avoir une idée globale de la manière
dont elle est implémentée.
I. CONCEPT DE LA VIRTUALISATION
Avant d’entrer de fond en comble dans le concept de la virtualisation, il convient de définir
un ensemble de terme et expression que nous rencontrerons tout au long de ce cours.
1. Définitions
Virtualisation : consiste à faire fonctionner sur un seul ordinateur plusieurs systèmes d’exploitation
comme s’ils fonctionnaient sur des ordinateurs distincts.
Machine virtuelle : fichier informatique, généralement appelé image, qui se comporte comme un
ordinateur réel. En d’autres termes, il s’agit d’un ordinateur créé à l’intérieur d’un ordinateur
ou
ordinateur qui ne possède aucun matériel physique, parce qu'il est "émulé" sur un ordinateur physique
(normal) qu'on appelle l'hôte
2. Historique de la virtualisation
1
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
Au lieu de multiplier les machines physiques avec un seul système d’exploitation installé, on utilise une
machine physique pour virtualiser plusieurs systèmes d’exploitation. La virtualisation a notamment été
créée pour répondre à la problématique de la sous-utilisation des ressources matérielles.
Historique de la virtualisation
Les années 70 : Une bonne part des travaux sur la virtualisation fut développée au centre scientifique
de Cambridge d’IBM en collaboration avec le MIT, où fut mis au point le système expérimental
CP/CMS, devenant ensuite le produit (alors nommé Hyperviseur) VM/CMS. Par la suite, les mainframes
(serveurs IBM) ont été capables de virtualiser leurs systèmes d’exploitation avec des technologies
spécifiques et propriétaires, à la fois logicielles et matérielles. En 1979 fut annoncé par exemple sur les
IBM 4331 et 4341 un accélérateur VM optionnel et microcodé.
Les années 80-90 : Dans la deuxième moitié des années 1980 et au début des années 1990, on a créé
des embryons de virtualisation sur des ordinateurs personnels. Ces solutions pouvaient être soit
purement logicielles, soit couplées à du matériel additionnel (ajout de processeur, carte réseau, etc.). Et
c’est sur des ordinateurs Amiga équipé de processeur hétérogène comme le 80386 et 80486, 68xxx, et
PPC qu’il était possible de lancer d’autres OS comme un Windows, Mac OS, voire des solutions Linux.
Le tout en multitâche sous AmigaOS. Pour les PC, il y avait des émulateurs comme le SideCar et PC
Task. Sur Macintosh, Emplant et ShapeShifter.
Fin des années 90, début 2000 : Dans la seconde moitié des années 1990, les émulateurs sur x86 des
vieilles machines des années 1980 ont connu un énorme succès, notamment les ordinateurs Atari,
Amiga, Amstrad et les consoles NES, SNES, Neo-Geo AES. La société VMware développa et
popularisa à la fin des années 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 libres Xen,
KVM, QEMU, Bochs, Linux-VServer, Virtual Box et les logiciels propriétaires mais gratuits VirtualPC,
Virtual Server et VMware Server ont achevé la popularisation de la virtualisation dans le monde x86.
3. Architecture de la virtualisation
Cette solution permettait d’avoir une isolation effective des services mais posait naturellement un
problème de coûts car le déploiement de nouveaux services impliquait presqu’inéluctablement
l’acquisition de nouveau serveurs. L’acquisition de nouveaux serveurs en elle-même entrainait aussi
d’autres inconvénients tels que des problèmes d’espace (pour le stockage des serveurs physiques), une
augmentation de la consommation en énergie électrique, une augmentation des coûts de maintenance,
pour ce citer que ceux-là.
2
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
La virtualisation quant à elle prend en compte l’infrastructure physique sous-jacente, sur laquelle est
déployé un logiciel ou un système d’exploitation permettant d’avoir sur cette même infrastructure,
plusieurs entités logiques exploitant les propriétés physiques de ladite infrastructure et sur lesquels
peuvent être installé divers systèmes d’exploitation pouvant fonctionner simultanément et de façon
indépendante. Ces entités sont connues sous le vocable de machines virtuelles défini précédemment. Sur
un même hôte, les machines virtuelles partagent l’infrastructure physique sous-jacente (les ressources
physiques de cet hôte).
3
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
Il existe à ce jour deux principaux types d’hyperviseurs à savoir les hyperviseurs natifs d’une part et les
hyperviseurs hébergés d’autre part.
Encore appelé hyperviseur de type 1 ou hyperviseur bare metal, un hyperviseur natif est un système
qui s’installe directement sur la couche matérielle du serveur (ordinateur). Ces systèmes sont allégés de
manière à permettre principalement la gestion des systèmes d’exploitation invités, c’est-à-dire ceux
utilisés par les machines virtuelles qu’ils hébergent. Ceci permet de dédier la quasi-totalité (relative) des
ressources aux machines virtuelles. L’hyperviseur étant lié à la couche matérielle, il n’est possible
d’exécuter qu’un seul hyperviseur à la fois sur une plateforme matérielle (ordinateur/serveur).
4
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
Les hyperviseurs de type 1 peuvent être utilisés pour virtualiser des serveurs de fichiers, de bases de
données, de messageries, etc... Ce type d'hyperviseur est à privilégier lorsque l'on souhaite exécuter des
applicatifs en continu. La quasi-totalité des serveurs peut être virtualisée via un hyperviseur de type 1.
Un hyperviseur de type 2 ou hyperviseur hébergé est un logiciel qui s’installe et s’exécute sur système
d’exploitation déjà en place. De ce fait, plus de ressources sont utilisées étant donné que l’on fait
fonctionner non seulement l’hyperviseur, mais aussi le système d’exploitation qui le supporte ; il y a
donc moins de ressources disponibles pour les machines virtuelles. Compte tenu du fait de l’hyperviseur
n’est pas directement lié à la couche matérielle ici, il est possible d’exécuter plusieurs hyperviseurs
simultanément.
5
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
Avantages : Il est possible d'exécuter plusieurs hyperviseurs en même temps car ceux-ci ne s'installent
pas directement sur la couche matérielle.
Inconvénients : Ce type d'hyperviseur ne peut pas fournir autant de ressources matérielles que les
hyperviseurs de type 1 puisqu'ils sont installés sur un système d'exploitation, lui-même consommateur
de ressources.
L’hyperviseur est un logiciel qui permet et gère la virtualisation. Les hyperviseurs sont de plus en plus
présents dans les architectures des entreprises étant donné que la virtualisation se développe et se répand
rapidement. Les solutions sont multiples et plus ou moins coûteuses. Quoi qu'il en soit, votre serveur
doit disposer d'une configuration matérielle supportant la technologie Intel-VT ou AMD-V pour
pouvoir virtualiser.
- Permettre ces mécanismes pour chaque OS invité, lui permettant de croire qu'il est le seul sur la
machine.
- Intercepter les communications avec les interruptions, la MMU (Memory Management Unit =
Unité de Gestion/virtualisation de la Mémoire)... et simuler de façon logicielle ces interfaces.
- Virtualisation de Serveur : en effet, investir dans des serveurs physiques qui ne sont pas pleinement
exploités, chacun étant réservé à une utilisation spécifique, la virtualisation des serveurs permet de
regrouper ces systèmes sur un plus petit nombre de serveurs physiques, mais mieux utilisés.
Elle permet de :
• Regrouper plusieurs serveurs physiques sous-employés sur un seul hôte qui exécute des systèmes
virtuels.
6
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
- Virtualisation de poste de travail : cette solution donne aux administrateurs systèmes et réseaux la
possibilité de gérer beaucoup plus facilement les postes de travail des entreprises et de répondre plus
simplement aux demandes des utilisateurs. Un poste de travail virtualisé (ou bureau virtuel) peut être
hébergé soit directement sur le PC client soit sur un serveur qui porte le nom de VDI (Virtual Desktop
Infrastructure).
Le bureau virtuel sur les postes client va créer un second environnement d'exploitation, isolé, pour
permettre de faire fonctionner des applications anciennes ou incompatibles avec un système
d'exploitation moderne, ou des applications métier dans leur environnement natif. Cette technique 
sert aussi à faire fonctionner plusieurs systèmes d'exploitation sur le même matériel (par exemple un
pour l'entreprise et l'autre pour des besoins personnels.
6. Avantages de la virtualisation
Rentabiliser son infrastructure et ses ressources du fait d’une utilisation plus intelligente
Exécuter plusieurs types de systèmes d’exploitation (Linux, Mac OS, Windows)
Réduire son coût de possession du matériel (électricité, leasing serveur, climatisation)
Administration logique/physique centralisée
Rapidité de déploiement.
Souplesse d’évolution du matériel.
Allocation des ressources et load-balancing.
Cloisonnement, sécurité.
Evidemment, le premier avantage reste la possibilité d’émuler d’autres systèmes d’exploitation autre
que ceux dont on dispose déjà.
Mais heureusement ce n’est pas le seul, les autres sont principalement liés à l’aspect financier:
- Portabilité, Migration,
7
Enseignant : Emile Jonathan ELOUGA NKE
Virtualisation
8
Enseignant : Emile Jonathan ELOUGA NKE