Vous êtes sur la page 1sur 82

VIRTUALISATION

ET CONTENEUR
CHAPITRE 2 : VIRTUALISATION

Institut Supérieur d’Informatique (ISI)


3IRS

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 :

VMWARE, PREMIER HYPERVISEUR DES


ENTREPRISES
• Domination de VMware sur le marché de la
virtualisation de serveurs.
• Pour 48% des répondants, c’est le logiciel
de cet éditeur qui est utilisé comme
principal hyperviseur – car les entreprises
en exploitent parfois plusieurs
simultanément.

Etude ZDNet.fr (2014)

3
1. Principaux acteurs de la virtualisation :

Marché des logiciels de virtualisation


• Le marché des logiciels de virtualisation était évalué à 62,7 milliards USD
en 2020 et devrait atteindre 120,41 milliards USD d'ici 2026
• Les principaux acteurs de la virtualisation sont VMware, Microsoft, Oracle,
Red Hat (IBM) et Citrix.
• Les principaux acteurs du marché de type 2 sont VMware, Microsoft et
Citrix, tandis que la machine virtuelle basée sur le noyau (KVM) de Red Hat
est le produit de type 1 le plus utilisé.

https://www.mordorintelligence.com/fr/industry-reports/virtualization-software-market 4
2. Principe de la virtualisation :

2.1. ARCHITECTURE CLASSIQUE D’UN


ORDINATEUR
Un ordinateur est constitué :
• Du matériel APPLICATIONS
applications
(jeux, outils bureautiques, …)
• D’un système d’exploitation Interpréteur de commandes, compilateur, …
SYSTEME
• De programmes D’EXPLOITATION noyau

Langage machine
MATERIEL
Dispositifs physiques

5
2.1. Architecture classique d’un ordinateur :

LE MATÉRIEL (HARDWARE)

• Les dispositifs physiques constituent la couche la plus basse du


matériel.
• Une machine a effectivement besoin de 4 types de ressources :
• le processeurs ou CPU ;
• la mémoire (RAM) ;
• le stockage (disque dur) ;
• des interfaces de connexion réseau (optionnel).

6
2.1. Architecture classique d’un ordinateur :

LE SYSTEME D’EXPLOITATION (OS)


• Un « système d’exploitation », c’est un logiciel qui:
• permet une utilisation efficace et commode d’un ordinateur.
• exploite au mieux la puissance de la machine.
➢ C’est l’interface entre l’utilisateur et le matériel

• Ses fonctions principales sont :


• Contrôle des ressources (allocation et gestion du CPU et de la mémoire)
• Contrôle des processus (des tâches)
• Contrôle des périphériques…

• Exemples de systèmes d’exploitation: Unix, DOS, Windows, Mac OS, Linux, BSD, ...

7
2.1. Architecture classique d’un ordinateur :

LES PROGRAMMES OU APPLICATIONS


• Les programmes s'exécutant sur votre ordinateur utilisent les ressources
que la carte mère propose. Mais toutes les cartes mères ne fonctionnant
pas de la même manière.
• Il est devenu nécessaire de créer des standards d'architecture comme, par
exemple:
• PowerPC pour les Mac (jusqu’à 2005).
• x86 de Intel (La plus répandue et c'est sur ce type d'architecture que Windows
fonctionne)

• A cause de ces différences d'architecture qu'il existe des problèmes de


compatibilité (par exemple, Windows incompatible avec PowerPC).
8
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

• La virtualisation ajoute une couche d'abstraction : séparer le système d'exploitation du


matériel
• Couche d'abstraction → Hyperviseur

10
2.2. Nouvelle architecture d’un ordinateur :

LA NOUVELLE CONCEPTION D’ARCHITECTURE

• La virtualisation est une solution logicielle introduisant


une nouvelle façon de concevoir l’architecture
matérielle des entreprises.
• Matériel indépendant des OS et des applications
✓ Transformation des environnements informatique dans
le monde

11
2.2. Nouvelle architecture d’un ordinateur :

AVANTAGES(1)

• Consolidation et rationalisation des coûts de matériels informatiques : les entreprises ne


sont plus obligées d’acheter un serveur physique pour chaque application,
• Possibilité d’installer plusieurs systèmes (Windows, Linux) sur une même machine,
• Portabilité des serveurs : une machine virtuelle peut être déplacée d’un serveur physique
vers un autre (lorsque celle-ci a, par exemple, besoin davantage de ressources),
• Accélération des déploiements de systèmes et d’applications en entreprise : on souhaite
tester un nouveau service et on ne veut pas impacter le service en production sur la même
machine

12
2.2. Nouvelle architecture d’un ordinateur :

AVANTAGES(2)

• Administration simplifiée de l’ensemble des serveurs,


• Réduction de la facture d’électricité, en diminuant le nombre de serveurs physiques.
• Sécurisation et/ou isolation d’un réseau ;
• 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.

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 :

TERMINOLOGIE Systèmes invités

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

• Système invité: systèmes d’exploitation virtualisés exécutés par l’hyperviseur

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 :

EXEMPLES D’HYPERVISEURS DE TYPE 1

• Citrix Xen Server (libre),


• VMware ESXi,
• Microsoft Hyper-V Server,
• Parallels Server Bare Metal,
• Oracle vm (gratuit),
• KVM (libre).

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 :

EXEMPLES D’HYPERVISEURS DE TYPE 2

• logiciels Microsoft (Microsoft VirtualPC, Microsoft Virtual Server),


• logiciels VMware (VMware Fusion, VMware Player, VMware Server, VMware Workstation)
• logiciels Parallels (Parallels Desktop, Parallels Server),
• Oracle VM VirtualBox (gratuit)

20
3. Les types de virtualisation :

LES DIFFÉRENTS TYPES DE


VIRTUALISATION
• Il existe plusieurs catégories de virtualisation, utilisant chacune des technologies
différentes :
1. la virtualisation complète ;
2. la paravirtualisation ;
3. la virtualisation assistée par le matériel ;
4. le cloisonnement (aussi appelé isolation).

21
3. Les types de virtualisation :

LES DIFFÉRENTS TYPES DE


VIRTUALISATION
• Les différents types de virtualisation sont classés selon le modèle suivant :

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

• La virtualisation processus ne virtualise pas l’intégralité d’un système d’exploitation mais


uniquement un programme particulier au sein de son environnement (contrairement à la
virtualisation système).

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 :

FAMILLE DE PROCESSEURS X86


Avant de comprendre comment fonctionnent ces techniques, il est nécessaire de connaître
les architectures des processeurs x86.
• La famille x86 regroupe les microprocesseurs compatibles avec le jeu d'instructions de Intel
• L'architecture de processeur la plus répandue dans le monde: part de marché des
processeurs pour serveurs qui dépasse en 2015 les 95 %.
• Les processeurs d'AMD sont compatibles avec les processeurs Intel puisqu'ils utilisent le
même jeu d'instructions (un programme conçu pour fonctionner sur un processeur Intel
fonctionne également avec un processeur AMD et inversement).
• Ces deux entreprises se partagent presque totalement le marché des processeurs x86.

25
3.1. Architectures des processeurs x86 :

FAMILLE DE 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

• Depuis 2017, introduction de ARM64 : principalement la téléphonie mobile et les tablettes.

26
3.1. Architectures des processeurs x86 :

ARCHITECTURES DES PROCESSEURS X86


• Les architectures des processeurs x86 offrent 4 niveaux de privilèges (Ring 0 à 3).
Ces niveaux définissent les privilèges d’exécution des programmes.
• Mode protégé : 4 niveaux de privilèges
• Ring 0 : kernel mode
• Peut tout faire
• Réservé au noyau : l’OS dispose du plus haut niveau de
contrôle et accède directement aux ressources en s’exécutant
au ring 0
• Ring 1 et 2 :
• Rarement utilisés en pratique
• Privilèges de moindre importance du ring 0

27
3.1. Architectures des processeurs x86 :

ARCHITECTURES DES PROCESSEURS X86


• Ring 3 : mode utilisateur
• Applications
• Certaines instructions (sensibles) sont interdites : modification de l’état de la machine,
instructions d’e/s,…
• Elles ne peuvent pas modifier ce qui s’exécute sur des rings inférieurs au leur.
• Une application ne peut pas arrêter l’OS, alors que l’OS peut arrêter une application.

• 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 :

ARCHITECTURES DES PROCESSEURS


X86 : VIRTUALISATION SYSTÈME
• Ce challenge a été résolu grâce aux techniques de virtualisation complète et de
paravirtualisation
modifiés paravirtualisation

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

• Le système invité « croit » s’exécuter sur une véritable


machine physique → virtualisation système non-
modifiés
• Système invité : Windows, Linux, Mac OS, etc.
• L'OS qui est virtualisé n'a aucun moyen de savoir qu'il
partage le matériel avec d'autres OS.
• L'hyperviseur (de type 2) crée un environnement virtuel
complet simulant littéralement un nouvel ordinateur
complet, avec du « faux matériel »

• Exemples : VirtualBox, Microsoft VirtualPC, Microsoft VirtualServer, VMWare Player,


VMWare Workstation…
30
3.2. La virtualisation complète :

LA VIRTUALISATION COMPLÈTE : TECHNIQUE

• Vmware fut le premier à résoudre ce challenge en


1998 en développant une technique appelée
translation binaire (Binary Translation).
• Placer l’hyperviseur en Ring 0,
• Déplacer les OS invités à un niveau supérieur (Ring
1) tout en leur garantissant un niveau de privilège
supérieur à ceux des applicatifs (Ring 3).
• Problème :
• les OS étant conçu pour s’exécuter sur le Ring 0, ils
vérifient régulièrement leur positionnement, car
certaines instructions ne s’exécutent que si elles
viennent du Ring 0 ou y vont.

31
3.2. La virtualisation complète :

LA VIRTUALISATION COMPLÈTE : TECHNIQUE


• Translation binaire
• intercepter certaines requêtes ce qui permet de leurrer l’OS invité sur la place qu’il occupe
réellement sur le système.
• modifier certaines instructions provenant de l’OS invité avant de les envoyer pour traitement aux
processeurs physiques.
• Ne nécessite aucune modification au niveau du kernel (le noyau) de l’OS invité car la translation
binaire est exécutée au niveau du code binaire par le processeur.
• Avantage:
• Exécute n’importe système exploitation ;
• Séparation nette entre OS invité et hôte : sécurité et stabilité
• Inconvénient: Problèmes de performance: la translation binaire nécessite un travail
supplémentaire de la part du CPU pour faire la translation binaire.

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é.

• Les performances sont bien meilleures en


paravirtualisation qu'en virtualisation complète. Hyperviseur type 1
• Exemples : Xen, KVM, VMware ESXi, Hyper-V, Oracle VM Server…

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

• Le système d'exploitation invité paravirtualisé est conscient


d’être virtualisé: modifie les instructions non-virtualisables :
• A la place, il effectuera des appels explicites à l'hyperviseur
pour demander les manipulations matérielles.
• Ces appels à l'hyperviseur sont appelés hyperappels Hyperappels

(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 :

VIRTUALISATION ASSISTÉE AU NIVEAU


MATÉRIEL
• Le support de la virtualisation au niveau des processeurs va améliorer cette situation.
• Le processeur (conçu pour cela) prend en charge la virtualisation,
• éviter de faire effectuer à l'hyperviseur (ou à la machine virtuelle) des tâches « micrologicielles ».
• éviter de mettre l’OS sur un Ring qui n’est pas conçu pour lui
• éviter de modifier le kernel de l’OS,

• 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).

➢ Grâce à cette assistance matérielle dans le processeur, les architectures x86


s’affranchissent d’un certain nombre de barrières techniques.

37
3.4. La virtualisation assistée au niveau matériel :

VIRTUALISATION ASSISTÉE AU NIVEAU


MATÉRIEL : TECHNIQUE
• La virtualisation assistée au niveau matériel comporte:
• un niveau racine (Root), correspondant à des Rings inférieurs
à 0,
• un niveau normal, correspondant aux anciens Rings de 0 à 3.
• Niveau racine :
• niveau privilégié, accède directement au matériel.
• L’hyperviseur fonctionne en mode Racine (Root Mode) avec le
niveau de contrôle le plus élevé.
• Niveau normal :
• Les systèmes d’exploitation invités fonctionnent sur le Ring 0.
Il occupent bien l’emplacement pour lequel ils ont été conçus.

38
3.4. La virtualisation assistée au niveau matériel :

VIRTUALISATION ASSISTÉE AU NIVEAU


MATÉRIEL : TECHNIQUE
• Plusieurs solutions bien connues ont implémenté les instructions Intel VT et AMD-
V sur architectures x86.
• Exemple: VMware Workstation, Xen, Linux KVM et Microsoft Hyper-V.
• Avantages:
• Plus besoin de modifier les OS invités, ni d’utiliser de translation binaire
• Fluidifier le partage des ressources physiques entre les machines virtuelles.
• Généralement incluse dans les processeurs récents

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 :

LES DOMAINES DE VIRTUALISATION

• La virtualisation touche plusieurs domaines:


• Virtualisations des Postes de travail
• Virtualisations des applications
• Virtualisations des réseaux
• Virtualisations du stockage

41
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE


TRAVAIL
• Simuler une charge de poste de travail : accéder à un poste depuis un
appareil connecté.
• L’environnement du poste de travail (Bureau et ses applications) séparés de
l’appareil client physique utilisé pour y accéder.

42
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE


TRAVAIL
✓Infrastructure de postes de travail virtuels (VDI, Virtual Desktop
Infrastructure) → Virtualiser les postes de travail à distance.
• a lieu dans un environnement informatique client/serveur.
• Permet aux utilisateurs d’exécuter des systèmes d’exploitation et des
applications à partir d’un serveur au sein d’un datacenter,
• L’ensemble des interactions des utilisateurs se fait sur l’appareil d’un client
(ordinateur portable, un client léger ou un smartphone).

43
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE TRAVAIL:


VDI
• Principe :
• plusieurs machines virtuelles (une par poste
physique) équipées d’un système
d’exploitation de bureau s’exécutent sur un
serveur, lui-même fonctionnant avec un «
hyperviseur ».
• Lorsqu’un utilisateur allume son poste
physique, il se connecte à l’une de ces
machines et y ouvre une session.

44
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE


TRAVAIL: VDI
• L’affichage et le son de cette machine virtuelle sont transférés sur le poste
physique par l’intermédiaire du réseau.
• Chaque éditeur utilise un protocole de connexion à une machine distante qui lui est
propre :
• RDP (Remote Desktop Protocol) pour Microsoft ;
• ICA (Independent Computing Architecture) pour Citrix ;
• PCoIP (PC over IP) pour VMware ;
• SPICE (Simple Protocol for Independent Computing Environments) pour RedHat.

45
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE


TRAVAIL: VDI
• Utilise des VM hébergées pour livrer des postes de travail virtuels
persistants et non persistants :
• Avec un poste de travail virtuel persistant: chaque utilisateur dispose d’une image de
poste unique qu’il peut personnaliser avec des applications et des données, tout en
sachant que celles-ci seront sauvegardées pour plus tard.
• Avec un poste de travail virtuels non persistante: permet aux utilisateurs d’accéder à un
poste de travail virtuel depuis un pool identique lorsqu’ils en ont besoin. Une fois que
l’utilisateur se déconnecte d’un VDI non persistant, celui-ci retrouve son état d’origine.

46
4.1. Virtualisation des Postes de Travail :

VIRTUALISATION DES POSTES DE


TRAVAIL: AVANTAGES
• Gestion des ressources :
• gestion centralisée au sein de l’entreprise.
• des ordinateurs et des appareils à bas prix aux utilisateurs, puisque le gros du traitement informatique intensif a lieu
dans le datacenter → économiser de l’argent.
• Supprimer facilement et rapidement l’accès à un ancien employer à son poste de travail virtuel et à l’ensemble de
ses données → pas de désinstallation manuelle
• Travail à distance :
• Prendre en charge les travailleurs distants.
• accès distant aux ressources informatiques partagées
• L’expérience de collaboration.
• Sécurité :
• contrôle centralisé accru sur les applications et les postes: décider quels utilisateurs accèdent à quelles données et
quelles applications.
• l’ensemble des données de l’entreprise réside au sein du datacenter, et non sur chaque machine: la perte ou le vol
d’un appareil ne pose pas les mêmes risques.
47
4.2. Virtualisation des applications :

VIRTUALISATION DES APPLICATIONS


• Elle consiste à encapsuler l’application et son contexte d’exécution système dans un
environnement cloisonné → isolation du système d’exploitation sur lequel elles sont
exécutées.
• Deux méthodes :
• L’exécution de l’application à distance : installer et exécuter sur un serveur et envoyer l’image et
le son que l’application génère sur le poste de travail → mécanismes identiques à la
virtualisation des postes de travail, sauf qu’au lieu de transférer le poste entier à l’utilisateur,
seule l’interface utilisateur d’une application spécifique est envoyée.
• Le streaming de l’application : lorsque qu’un utilisateur tente de lancer une application, le
serveur envoie au poste de travail tous les fichiers dont l’application a besoin pour s’exécuter, et
l’application est exécutée par le poste de travail, avec ses propres ressources.

48
4.2. Virtualisation des applications :

VIRTUALISATION DES APPLICATIONS


• Streaming de l’application : ajout d’une couche
logicielle supplémentaire entre un programme
donné et le système d’exploitation ;
• But :
• intercepter toutes les opérations d’accès ou
de modification de fichiers ou de la base de
registre
• les rediriger de manière totalement
transparente vers une localisation virtuelle.
• permettre d’exécuter des applications
Exemple de virtualisation d'application sous Windows
conçues pour d’autres systèmes.
49
4.2. Virtualisation des applications :

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.

• Exemple: VMware ThinApp, Microsoft App-V ou Citrix XenApp

50
4.2. Virtualisation des applications :

VIRTUALISATION DES APPLICATIONS :


AVANTAGES
• Gestion des applications :
• réduire le délai d’installation: une seule fois sur un serveur central,
• simplifie l’application de mises à jour ou de correctifs.
• Une portabilité accrue: lancer l’application depuis n’importe quel poste
• Évolutivité :
• déployer des applications virtuelles sur toutes sortes d’appareils connectés, indépendamment du système
d’exploitation
• Un provisioning des clients légers: l’entreprise dépense ainsi beaucoup moins en matériel informatique

• 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 :

VIRTUALISATION DES RÉSEAUX


• C’est la reproduction logicielle complète
d’un réseau physique.
• Principe : consiste à combiner des
ressources réseau matérielles et logicielles
dans une seule unité administrative.
• Objectif : fournir aux systèmes et
utilisateurs un partage efficace, contrôlé et
sécurisé des ressources réseau.

52
4.3. Virtualisation des Réseaux :

EXEMPLE DE VIRTUALISATION DE RÉSEAU


• NFV (Network Function Virtualization) ou virtualisation
des fonctions réseau :
• La capacité de dissocier le matériel du logiciel pour les
équipements réseau : plusieurs fonctions réseau
peuvent par exemple s’exécuter de manière
indépendante sur un même matériel générique.
• Virtualiser les services réseau (routeurs, pare-feu,
modules d'équilibrage de charge, etc.)
traditionnellement exécutés sur du matériel propriétaire.
• Ces services sont regroupés dans des machines
virtuelles sur du matériel standard, plutôt que
propriétaires.

53
4.3. Virtualisation des Réseaux :

EXEMPLE DE VIRTUALISATION DE RÉSEAU

• SDN (Software Defined Networks) ou réseau défini par


logiciel:
• La capacité de configurer les équipements réseau à la
volée en fonction des besoins de l’application/service au
moyen d’un « contrôleur de réseau » centralisé.
• Les ressources du réseau physique (commutateurs et les
routeurs etc.) sont regroupées et accessibles par
n’importe quel utilisateur par l’intermédiaire du contrôleur.

54
4.3. Virtualisation des Réseaux :

SDN VS. NFV


• Ne sont pas dépendantes l'une de l'autre, mais elles se ressemblent sur certains points.
• Similarité:
• Ces deux approches reposent sur la virtualisation et l'abstraction du réseau.

• 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 :

EXEMPLE DE VIRTUALISATION DE RÉSEAU

• VLAN (Virtual Local Area Network) ou réseau local virtuel


• Un VLAN est un réseau local regroupant un ensemble de
machines de façon logique et non physique.
• Un VLAN est une sous-section d’un réseau local (LAN) créée
avec un logiciel qui combine les terminaux du réseau en un
groupe, quel que soit leur emplacement physique.
• Les VLANs améliorent la vitesse et les performances des
réseaux surchargés et simplifient les opérations de
modification ou d’ajout effectuées sur le réseau.

56
4.3. Virtualisation des Réseaux :

EXEMPLE DE VIRTUALISATION DE RÉSEAU

• VPN (Virtual Private Network) ou réseau privé


virtuel :
• Un tunnel sécurisé à l'intérieur d'un réseau (Internet
notamment).
• Il permet d'échanger des informations de manière
sécurisée et anonyme en utilisant une adresse IP
différente de celle de votre ordinateur.
• Le VPN n'est pas un réseau physique en lui-même
mais passe par le réseau Internet classique en
créant un « tunnel » sécurisé à l'intérieur.

57
4.3. Virtualisation des Réseaux :

VIRTUALISATION DES RÉSEAUX :


AVANTAGES
• Une meilleure accessibilité : l’utilisateur peut opérer son réseau depuis une interface à
distance.
• Plus de souplesse : adaptation automatique et en temps réel du réseau en cas de pic de
charge ou d’aléas sans intervention d’un technicien.
• Plus de rapidité, plus de performance : quand tout le réseau est sous forme logicielle, il
suffit de quelques minutes voire secondes pour déployer des services, effectuer des
modifications ou restaurer une version précédente (reconfiguration du réseau, mise à jour des
fonctionnalités, déploiement de nouvelles solutions logicielles). Ces changements sont
automatisés et même programmables.
• Améliorer l'évolutivité et l'agilité: elle permet aux opérateurs de services d'offrir de nouveaux
services et applications réseau à la demande, sans ressources matérielles supplémentaires

58
4.3. Virtualisation des Réseaux :

VIRTUALISATION DES RÉSEAUX :


AVANTAGES
• Automatisation : réduit le nombre d’erreurs manuelles et le délai de provisionnement. Elle
renforce la productivité et l’efficacité du réseau.
• Plus de sécurité : la micro-segmentation permet d’isoler chaque charge de travail avec
une sécurité indépendante, empêchant ainsi les menaces de se propager de serveur en
serveur.
• Moins de coûts : baisse des coûts d’investissement grâce au dimensionnement optimisé
des infrastructures (uniquement selon ses besoins) et des économies d’exploitation (moins
d’intervention).

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é.

• Deux façons : virtualisation en mode bloc, en mode fichiers

60
4.4. Virtualisation du stockage :

EXEMPLE DE VIRTUALISATION DE STOCKAGE

• Le stockage en mode fichier : les données sont


stockées en tant qu'élément unique d'information
à l'intérieur d'un dossier (≈ documents imprimés
rangés dans une chemise).
• Système de stockage le plus ancien et le plus
couramment utilisé pour les systèmes de
stockage direct (DAS « Direct attached Storage
») et en réseau (NAS « Network Attached
Storage ») ».

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 :

EXEMPLE DE VIRTUALISATION DE STOCKAGE

• Le stockage en mode bloc : rassemble les données en


blocs qui sont stockés en tant qu'éléments séparés avec
un identifiant unique chacun (emplacement le plus
pratique).
• Dissocier les données de l'environnement de l'utilisateur
et les répartir dans plusieurs environnements (Linux,
Windows etc.)
• Le stockage en mode bloc est généralement déployé
dans des environnements de réseau de stockage SAN
(Storage Area Network).

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 :

PRINCIPALES SOLUTIONS : VIRTUALBOX


ET VMWARE
• Virtualbox (type 2)
• VMware Player ou Workstation Pro (type 2)

66
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : XENSERVER


• XenServer est un logiciel libre de virtualisation.
• Il est un « paravirtualiseur » ou un « hyperviseur
de type 1 ».
• Son développement a débuté sous la forme d'un
projet de recherche de l'université de Cambridge
• La société XenSource qui a contribué largement
à Xen, a été rachetée par Citrix en 2007.
• Xen permet d'exécuter plusieurs systèmes
d'exploitation (et leurs applications)

67
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : KVM


• KVM (Kernel-based Virtual Machine)
• Technologie de virtualisation Open Source intégrée à Linux
• C’est un hyperviseur libre de type I pour Linux.
• KVM est intégré dans le noyau Linux depuis la version
2.6.20 (toute version de Linux publiée après 2007).
• KVM convertit Linux en un hyperviseur de type 1 (système
nu).
• Il fonctionne originellement sur les processeurs à
architectures x86 disposant des instructions de
Virtualisation Intel VT ou AMD-V.
• Solution optimale pour la virtualisation de serveurs

68
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : QEMU


• Qemu est une solution d'émulation de diverses architectures
(différente si besoin) dont x86 (Hyperviseur de type 2).
• Il permet d'exécuter un ou plusieurs systèmes d'exploitation
via les hyperviseurs KVM et Xen,
• Même si on fait souvent référence à l'hyperviseur KVM, il
s'agit en réalité d'une combinaison QEMU-KVM.
• QEMU-KVM est un QEMU modifié qui permet d’accélérer les
jeux d’instructions.

• QEMU-KVM permet de faire fonctionner de nombreux


systèmes invités :
• toutes les versions de Windows à partir de Windows 2000 ;
• toutes les distributions Linux.

69
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : HYPER-V


• Hyper-V est plateforme de virtualisation
Microsoft également connu sous le nom de
Windows Server Virtualisation
• Il permet à un serveur physique équipé
avec Windows Server 2008 ou plus de
devenir Hyperviseur
• Il permet de créer des infrastructures
virtuelles Windows ou / et Linux.

70
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : PROXMOX


• Proxmox est une puissante plate-forme de
virtualisation open-source basée sur
QEMU/KVM et LXC pour les conteneurs
avec une seule interface web.
• Proxmox est une solution de virtualisation
de type "bare metal".
• Propose 2 types de virtualisation :
• virtualisation matérielle (ou complète) :
KVM
• virtualisation par container : LXC

71
5. Les principales solutions de virtualisation :

PRINCIPALES SOLUTIONS : VMWARE


VSPHERE
• VMware vSphere est une plateforme de
virtualisation de l'éditeur VMware,
• C'est un hyperviseur de type 1 (Bare Metal),
basé sur l’architecture VMware ESXi.
• La gestion de ce serveur hôte peut se faire
via plusieurs possibilités :
• par le navigateur Web avec une connexion
directe,
• par une console cliente avec une connexion
directe
• par un outil de gestion centralisée nommé
VMware vCenter Server

72
5. Les principales solutions de virtualisation :

LES BONNES PRATIQUES DE MISE EN ŒUVRE


D'UN PROJET DE VIRTUALISATION
• Que vous achetiez ou construisiez une solution, vous devriez être en mesure d'obtenir un
aperçu de:
• Fonctionnement et performances du matériel, y compris la température, le ventilateur, le voltage,
l'alimentation, la batterie etc.
• Capacité et ressources du CPU, ajustement dynamique de la fréquence et temps CPU
• Capacité de la mémoire
• Latence vers les unités de stockage (vitesses de lecture et d'écriture pour chaque hôte et MV)
• Utilisation des ressources et performance de la MV
• Surveillance du réseau des MV (utilisation globale et la bande passante aussi bien au niveau de l'hôte
que de la VM).

➢ Nécessité d’un outil de supervision de machine virtuelle

73
5. Les principales solutions de virtualisation :

OUTILS DE SUPERVISION DE MACHINE


VIRTUELLE
• La supervision des machines virtuelles consiste à observer en continu les
machines virtuelles, les hyperviseurs, et les serveurs sur lesquels elles tournent.
• Un outil de supervision de machine virtuelle doit assurer la surveillance de l’état de
santé, les performances, le réseau des MV et produire des rapports et des alertes.
• Améliorer le service en surveillant les performances des MV:
• Court terme : collecter des données et des mesures afin de s'assurer que tout fonctionne
correctement et qu'aucun problème ne semble faire effet de boule de neige.
• Long terme : après quelques mois de collecte de données, vous serez en mesure
d'observer des tendances, de rationaliser la planification de vos ressources et d'identifier
les MV problématiques qui rencontrent des pannes ou des ralentissements répétés.

74
5. Les principales solutions de virtualisation :

OUTILS DE SUPERVISION DE MACHINE


VIRTUELLE
• Il existe de nombreux outils de surveillance compétitifs sur le marché. Nous allons
examiner quelques-uns.
• VirtualBox → (à voir en classe)
• Hyper-V Manager
• Outil de gestion de machine virtuelle fourni avec Microsoft Hyper-V
• Outil de base qui vous permet de créer, supprimer et gérer les machines virtuelles, les disques
durs virtuels (VHD), etc.
• Interface contenant les principales informations sur les machines virtuelles s'exécutant sur un
hôte

75
5. Les principales solutions de virtualisation :

76
5. Les principales solutions de virtualisation :

OUTILS DE SUPERVISION DE MACHINE


VIRTUELLE
• vSphere Web Client
• sous-système des statistiques vSphere
• surveiller l'environnement virtuel et de localiser la source des problèmes potentiels et des
problèmes actuels.
• Les données d'un grand nombre de mesures sont collectées à des intervalles fréquents, traitées
et archivées dans la base de données vCenter Server.
• affichant des graphiques de performance dans vSphere Web Client.

77
5. Les principales solutions de virtualisation :

78
5. Les principales solutions de virtualisation :

OUTILS DE SUPERVISION DE MACHINE


VIRTUELLE
• ManageEngine Applications Manager
• Fournit des données de mesure complètes pour suivre les serveurs virtuels et leurs machines
clientes, et veiller à ce qu’elles fonctionnent bien à tout moment.
• Se connecte aux serveurs hôtes des machines virtuelles via des API et détermine l’état
d’intégrité ainsi que la performance des hôtes et de leurs machines clientes.
• Des rapports prêts à l’emploi, des vues graphiques, des alarmes, des seuils et des fonctions
complètes de gestion des erreurs permettent aux administrateurs d’optimiser l’activité des
serveurs.

79
5. Les principales solutions de virtualisation :

80
5. Les principales solutions de virtualisation :

OUTILS DE SUPERVISION DE MACHINE


VIRTUELLE
• PRTG (Paessler Router Traffic Grapher)
• Logiciel commercial de supervision qui s'exécute sous Windows
• Supervision des machines virtuelles est compatible avec toutes les grandes plateformes de
virtualisation (VMware et Microsoft Hyper-V)
• A partir de son interface Web, il permet de créer des capteurs - ou sondes - en s'appuyant
notamment sur l'ICMP (le Ping), le SNMP, les compteurs de performance, le Packet Sniffing, etc.

81
5. Les principales solutions de virtualisation :

82

Vous aimerez peut-être aussi