0% ont trouvé ce document utile (0 vote)
13 vues71 pages

Virtualisation

Le chapitre traite des principes de la virtualisation, définissant son rôle dans l'informatique en permettant l'exécution de plusieurs systèmes d'exploitation sur une seule machine physique. Il aborde les différents types de virtualisation, notamment des applications, des réseaux, de stockage et de serveurs, ainsi que leurs avantages et inconvénients. Enfin, il présente les hyperviseurs, essentiels pour la gestion des environnements virtuels.

Transféré par

Wilfried Dabiré
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
13 vues71 pages

Virtualisation

Le chapitre traite des principes de la virtualisation, définissant son rôle dans l'informatique en permettant l'exécution de plusieurs systèmes d'exploitation sur une seule machine physique. Il aborde les différents types de virtualisation, notamment des applications, des réseaux, de stockage et de serveurs, ainsi que leurs avantages et inconvénients. Enfin, il présente les hyperviseurs, essentiels pour la gestion des environnements virtuels.

Transféré par

Wilfried Dabiré
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 3:

Virtualisation
Module:
Cloud et Virtualisation
Auteur: Doudou FAYE
PRINCIPES DE LA VIRTUALISATION

Objectif général Comprendre les principes de la virtualisation.

Savoir définir le concept de la virtualisation.


Prendre connaissance des domaines de la virtualisation.
Objectifs spécifiques
Déterminer les avantages et les inconvénients de la virtualisation.
Comprendre les différents types de virtualisation.

virtualisation, domaines, application, stockage, serveur, réseaux,


Mots clés
types,…

2
PRINCIPES DE LA VIRTUALISATION

3
PRINCIPES DE LA VIRTUALISATION
Introduction
• Lorsqu’on parle d’informatique, on cite généralement deux
concepts : Le concept du matériel et le concept du logiciel.
• Le premier fournit les équipements physiques, le second fournit
les données et les applications.
• L’objectif de la virtualisation est de se libérer au maximum de la
couche matérielle de l'informatique, le matériel étant
cycliquement obsolète et tombant régulièrement en panne.

4
PRINCIPES DE LA VIRTUALISATION
• La virtualisation permet de changer exactement l’approche de
l’informatique en repoussant les limites du matériel.
• Il s’agit d’une technologie à la portée de tous, du particulier qui
souhaite exécuter en toute sécurité une distribution Linux sur sa
plateforme Windows, aux grandes entreprises qui souhaitent
restreindre leur infrastructure informatique.

5
PRINCIPES DE LA VIRTUALISATION
Définition
• Selon le site Wikipédia, La virtualisation consiste à faire
fonctionner un ou plusieurs systèmes d'exploitation ou
applications comme un simple logiciel, sur un ou plusieurs
ordinateurs ou serveurs et système d'exploitation, au lieu de ne
pouvoir en installer qu'un seul par machine.
• Ces ordinateurs virtuels sont appelés serveur privé virtuel
(Virtual Private Server ou VPS) ou encore environnement virtuel
(Virtual Environment ou VE).
• Source : [Link]
6
PRINCIPES DE LA VIRTUALISATION
• La virtualisation permet d’ajouter une couche d'abstraction qui
sépare le système d'exploitation du matériel afin de délivrer une
meilleure utilisation et flexibilité des ressources de traitement.
• La virtualisation repose sur trois éléments importants :

7
PRINCIPES DE LA VIRTUALISATION
• L’abstraction des ressources informatiques ;
• La répartition des ressources par l’intermédiaire de différents
outils, de manière à ce que celles-ci puissent être utilisées par
plusieurs environnements virtuels ;
• La création d’environnements virtuels.

8
PRINCIPES DE LA VIRTUALISATION
Historique de la virtualisation :
• Apparaît dans les 1960's avec VM/CMS ;
• Répandu sur les mainframes avec des technologies
propriétaires ;
• 1990's explosion de l'émulation sur x86 - VMWare popularise
la machine virtuelle ;
• 2000's développement des solutions logicielles de
virtualisation, aidées par les évolutions matérielles
(Intel/AMD).

9
Les domaines de la virtualisation

La virtualisation d’applications
• La virtualisation d’application est une technologie logicielle qui
va permettre d’améliorer la portabilité et la compatibilité des
applications en les isolant du système d’exploitation sur lequel
elles sont exécutées.
• Elle consiste à encapsuler l’application et son contexte
d’exécution système dans un environnement cloisonné.

10
Les domaines de la virtualisation

• La virtualisation d’application va nécessiter


l’ajout d’une couche logicielle supplémentaire
entre un programme donné et le système
d’exploitation ;
• son but est d’intercepter toutes les opérations
d’accès ou de modification de fichiers ou de la
base de registre afin de les rediriger de
manière totalement transparente vers une
localisation virtuelle.
11
Les domaines de la virtualisation

Application Application Application Application

Couche virtuelle

Système d’exploitation

Matériel

12
Les domaines de la virtualisation
• En analysant la figure ci-avant, on peut dire que la couche
virtuelle va ajouter des avantages au système virtualisé en
permettant d’exécuter des applications conçues pour d’autres
systèmes.
• Exemple :
• Wine est un logiciel qui permet d’éxécuter certains
programmes Windows sous Ubuntu. [Link]
• On peut aussi citer l’avantage gagné au niveau de la
protection du système d’exploitation hôte en s’assurant que
l’application virtualisée ne viendra pas interagir avec les
fichiers de configuration du système.

13
Les domaines de la virtualisation
La virtualisation de réseaux
• De manière générale, la virtualisation des réseaux consiste à
partager une même infrastructure physique (débit des liens,
ressources CPU des routeurs,...) au profit de plusieurs
réseaux virtuels isolés.
• Un VLAN (Virtual Local Area Network) est un réseau local
regroupant un ensemble de machines de façon logique et
non physique.
• Puisqu’un VLAN est une entité logique, sa création et sa
configuration sont réalisées de manière logicielle et non
matérielle.

14
Les domaines de la virtualisation

On distingue plusieurs types de réseaux virtuels :


• Les réseaux virtuels de niveau 1, appelés réseaux virtuels
par port (port-based VLAN): ils définissent un réseau virtuel
en fonction des ports de raccordement sur le commutateur
(switch).
• Ainsi, chaque port du commutateur est associé à un réseau
virtuel, indépendamment de la machine qui y est
physiquement raccordée.
• Le principal inconvénient d’un VLAN de niveau 1 est sa
rigidité : si une station se raccorde physiquement au réseau
par l’intermédiaire d’un autre port du commutateur, alors il est
nécessaire de reconfigurer ce commutateur afin de réintégrer
la station dans le bon réseau virtuel.

15
Les domaines de la virtualisation
• Les réseaux virtuels de niveau 2, appelés réseaux virtuels
par adresse MAC (MAC address-based VLAN) : ils
consistent à définir un réseau virtuel sur la base des
adresses MAC des stations.
• Une adresse MAC est un identifiant unique implémenté dans
chaque adaptateur réseau.
• Ce type de VLAN est beaucoup plus souple que le
précédent car il est indépendant de la localisation de la
machine.

16
Les domaines de la virtualisation

• Les réseaux virtuels de niveau 3. On distingue


principalement deux types de VLAN de niveau 3 :
• Les réseaux virtuels par adresse de sous-réseau (Network
address-based VLAN) : ils déterminent les réseaux virtuels sur
base de l’adresse IP source des segments.
• Ce type de réseau virtuel est très flexible puisque les
commutateurs adaptent automatiquement leur configuration
lorsqu’une station est déplacée.
• Les réseaux virtuels par protocole (Protocol-based VLAN).
Dans ce cas, les réseaux virtuels sont créés sur base des
protocoles utilisés (TCP/IP, IPX,...) et les stations sont
regroupées en réseaux virtuels suivant le protocole qu’elles
utilisent.
17
Les domaines de la virtualisation
Les avantages qu’offrent les réseaux virtuels sont les suivants :
• Une réduction du trafic de diffusion, puisque celui-ci est à
présent contenu au sein de chaque réseau virtuel ;
• Une sécurité accrue puisque l’information est encapsulée
dans une couche supplémentaire ;
• Une meilleure flexibilité puisqu’une modification de la
structure des réseaux peut être réalisée en modifiant la
configuration du commutateur.

18
Les domaines de la virtualisation

La virtualisation de stockage
• La virtualisation du stockage est un concept informatique et un
ensemble de techniques qui utilisent les notions de virtualisation
pour fournir des fonctionnalités avancées dans le domaine du
stockage informatique.
• La virtualisation du stockage permet en particulier de fédérer les
volumes en une ressource unique
• Le principe de base de la virtualisation du stockage est
de gérer une interface qui permet de dissocier la gestion
physique des disques (et des baies de stockage) vis-à-
vis des serveurs qui l'utilisent.
19
Les domaines de la virtualisation

La virtualisation de stockage
• L'implémentation de la couche de virtualisation peut se faire au
niveau du serveur hôte, du réseau de stockage, ou encore au
niveau du système de stockage lui-même.
• L'implémentation "in-band" consiste à intercaler un composant
entre les serveurs et le système de stockage: toutes les
données passent par cet élément qui peut devenir un goulot
d'étranglement ou présenter un risque de SPOF s'il n'est pas
redondant.
• L'implémentation "out-band" se fait au niveau d'un agent
installé directement sur les serveurs, ce qui est plus évolutif,
mais plus difficile à maintenir
20
Les domaines de la virtualisation
• Les disques virtuels peuvent être statiques ou dynamiques.
• Dans le cas où le disque est statique, si on crée un disque de 50
Go, le fichier de disque virtuel fera 50 Go sur le système hôte.
• Avec un disque dynamique, le fichier de disque virtuel se remplit
au fur et à mesure qu'il est utilisé.
• Un disque de 50 Go dans lequel il n'y a pas de données
n’occupera pas beaucoup d’espace dans le système de fichiers
hôte.

21
Les domaines de la virtualisation
• La virtualisation de stockage permet :
o d’adjoindre un périphérique de stockage supplémentaire sans interruption
des services;
o de regrouper des unités de disques durs de différentes vitesses, de
différentes tailles et de différents constructeurs ;
o de réallouer dynamiquement de l’espace de stockage.
• Ainsi, un serveur nécessitant un espace de stockage
supplémentaire pourra rechercher des ressources non allouées
sur le disque logique.
• Inversement, un serveur nécessitant moins d’espace de
stockage pourra libérer cet espace et le rendre disponible pour
d’autres serveurs.
22
Les domaines de la virtualisation
La virtualisation de serveurs
• D’une manière générale, la virtualisation de
serveur est un principe permettant de faire fonctionner
simultanément, sur un seul serveur physique,
plusieurs serveurs virtuels.
• Cette technique permet aux entreprises d’utiliser des
serveurs virtuels en lieu et place de serveurs
physiques.
• Si cette virtualisation est faite au sein de la même
entreprise, le but est de mieux utiliser la capacité de
chaque serveur par une mise en commun de leur
capacité.
23
Les domaines de la virtualisation

• La virtualisation de serveur permet de :


o Regrouper plusieurs serveurs physiques sous-
employés sur un seul hôte qui exécute des
systèmes virtuels ;
o Réduire la surface au sol, la consommation
électrique, le besoin de climatisation et le nombre
d'administrateurs ;
o Réaliser des économies (locaux, consommation
électrique, personnel).

24
Les domaines de la virtualisation

Virtualisation de serveurs

25
Les domaines de la virtualisation

La virtualisation de bureau
• La virtualisation de bureau consiste à afficher sur un
ou plusieurs postes physiques, une image virtuelle
du poste utilisateur qui est en fait exécutée sur un
serveur distant.
• Nous pouvons prendre l’exemple des bureaux créés
sur un environnement Citrix où l’accès se fait via le
navigateur ou l’application lourde.

26
Avantages et inconvénients de la virtualisation
• Comme toute technologie, la virtualisation offre aux particuliers et
aux entreprises des gains sur tous les plans.
• Cependant, des inconvénients et mêmes des risques sont
soulevés suite à l’utilisation de cette technologie.
• Quels sont les intérêts de la virtualisation ?

27
Avantages et inconvénients de la virtualisation
• Optimisation des ressources (répartition des machines virtuelles
sur les machines physiques en fonction des charges
respectives) ;
• Installation, sauvegarde, déploiement et migration faciles des
machines virtuelles ;
• Economie sur le matériel par mutualisation (consommation
électrique, entretien physique, etc.) ;
• Sécurisation et/ou isolation d’un réseau ;
• Diminution des risques liés au dimensionnement des serveurs
lors de la définition de l’architecture d’une application, l’ajout de
ressources étant alors transparent ;
28
Avantages et inconvénients de la virtualisation
• Une reprise automatique lors des incidents.
• La virtualisation permet d’améliorer la prévention et la gestion
des pannes ainsi que le plan de reprise de l’activité du
système.
• En effet, les équipements virtuels étant constitués d’un
ensemble de fichiers, il est très simple de les sauvegarder.

29
Avantages & inconvénients de la virtualisation
Quels sont les inconvénients de la virtualisation ?
• Plusieurs environnements virtuels s’exécutent sur une unique
machine physique, si cette machine tombe en panne, alors les
services fournis par les environnements virtuels sont interrompus.
• La virtualisation permet de réaliser des économies puisque moins
de machines physiques sont nécessaires. Néanmoins, les outils
de virtualisations sont des applications très gourmandes en
ressources et nécessitent des machines puissantes.
• Il est évidemment possible d’utiliser la virtualisation sur des
machines plus modestes, mais un manque de mémoire ou de
capacité CPU peut faire chuter les performances de manière
drastique.
30
Avantages & inconvénients de la virtualisation
• Une dégradation des performances. Bien qu’elle soit
implémentée sur des machines puissantes, la virtualisation peut
réduire les performances des applications.
• Suivant le type de virtualisation envisagé, cette perte de
performances peut ou non être significative.

31
LES HYPERVISEURS
• En informatique, un hyperviseur est une plate-forme de
virtualisation qui permet à plusieurs systèmes d'exploitation de
travailler sur une même machine physique en même temps.
• On distingue principalement deux types d’hyperviseurs:

32
LES HYPERVISEURS
Hyperviseur de type 1
• Par abus de langage, lorsque l'on parle
d'hyperviseur on parle généralement de ce
type d'hyperviseur.
• La principale caractéristique d'un
hyperviseur de type 1 c'est qu'il s'installe
directement sur la couche matérielle du
serveur.
• Au démarrage d'une machine physique, ces
hyperviseurs prennent directement le
contrôle du matériel.
33
LES HYPERVISEURS
Hyperviseur de type 1
• Avantages : Un maximum de ressources peut être alloué aux
machines virtuelles car ce type d'hyperviseur est directement lié
à la couche matérielle.
• Inconvénients : Il n'est possible d'exécuter qu'un seul
hyperviseur à la fois. Cette problématique n'est toutefois pas
vraiment impactante puisque dans la grande majorité des cas,
un seul et même hyperviseur est capable de gérer tous les
applicatifs d'une entreprise.

34
LES HYPERVISEURS
Hyperviseur de type 1
 Usage de ce type d'hyperviseur
• 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.
 Compatibilité avec les serveurs
• Un hyperviseur devra être compatible à deux niveaux :
• Compatibilité avec le matériel sur lequel il s'exécute (constructeurs et
composants) ;
• Compatibilité avec les OS qui sont supportés dans les VM.
• Afin d'assurer la stabilité du système, il est indispensable de valider
cette double compatibilité.
35
LES HYPERVISEURS
Hyperviseur de type 2
• Un hyperviseur de type 2 est assez comparable à un émulateur
car celui-ci s'installe sur un système d'exploitation déjà en place.
• Il se démarre la plupart du temps comme une simple
application.

36
LES HYPERVISEURS
Hyperviseur de type 2
• 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.

37
LES HYPERVISEURS
Hyperviseur de type 2
Usage de ce type d'hyperviseur
• Les hyperviseurs de type 2 sont utilisés pour virtualiser des OS
sur des PC, la plupart du temps 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 OS X ayant besoin d'utiliser Windows (en raison
d'applicatifs non compatibles).

38
Les différents types de virtualisation
• il existe plusieurs catégories de virtualisation,
utilisant chacune des technologies différentes.
• Les technologies les plus répandues sont :
 la virtualisation complète ;
 la paravirtualisation ;
 la virtualisation assistée par le matériel ;
 le cloisonnement ou isolation.

39
Les différents types de virtualisation
Virtualisation complète
• La virtualisation complète (full virtualization), dénommée ainsi
par opposition à la para-virtualisation, consiste à émuler
l’intégralité d’une machine physique pour le système invité.
• Le système invité « croit » s’exécuter sur une véritable machine
physique.
• Le logiciel chargé d’émuler cette machine s’appelle une
machine virtuelle, son rôle est de transformer les instructions
du système invité en instructions pour le système hôte.

40
Les différents types de virtualisation
Virtualisation complète
Applications Machine virtuelle

Système invité

Système hôte

Matériel

41
Les différents types de virtualisation

Virtualisation complète
• Le système s’exécutant dans la machine virtuelle est un
système d’exploitation à part entière, tel qu’on pourrait
en installer sur une machine physique : Microsoft
Windows, GNU/Linux, Mac OS X, etc.
• Cette particularité est la caractéristique principale de la
virtualisation complète : les systèmes invités n’ont pas à
être modifiés pour être utilisés dans une machine
virtuelle utilisant une technologie de virtualisation.
• Dans la pratique, c’est le cas pour les systèmes
d’exploitation et les machines virtuelles les plus
répandus.
42
Les différents types de virtualisation

Virtualisation complète
• Exemples :
• Microsoft Hyper-V : propriétaire, émulateur de plateforme x86
• Parallels : propriétaire, hyperviseur x86 pour MAC OSX(Intel)
• VirtualBox : gratuit, émulateur de plateforme x86
• Vmware Workstation et Fusion : propriétaire, émulateur de
plateforme x86

43
Les différents types de virtualisation

La Para-virtualisation ;
• La para-virtualisation est très proche du concept de la
virtualisation complète, dans le sens où c’est toujours un
système d’exploitation complet qui s’exécute sur le matériel
émulé par une machine virtuelle, cette dernière s’exécutant
au dessus d’un système hôte.
• Toutefois, dans une solution de para-virtualisation, le
système invité est modifié pour être exécuté par la machine
virtuelle.

44
Les différents types de virtualisation

La Para-virtualisation ;
• La para-virtualisation évite d'utiliser un système hôte
complet pour faire la virtualisation.
• A la place, un noyau très léger de système d'exploitation
hôte est utilisé.
• Les performances sont bien meilleures en para-virtualisation
qu'en virtualisation complète.

45
Les différents types de virtualisation

La Para-virtualisation ;

Apps Apps Apps

S.E. privilégié Système invité Système invité

Drivers drivers drivers

Hyperviseur

Matériel

46
Les différents types de virtualisation

La Para-virtualisation ;
Exemples :
• Xen Server : projet Opensource précurseur dans le monde
du libre, version commercialisée par Citrix
• KVM : projet hyperviseur intégré dans le noyau linux
(Développé par Qumranet, racheté par RedHat)
• ESXi : hyperviseur leader de VMWare
• Hyper-V Server : hyperviseur de Microsoft

47
Les différents types de virtualisation

Le Cloisonnement;
• Dans le domaine de la virtualisation, le cloisonnement vise à
séparer fortement les processus s’exécutant sur un même
système d’exploitation et ce en isolant chaque processus
dans un conteneur dont il est théoriquement impossible de
sortir.
• Un processus isolé de la sorte ne saura pas quels autres
processus s’exécutent sur le même système, et n’aura
qu’une vision limitée de son environnement.
• Le but principal de cette technologie est d’améliorer la
sécurité du système d’exploitation et des applications.

48
Les différents types de virtualisation

Le Cloisonnement;
• Le cloisonnement, ou aussi appelé la virtualisation
d'environnement, concerne uniquement la partie applicative.
• Il n'y a qu'un système d'exploitation utilisé mais l'application
ou l'environnement utilisateur ou logiciel est cloisonné de
sorte que les processus soient indépendants.

49
Les différents types de virtualisation

Le Cloisonnement;
Environnement Environnement Environnement

Ou Conteneur Ou Conteneur Ou Conteneur

Application Application Application

Système hôte

Matériel

50
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
• Transformation du DataCenter

51
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
Data Center 1.0
• Centralisation à l’extrême autour de Mainframes
accessibles par les utilisateurs au travers de différents
terminaux.
Data Center 2.0
• L’arrivée des technologies clients / serveurs nous a amené
à l’étape Data center 2.0 évoluant ainsi d’une «
Architecture » hautement centralisée à une autre
hautement distribuée.

52
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
Data Center 3.0
• Le Data Center 3.0 va combiner le meilleur de ces
deux mondes en permettant de « re-centraliser » les
serveurs et le stockage autour d’une plateforme
réseau(x) hautement disponible et évolutive en temps réel,
tout en préservant les avantages et la souplesse d’une
architecture distribuée.
• Les acteurs concernés sont les Acteurs majeurs dans
le stockage, les serveurs et les systèmes d’exploitation.

53
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
Data Center 3.0
• La réalisation du Data Center 3.0 va reposer sur 3 piliers :
 La consolidation,
 La virtualisation,
 L’automatisation.

54
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
La Consolidation
• La consolidation de serveurs permet de réduire le TCO («
Total Cost of Ownership » ou coût total de possession),
le temps de maintenance, simplifier l'administration de
l'infrastructure, sécuriser l'architecture systèmes et réseaux
et mettre en œuvre des PRA.

55
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
Démarche Consolidation / Virtualisation du DataCenter

• La virtualisation est une technologie clé pour les projets de


consolidation.
56
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
La Virtualisation
Une nécessitée : Optimiser les ressources IT / investissements.

57
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
L’Automatisation
• L'efficacité de l'automatisation IT améliorera l'utilisation des
ressources tout en libérant les administrateurs IT pour qu'ils
puissent innover sur l’aspect des métiers de leur organisation.
Infrastructure informatique virtualisée – même principe

58
3. Nouvelle génération des centres informatiques
(DataCenter 3.0)
L'infrastructure virtualisée apporte :
• plus de flexibilité
• une meilleure utilisation des ressources
• une meilleure disponibilité à coût réduit
• des coûts d'administration réduits
• une meilleure interopérabilité
• la protection de vos investissements.
• … et offre des coûts réduits et une meilleure agilité.

59
Le Green IT / Les Datacenters éco-énergétiques

Consolidation des serveurs et du stockage vers une meilleure


gestion de l’énergie

60
La virtualisation des serveurs
Concepts
Les différents types de virtualisation (Serveurs)
• La virtualisation matérielle
• Avantages : certains processeurs permettent un accès direct à la mémoire
des invités. Les performances sont optimales. Les processeurs ne
sont pas émulés et les systèmes d’exploitation inchangés.
• Inconvénient : il faut un processeur spécifique qui supporte les nouvelles
instructions (HAL).
• Ainsi, si une machine ne comporte pas ce type de processeur, alors
il est nécessaire de s’équiper d’une machine récente qui comportera un
processeur compatible.
• Ce type de virtualisation, est la plus sure et la plus performante (Voir
Chapitre suivant). 61
Virtualisation matérielle
Virtualisation matérielle type x86
• Ces technologies peuvent être aussi bien utilisées par Xen, VMWare ou
encore User-mode Linux.
Cas d’INTEL
• La technologie de virtualisation développée par Intel (Intel-VT -
anciennement Vanderpool) supporte aussi bien l’architecture x86 (VT-x)
que celle ItaniumR (VT-i). Un nouveau mode d’exécution apparait alors :
VMX.
• Ce mode comporte un niveau racine (root) pour l’hyperviseur,
correspondant à des rings inférieurs à 0, et un niveau normal pour les
systèmes d’exploitation invités (machine virtuelle) (non-root), correspondant
aux anciens rings de 0 à 3.
• Le niveau root est entièrement privilégié, alors que l’autre ne possède aucun
privilège, même au « ring 0 ».
62
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’INTEL
• L’instruction VMX entry permet de passer de VMX root à VMX non-root,
tandis que l’instruction VMX exit permet l’inverse.
• Cette technologie permet une certaine flexibilité dans la définition des
instructions permettant à la machine virtuelle (système d’exploitation invité)
de sortir de l’emprise de la VMM (VM exit).
• La figure ci-dessous montre le passage d’un niveau à l’autre via les deux
instructions expliquées précédemment.

63
Virtualisation matérielle
Virtualisation matérielle type x86
• Ces technologies peuvent être aussi bien utilisées par Xen, VMWare ou
encore User-mode Linux.
Cas d’INTEL

64
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’INTEL
• En mode root l’hyperviseur stocke dans une structure de données les
informations relatives au matériel associé à un système invité processeur(s),
blocks mémoire(s), entrées/sorties).
• Sous la technologie VT-x, celle-ci se nomme Virtual Machine Control
Structure (VMCS).
• Depuis 2007, une 2ème génération de cette technologie est apparue. Elle
inclut en plus un support matériel pour la gestion de la mémoire virtuelle :
Nested Page Tables (NPT).

65
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’INTEL
• Deux sortes de table de page existent : Virtual Memory -> Physical
Memory et Physical Memory -> Virtual Memory.
• Cette nouveauté permet des gains significatifs de performance pour
les applications faisant un usage intensif de la mémoire ou générant
un grand nombre de processus système.

66
Virtualisation matérielle

67
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’AMD
• La technologie de virtualisation développée par AMD se nomme
AMD- V (anciennement Pacifica).
• Il faut savoir que lors du boot un processeur AMD 64 démarre en mode x86
32 afin de maintenir la compatibilité avec les systèmes d’exploitation 32
bits.
• Le boot-loader d’un système d’exploitation 64 bits exécute une instruction
qui bascule le processeur en mode x86 64.
• De manière similaire, un processeur fonctionnant avec la nouvelle
technologie démarre en mode invité (toutes les fonctions de virtualisation
sont alors inactives) jusqu’à ce qu’un hyperviseur compatible ne soit
démarré.
68
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’AMD
• La structure Virtual Machine Control Block (VMCB) a la même fonction que
celle de VT-x.
• Une fois la structure VMCB définie, l’hyperviseur bascule le processeur en
mode invité, puis passe la main à l’OS invité associé qui démarre (se
considérant seul au monde sur le matériel) exécutant son code privilégié en
ring 0 et son code applicatif en ring 3.
• L’hyperviseur s’occupe alors de l’exécution et intercepte les instructions
privilégiées.
• Quand une instruction demande un accès à une ressource définie dans
la VMCB le processeur bascule en mode root. L’hyperviseur gère alors
la requête.
69
Virtualisation matérielle
Virtualisation matérielle type x86
Cas d’AMD
• L’instruction VMMCALL est une instruction qui permet aux systèmes
d’exploitation invités de négocier des ressources avec l’hyperviseur.
• La Translation Look-aside Buffer (TLB) est une table qui contient les
références entre adresses réelles et virtuelles des pages mémoire
récemment accédées.
• Le Device Exclusion Vector (DEV), quant à lui, permet à l’hyperviseur de
savoir immédiatement si un accès à une page mémoire est légitime ou non.
• Sous AMD-V, le support matériel pour la gestion de la mémoire se nomme :
Nested Pages ou Nested Page Tables (NPT).

70
FIN

71

Vous aimerez peut-être aussi