You are on page 1of 25

La virtualisation

INTRODUCTION GENERALE
• L’informatique s’est considérablement développée les vingt dernières années,
jusqu’à devenir quasiment indispensable pour chacun d’entre nous et davantage
encore pour les entreprises. Parmi les nouvelles technologies qui ont un impact
important aujourd’hui, il y a notamment les ordinateurs personnels, les
téléphones portables, les tablettes tactiles et les objets connectés.

• Par conséquent, il a fallu trouver des solutions pour stocker la masse gigantesque
de données présente sur Internet et concevoir de nouvelles façons d’accéder à
ces données de façon simple. Depuis plusieurs années, la virtualisation fait partie
des solutions pour stocker de grandes quantités de données et les rendre
disponibles pour un client indépendamment de sa localisation et de l’appareil
qu’il utilise.
INTRODUCTION GENERALE
Virtualisation
Introduction

• Virtualiser : proposer, par l'intermédiaire d'une couche d'abstraction


proche du matériel, une vue multiple d'un matériel unique.

• Il s’agit donc d’utiliser une seule machine physique en remplacement


de plusieurs et d’utiliser les possibilités offertes par la virtualisation
pour démultiplier le nombre de machines virtuelles.
Définition
La virtualisation consiste à exécuter sur une machine hôte dans un environnement
isolé :
● des systèmes d'exploitation : virtualisation système
● des applications : virtualisation applicative

La virtualisation consiste donc à faire exécuter plusieurs noyaux en parallèle de façon


isolé sur une même machine.
● Le système d’exploitation accueillant les VM est appelé hôte
● Les systèmes virtualisés sont appelés systèmes invités ou VM
● Le composant du système hôte réalisant la virtualisation se nomme l’hyperviseur.
Définition
Principe :

La virtualisation respecte deux principes fondamentaux :


➢ Le cloisonnement : chaque système a un fonctionnement indépendant et ne peut
interférer avec les autres.
➢ La transparence : le système ne change pas son fonctionnement.

Ia sécurité en virtualisation :

● L'hyperviseur se charge de l'isolement des machines virtuelles.


● La redondance est aisée diminuant ainsi les risques.
● La spécialisation de chaque machine virtuelle dans un service précis permet
d'avoir des politiques de sécurité propres à chaque serveur virtuel.
Définition

Avantages :
Inconvénients :

★ la réduction des coûts d'acquisition d'une ❖ performances.


infrastructure ❖ pannes.
★ l’optimisation des ressources d'une infrastructure ❖ mise en œuvre, administration.
★ l’amélioration de la disponibilité, sécurité,
performance
★ la réduction des coûts de maintenance de cette
infrastructure.
★ la baisse de la consommation énergétique.
★ la mise à disposition d'un environnement de tests à
moindre coût.
★ la réutilisation de vieux systèmes incompatibles
avec les nouvelles générations de matériel, etc.
Rôle de virtualisation

● La réduction du nombre de serveurs.


● La réduction de l'espace occupé dans les datacenters.
● La réduction de la consommation énergétique des datacenters.
● Réduction des coûts d'administration.
● Amélioration de la flexibilité et de la rapidité des services.
● Amélioration de la qualité de services.
Les différents types de virtualisation
Il existe différents types de virtualisation en fonction des couches
virtualisées :

• Virtualisation d’applications (du contexte d’exécution).


• Virtualisation de serveur.
• Virtualisation du réseau (VLAN).
• Virtualisation du stockage.
Les différents types de virtualisation
Hyperviseur
• 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.

• Les hyperviseurs sont classés actuellement en deux catégories : type 1 et type 2.


Hyperviseur
Hyperviseur de type 1

• Un hyperviseur de type 1 ou natif (voire « bare metal »), est un


logiciel (un noyau allégé) qui s'exécute directement sur une
plateforme matérielle.

• Les ressources de l’hôte sont directement gérées par


l’hyperviseur et non plus par l’OS. La totalité des ressources est
donc dédiée aux VM.

• Un seul hyperviseur par machine.

• Certains hyperviseurs de type 1 s'installent sur un OS qu'ils


modifient pour qu'il devienne un VM.
Hyperviseur
Hyperviseur de type 2

• Un hyperviseur de type 2 (ou hosted hypervisor) est


un logiciel qui s'exécute à l'intérieur d'un autre
système d'exploitation (hôte).

• Un système d'exploitation invité s'exécutera donc en


troisième niveau au-dessus du matériel.

• Les systèmes d'exploitation invités n'ayant pas


conscience d'être virtualisés, ils n'ont pas besoin
d'être adaptés.
Hyperviseur
En résumé :

L'hyperviseur de type 2 :
● Tester un OS.
● Créer un environnement de test.
● Développer une application et la tester sur différents systèmes.

L'hyperviseur de type 1 :
● Créer des serveurs.
● Remplacer des machines physiques par des VM (réduction des coûts).
● Tests en environnement de pré-production.
les niveaux de virtualisation
Introduction
Pour pouvoir faire tourner différents systèmes d’exploitation simultanément sur
un même matériel, les hyperviseurs utilisent différentes technologies de
virtualisation.

Les technologies les plus utilisées sont :


- La virtualisation complète ou machine virtuelle (Full Virtualization).
- La paravirtualisation (Paravirtualization).
- les conteneurs.
Virtualisation complète
• Dans la virtualisation complète, l’hyperviseur intercepte de manière transparente tous les appels que le
système d’exploitation peut faire aux ressources matérielles, et supporte donc des systèmes invités non-
modifiés.

• La virtualisation complète, comme son nom l'indique, consiste à simuler un ordinateur complet, de
façon à exécuter le système d'exploitation de façon naturelle, sans que celui-ci ne se rende compte qu'il
est virtualisé.

• On parle aussi de 'machines virtuelles', en désignant ces systèmes simulés.

• Cela permet donc de faire fonctionner plusieurs systèmes d'exploitation non modifiés sur un serveur
physique.
Virtualisation complète
 L'hyperviseur présente le matériel
physique du système hôte à tous les
systèmes invités.

 Les systèmes d'exploitation invités


ont un accès au matériel sous-jacent
et s'exécutent sans modification et
n'ont pas conscience qu'ils sont
virtualisés.
paravirtualisation
Dans la paravirtualisation, l'hyperviseur exporte une version modifiée de
la machine physique hôte. La machine virtuelle exportée a la même
architecture que le système hôte.

La paravirtualisation est similaire à la virtualisation complète à la seule


différence que les systèmes invités sont modifiés et ont conscience qu’ils
s’exécutent dans un environnement virtuel.
paravirtualisation
 Elle é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é. L’hyperviseur
met simplement à disposition une interface de
programmation (API) qui permet aux systèmes
d’exploitation invités d’accéder directement au matériel
physique du système hôte.

 En paravirtualisation, le système d'exploitation est


modifié pour fonctionner avec une machine virtuelle.
L'intention derrière la modification du système
d'exploitation est de minimiser le temps d'exécution
requis pour effectuer les opérations qui sont autrement
difficiles à exécuter dans un environnement virtuel.
conteneur
Un conteneur est tout simplement un système de fichiers sur lequel
s’exécutent des processus (de préférence un par conteneur) de manière :

● contrainte : on spécifie les limites en termes de ressources.


● isolée : les conteneurs ne se “voient” pas les uns les autres.

C’est une technique qui intervient au sein d’un même système


d'exploitation. Elle permet de séparer un système en plusieurs contextes
ou environnements. Chacun d'entre eux est régi par l'OS hôte, mais les
programmes de chaque contexte ne peuvent communiquer qu'avec les
processus et les ressources associées à leur propre contexte.
conteneur

Un conteneur mobilise moins de ressources qu'une machine virtuelle. Il propose


une interface standard (démarrage, arrêt, variables d'environnement, etc.), assure
l'isolation des applications et peut être géré plus facilement en tant que module
d'une application plus importante (plusieurs conteneurs).
conteneur
Docker
Docker est une application de virtualisation basé sur le kernel linux.
L’outil permet notamment de contenir une application (ou plusieurs)
avec toutes leurs dépendances nécessaires pour être correctement
exécutés.
conteneur

You might also like