Académique Documents
Professionnel Documents
Culture Documents
ET CONTENEUR
CHAPITRE 2 : VIRTUALISATION
Enseignante:
A.U. 2023/2024
Safa REJICHI
PLAN
1. Principaux acteurs de la virtualisation 4. Les domaines de virtualisation
4.1 Virtualisations des Postes de travail
2. Principe de la virtualisation
4.2. Virtualisations des applications
2.1. Architecture classique d’un ordinateur
4.3. Virtualisations des réseaux
2.2. Nouvelle architecture d’un ordinateur
4.4. Virtualisations du stockage
2.3. Notion d’hyperviseur
5. Les principales solutions de virtualisation
3. Les types de virtualisation
3.1. Architectures des processeurs x86
3.2. la virtualisation complète
3.3. la paravirtualisation
3.4. la virtualisation assistée par le matériel
3.5. le cloisonnement
2
1. Principaux acteurs de la virtualisation :
3
1. Principaux acteurs de la virtualisation :
https://www.mordorintelligence.com/fr/industry-reports/virtualization-software-market 4
2. Principe de la virtualisation :
Langage machine
MATERIEL
Dispositifs physiques
5
2.1. Architecture classique d’un ordinateur :
LE MATÉRIEL (HARDWARE)
6
2.1. Architecture classique d’un ordinateur :
• Exemples de systèmes d’exploitation: Unix, DOS, Windows, Mac OS, Linux, BSD, ...
7
2.1. Architecture classique d’un ordinateur :
INCONVÉNIENT DE L’ARCHITECTURE
CLASSIQUE
• Coût
• L’application dépend du matériel
• Un seul OS par serveur
• Une application par OS
• Matériel pas homogène: automatisation des installations difficile
• Gaspillage des ressources serveur
• L’arrêt d’un service engendre un blocage du système
• Pas de reprise instantanée en cas d’arrêt du service
• La maintenance du système ou d’application engendre un arrêt complet du service
9
2.2. Nouvelle architecture d’un ordinateur :
LA VIRTUALISATION
• Ensemble de techniques et d’outils permettant de faire tourner plusieurs systèmes
d’exploitation sur une seule machine physique → Mutualisation des ressources
• En respectant deux principes fondamentaux :
• Le cloisonnement: chaque système d’exploitation a un fonctionnement indépendant sans aucune
interférence mutuelle
• La transparence: le fonctionnement en mode virtualisé ne modifie pas le fonctionnement du
système ni des applications
10
2.2. Nouvelle architecture d’un ordinateur :
11
2.2. Nouvelle architecture d’un ordinateur :
AVANTAGES(1)
12
2.2. Nouvelle architecture d’un ordinateur :
AVANTAGES(2)
13
2.2. Nouvelle architecture d’un ordinateur :
INCONVÉNIENTS
• Coût important :
• Les licences pour des Hyperviseurs peuvent coûter très chers, par exemple nous pouvons aller dans
les 4600€ pour des licences VMware et 7000€ pour des licences Windows Serveur DataCenter.
• Un recours à des machines puissantes. Les outils de virtualisations sont des applications très
gourmandes en ressources et nécessitent des machines puissantes. un manque de mémoire ou de
capacité CPU peut faire chuter les performances de manière dramatique.
• Vulnérabilité généralisée :
• Si l’Hyperviseur est bogué ou exposé à une faille de sécurité, les machines virtuelles peuvent l’être
également et ne sont plus protégées.
• La virtualisation, en augmentant les couches logicielles, a pour conséquence d’augmenter la surface
d’attaque de l’entreprise.
• 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
14
2.2. Nouvelle architecture d’un ordinateur :
Système hôte
• Machine physique: consiste en un ensemble de ressources matérielles fourni au système et finalement aux
applications.
• Machine virtuelle : c’est l'ordinateur virtualisé. "Machine" désignant un micro-ordinateur et "virtuelle" le qualifiant par
opposition à "physique".
• Hyperviseur: outil de virtualisation qui permet à plusieurs systèmes d'exploitation de fonctionner simultanément sur une
même machine physique. Il permet la création d’environnements clos et indépendants sur lesquels seront installés
d’autres systèmes d’exploitation (« systèmes invités »). Ces environnements sont des « machines virtuelles ».
• Système hôte: système d’exploitation accueillant l’hyperviseur sur la machine physique qui va « virtualiser » un ou
plusieurs autres systèmes
15
2.3. Notion d’hyperviseur :
HYPERVISEUR
• Le principe d’un hyperviseur c’est le partage de
ressource et d’allocation à la demande pour différentes
MVs.
• Fournir aux MVs de meilleures performances grâce à
la communication directe avec les ressources
matérielles de la machine.
• chaque machine virtuelle se verra allouer une quantité
de disque dur, de mémoire ou encore de processeur
logique en fonction des ressources matérielles présentes
sur la machine physique les hébergeant.
• Ils existent deux types d’hyperviseurs:
• Hyperviseur de type 1
• Hyperviseur de type 2
16
2.3. Notion d’hyperviseur :
HYPERVISEURS TYPE 1
• Hyperviseur de Type 1, ou natif, voire « bare metal »
(littéralement « métal nu »),
• Logiciels s'installant et s'exécutant directement sur la couche
matérielle d'une machine physique.
• Exécution directe avec les ressources matérielles: meilleures
performances système pour les machines virtuelles.
• l'hyperviseur de type 1 est comparé à un noyau sur lequel il
est alors possible d'installer un "autre" système d'exploitation.
• L'hyperviseur type 1 est un noyau hôte allégé et optimisé.
17
2.3. Notion d’hyperviseur :
18
2.3. Notion d’hyperviseur :
HYPERVISEURS TYPE 2
• Logiciels s'installant et s'exécutant à l'intérieur d'un système
d'exploitation hôte déjà présent sur la machine physique →
consommateurs de ressources.
• La quantité de ressources pouvant être allouées aux
machines virtualisées est moindre que sur un hyperviseur de
type 1.
• Solution plutôt destinée à des usages de tests et n’est pas
adaptée à des contextes de production.
19
2.3. Notion d’hyperviseur :
20
3. Les types de virtualisation :
21
3. Les types de virtualisation :
modifiés paravirtualisation
système
système
V. complète
non modifiés
virtualisation
V. assistée par le
matériel
processus cloisonnement
http://www.antoinebenkemoun.fr 22
3. Les types de virtualisation :
VIRTUALISATION SYSTÈME
• La virtualisation système a pour rôle de virtualiser un système d’exploitation.
• On peut distinguer deux catégories :
• Les systèmes non-modifiés : c’est le type de virtualisation le plus utilisé aujourd’hui.
VMware, VirtualPc, VirtualBox et bien d’autres appartiennent à cette catégorie.
• On distingue :
• La virtualisation complète : consiste à virtualiser un environnement matériel complet sur chaque
machine virtuelle (VM).
• La virtualisation assistée par le matériel : améliorée grâce aux processeurs Intel-VT et AMD-V qui
implantent la virtualisation matérielle dans leurs produits.
• Les systèmes modifiés : la virtualisation nécessite de modifier et d’adapter le noyau d’un
système (Linux, BSD, Solaris). On parle alors de paravirtualisation.
23
3. Les types de virtualisation :
VIRTUALISATION PROCESSUS
modifiés paravirtualisation
système
V. complète
non modifiés
virtualisation
V. assistée par le
matériel
processus
processus cloisonnement
24
3.1. Architectures des processeurs x86 :
25
3.1. Architectures des processeurs x86 :
• Extension 64-bit depuis 2001 : x86-64 est l'architecture étendue 64 bits, elle préserve
l'intégralité de l'architecture x86
• Depuis juin 2005, Apple s'est tourné vers les processeurs x86 d'Intel (abondant de
PowerPC).
• Changement de l'architecture de la plateforme Macintosh pour l'utilisation de microprocesseurs
Intel à la place des PowerPC d'IBM
26
3.1. Architectures des processeurs x86 :
27
3.1. Architectures des processeurs x86 :
• Plus un programme est installé sur un niveau bas, plus il exerce de contrôle sur le
système
• Inconvénient: le processeur x86 « classique » se prête mal à la virtualisation →
comment faire pour placer un hyperviseur entre le matériel et l’OS qui est conçu
pour s’exécuter en Ring 0 ?
28
3.1. Architectures des processeurs x86 :
système
V. complète
non modifiés
virtualisation
V. assistée par le
matériel
processus cloisonnement
29
3.2. La virtualisation complète :
LA VIRTUALISATION COMPLÈTE
Hyperviseur type 2
• Virtualisation complète, dénommée ainsi par opposition à la paravirtualisation
31
3.2. La virtualisation complète :
32
3.3. La paravirtualisation :
PARAVIRTUALISATION
• L'hyperviseur (de type 1) et le système d'exploitation invité coopèrent.
• Le système invité exploite directement le matériel de
l'ordinateur hôte.
• La paravirtualisation nécessite un système
d'exploitation modifié, conscient qu'il fonctionne
dans un environnement virtualisé.
• A la place d’un système invité complet, un noyau très
léger est utilisé.
33
3.3. La paravirtualisation :
PARAVIRTUALISATION : TECHNIQUE
• La paravirtualisation a était développée notamment par XenServer de Citrix.
• Elle consiste à modifier les OS invités (la couche du noyau) pour leur permettre de:
• s’exécuter sur le Ring 0.
• au-dessus d'un hyperviseur pas sur les ressources physiques
(hypercall).
• Il n’y a donc pas d’interception d’instructions ni de
translation binaire.
34
3.3. La paravirtualisation :
PARAVIRTUALISATION : TECHNIQUE
• Nécessite un travail de modification de l’OS invité qui n’est pas toujours
possible notamment avec certaines versions de Windows.
• Les fournisseurs de systèmes propriétaires - tels que Microsoft Windows - n’autorisent
généralement pas de telles modifications
• Ainsi, seuls les systèmes invités modifiés peuvent être paravirtualisés
• Avantages :
• performances optimales : performances sont très proches d’un environnement pour
matériel.
• Inconvénients :
• assez complexe à mettre en œuvre car il faut modifier le kernel.
35
3.3. La paravirtualisation :
PARAVIRTUALISATION VS
VIRTUALISATION COMPLÈTE
• Similarité : c’est toujours un système d’exploitation complet qui s’exécute
sur le matériel émulé par une machine virtuelle.
• Différence:
• Paravirtualisation: le système invité est modifié pour être exécuté par la machine
virtuelle.
• Virtualisation complète: le système invité n’est pas modifié. L'hyperviseur capture les
appels système de l'invité et les transmet au matériel
36
3.4. La virtualisation assistée au niveau matériel :
• Les processeurs Intel avec Intel VT (Virtualization Technology) et AMD avec AMD-V
(Virtualization) introduisent un nouveau mode d’exécution (en 2006).
➢ Celui-ci est appelé virtualisation assistée au niveau matériel (Hardware Assisted Virtualization).
37
3.4. La virtualisation assistée au niveau matériel :
38
3.4. La virtualisation assistée au niveau matériel :
39
3.5. Le cloisonnement :
LE CLOISONNEMENT (ISOLATION)
• Le cloisonnement, ou aussi appelé la virtualisation d'environnement, concerne uniquement
la partie applicative.
• Le cloisonnement vise à séparer les processus
s’exécutant sur un même système d’exploitation :
• isoler 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.
➢ Chapitre 3
40
4. Les domaines de virtualisation :
41
4.1. Virtualisation des Postes de Travail :
42
4.1. Virtualisation des Postes de Travail :
43
4.1. Virtualisation des Postes de Travail :
44
4.1. Virtualisation des Postes de Travail :
45
4.1. Virtualisation des Postes de Travail :
46
4.1. Virtualisation des Postes de Travail :
48
4.2. Virtualisation des applications :
• Plusieurs applications peuvent tourner sur un même système sans avoir d’incompatibilités
de versions de bibliothèques « dll », de clés de registre
• Possibilité de faire tourner plusieurs versions d’une même application sur un même
système d'exploitation
• Exécution locale d’applications sans que celles-ci ne soient installées sur les postes.
50
4.2. Virtualisation des applications :
• Sécurité :
• déterminer quels utilisateurs accèdent à quelles applications depuis un point central.
• Supprimer l’accès à une application à un utilisateur dont les droits ont changé au sein d’une entreprise
• révoquer l’accès distant aux données sensibles, sans avoir à localiser l’appareil.
• au niveau de la protection du système d’exploitation hôte: l’application virtualisée ne viendra pas interagir avec les
fichiers de configuration du système
• Moins de conflit entre les applications → plus de sécurité 51
4.3. Virtualisation des Réseaux :
52
4.3. Virtualisation des Réseaux :
53
4.3. Virtualisation des Réseaux :
54
4.3. Virtualisation des Réseaux :
• Différence:
• Leur manière de séparer les fonctions et de dissocier les ressources.
• La SDN sépare les fonctions de mise en réseau des fonctions de contrôle du réseau, dans le but de
centraliser la gestion et la programmation du réseau.
• La NFV permet de dissocier les fonctions réseau du matériel. Elle fournit l'infrastructure sur laquelle la
SDN s'exécute.
• Avec ces deux approches: créer une architecture réseau plus flexible et programmable, qui
utilise les ressources plus efficacement.
55
4.3. Virtualisation des Réseaux :
56
4.3. Virtualisation des Réseaux :
57
4.3. Virtualisation des Réseaux :
58
4.3. Virtualisation des Réseaux :
59
4.4. Virtualisation du stockage :
LA VIRTUALISATION DU STOCKAGE
• Permet d’être indépendant de la localisation physique des
données en créant un espace logique de stockage.
• Principe : 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.
• Objectif :
• mutualiser les ressources de stockage.
• déporter tout le stockage interne d'une machine vers un
équipement dédié.
60
4.4. Virtualisation du stockage :
61
4.4. Virtualisation du stockage :
EXEMPLE DE VIRTUALISATION DE
STOCKAGE
• Un NAS est une technologie de stockage au niveau de fichier qui fournit une fonction de
partage de fichiers à l’aide du réseau.
• À l’aide des protocoles SMB (Server Message Block) pour les systèmes Windows ou NFS
(Network File System) pour les systèmes Unix.
• Principe : basée sur le modèle client-serveur.
• Le système de fichiers distant est présenté à l’utilisateur comme s’il était local.
• Le système utilisateur émet des appels système habituels pour y effectuer des opérations d’entrée-
sortie.
• Le noyau du système intercepte ces appels système et les encapsule dans un message qui va être
envoyé au système distant.
62
4.4. Virtualisation du stockage :
63
4.4. Virtualisation du stockage :
EXEMPLE DE VIRTUALISATION DE
STOCKAGE
• Un SAN est un réseau sur lequel circulent les données entre un système et son stockage.
• L'architecture des SAN comporte des équipements dédiés, des baies de stockage qui sont
accessibles par plusieurs serveurs (réplication de données)
• Les deux principaux protocoles d'accès à un SAN sont :
• iSCSI (Internet Small Computer System Interface) : elle utilise TCP/IP et Ethernet et peut ainsi
facilement être intégrée dans les réseaux existants (connectique et des équipements de commutation
standards)
• Fibre Channel: il s’agit d’une interface développée pour des transferts à très grande vitesse. Les
débits sur un réseau SAN en technologie Fibre Channel peuvent atteindre 32Gbit/s (précédemment
1Gbit/s, 2, 4, 8 et 16) par lien en fibre optique→ Le cout est plus élevé
• SAN est une technologie de communication robuste et sécurisée.
64
4.4. Virtualisation du stockage :
VIRTUALISATION DE STOCKAGE :
AVANTAGES
• Evolutivité de l’espace de stockage. L’espace disque n’est plus limité par les caractéristiques
des serveurs, et est évolutif. Par exemple, ajout de disques ou de baies de stockage sur le
SAN.
• Optimiser la gestion des disques : espace de stockage physique mutualisé pour les serveurs.
Les applications n’aient plus besoin de savoir sur quels disques, partitions ou sous-systèmes de
stockage résident leurs données.
• Sécurité par redondance du stockage : accessibilité au système de stockage en cas de
panne de l’un de ses éléments, en doublant au minimum chacun des éléments du système
(haute disponibilité).
• Hétérogénéité des systèmes: il peut fonctionner dans un environnement complètement
hétérogène et donc le système d’exploitation des serveurs n’a aucune importance.
65
5. Les principales solutions de virtualisation :
66
5. Les principales solutions de virtualisation :
67
5. Les principales solutions de virtualisation :
68
5. Les principales solutions de virtualisation :
69
5. Les principales solutions de virtualisation :
70
5. Les principales solutions de virtualisation :
71
5. Les principales solutions de virtualisation :
72
5. Les principales solutions de virtualisation :
73
5. Les principales solutions de virtualisation :
74
5. Les principales solutions de virtualisation :
75
5. Les principales solutions de virtualisation :
76
5. Les principales solutions de virtualisation :
77
5. Les principales solutions de virtualisation :
78
5. Les principales solutions de virtualisation :
79
5. Les principales solutions de virtualisation :
80
5. Les principales solutions de virtualisation :
81
5. Les principales solutions de virtualisation :
82