Académique Documents
Professionnel Documents
Culture Documents
Ch1 Intro Virt
Ch1 Intro Virt
1
Motivation
▪ Enjeux des systèmes informatiques traditionnels
… … …
▪ Ressources informatiques sous-utilisées et inutilisées
3
Histoire de la virtualisation
4
Histoire de la virtualisation
▪ Chronologie de l'historique : Virtualisation 2.0
System/360 modèle (Consolidation de
67 (CP/CMS, serveurs)
VM/CMS), connu
sous le nom VMware (X86) Paravirtualisation XEN KVM/Linux (2013) Docker
d'hyperviseur
QMU
2012+
1960
1999
2001
2003
2005
2007
2008
IBMM44 PC virtuel MS Extension VT-xAMD-V MS Hyper V
VMware ESX Virtualisation 3.0
Virtualisation du
▪ La virtualisation trouve ses origines à l'époque des ordinateurs centraux à la réseau
Virtualisation du
fin des années 1960 et au début des années 1970, stockage
5
▪ IBM a investi beaucoup de temps et d'efforts dans le développement de Cloud computing
Définition et principes de la
virtualisation
7
Définition et principes de la virtualisation
▪ Définition : La virtualisation est une technique qui combine les techniques matérielles et/ou
logicielles permettant de faire tourner plusieurs instances de systèmes d'exploitation ou plusieurs
applications sur une ou des machines physiques uniques ou en cluster, simultanément et séparément
les unes des autres.
▪ La virtualisation facilite l' abstraction des caractéristiques physiques des ressources informatiques
pour simplifier la manière dont d'autres systèmes, applications ou utilisateurs finaux interagissent
avec ces ressources.
▪ Les ressources de la machine physique (par exemple, espace disque, RAM, CPU) sont partagées
avec la machine virtuelle (VM).
▪ Une machine virtuelle se comporte exactement comme un ordinateur physique et contient ses 8
Définition et principes de la virtualisation (…)
▪ Terminologie
Système
d'exploitation
invité Système
Moniteur de machine virtuelle (VMM) d'exploit
Matériel ation
hôte
Un serveur virtualisé matériel hébergeant trois machines virtuelles, chacune exécutant un système d'exploitation et
▪ Le système hôte : est le système d'exploitation principal qui s'exécute sous le contrôle du matériel.
une pile logicielle de niveau utilisateur distincts.
▪ Le système invité : est le système d'exploitation installé à l'intérieur d'une machine virtuelle.
▪ La machine virtuelle : un environnement isolé qui ressemble à un ordinateur entier, mais qui n'a en
fait accès qu'à une partie des ressources de l'ordinateur. Il peut être créé en utilisant VirtualBox , par 9
Définition et principes de la virtualisation (…)
▪ Terminologie
12
Virtualisation basée sur un hyperviseur
▪ Un hyperviseur (également appelé VMM) est un logiciel qui permet à plusieurs systèmes
d'exploitation de s'exécuter simultanément sur une machine physique et d'interagir
directement avec le matériel physique.
▪ A deux composants :
▪ Noyau : (services du système d'exploitation) Création de processus, gestion de système de
fichiers, planification de processus, etc.
▪ Moniteur de machine virtuelle (VMM)
▪ Types d'hyperviseur :
▪ Para-virtualisation (Hyperviseur type 1, Natif ou Bare-Metal) : installé et exécuté
directement sur le matériel physique et peut en théorie exister sans système
d'exploitation associé.
▪ Virtualisation complète (Hypervisor type 2 ou Hosted) : la machine virtuelle simule le 13
basée sur un hyperviseur (…)
▪ Para Virtualisation (Hyperviseur type 1, Natif ou Bare-Metal)
▪ Est une couche logicielle très légère (par rapport à un OS classique) qui permet d'allouer un
maximum de ressources physiques aux machines virtuelles.
▪ S'exécute directement sur le matériel de l'hôte et peut surveiller les systèmes d'exploitation qui
s'exécutent au-dessus de l'hyperviseur.
▪ Par exemple : Vmware ESX/ESXi, KVM, , Xen, Citrix XenServer, MS Hyper-V, Oracle VM 14
Virtualisation basée sur un hyperviseur (…)
▪ Para Virtualisation (Hyperviseur type 1, Natif ou Bare-Metal)
▪ Avantages: Un maximum de ressources peut être alloué aux machines virtuelles car ce type d'hyperviseur
est directement lié à la couche matérielle.
▪ Les inconvénients:
▪ La machine bare metal devient dédiée dans le seul but d'être un hyperviseur. Ils ne sont pas en mesure de
fournir d'autres rôles.
▪ Inflexibilité du pilote de périphérique : contrairement au système d'exploitation, les hyperviseurs n'ont pas la
capacité de charger dynamiquement les pilotes de périphérique
15
Virtualisation basée sur un hyperviseur (…)
▪ Virtualisation complète (Hyperviseur type 2 ou Hébergé)
▪ L'hyperviseur est installé sur un système d'exploitation, puis prend en charge d'autres systèmes d'exploitation
au-dessus de celui-ci.
▪ Il simule un processeur ou une machine complète (mémoire, disque, réseau, périphériques, etc.). Il est donc
transparent pour les systèmes d'exploitation invités.
16
▪ Par exemple, VMware Player, VMware Workstation, VirtualPC et VirtualBox .
Virtualisation basée sur un hyperviseur (…)
▪ Virtualisation complète (Hyperviseur type 2 ou Hébergé)
▪ Avantages: fournit une isolation matérielle complète. Il est possible d'exécuter plusieurs émulateurs en même
temps car ils ne s'installent pas directement sur la couche matérielle.
▪ Inconvénients : Cher en performances. Cette solution n'est pas économe en mémoire, car aucune économie
d'échelle ne peut être réalisée par rapport aux systèmes d'exploitation chargés.
▪ Faibles en fiabilité et en sécurité car ils héritent des vulnérabilités du système d'exploitation hôte contrôlé par
l'utilisateur.
▪ Machines virtuelles affectées par le processus de mise à jour de l'OS hôte (ex redémarrages de l'OS hôte)
17
(conteneurisation)
▪Il fait référence à une fonctionnalité du système d'exploitation dans laquelle le noyau permet
l'existence de plusieurs instances isolées de l'espace utilisateur (conteneurs).
▪Un programme informatique exécuté sur un système d'exploitation ordinaire peut voir toutes
les ressources (fichiers et dossiers, périphériques connectés, partages réseau et puissance du
processeur) de cet ordinateur. Cependant, les programmes exécutés à l'intérieur d'un
conteneur ne peuvent voir que le contenu du conteneur et les périphériques affectés au
conteneur.
18
Virtualisation au niveau du système d'exploitation (conteneurisation ) (..
▪ Avantages : Cette solution est économe en mémoire et efficace en termes d'absence de surcoût (du fait de la
baisse de performances conséquente de l'ajout de couches de virtualisation). Ces environnements sont donc
bien adaptés au déploiement de nombreux serveurs virtuels de test ou de développement basés sur le même
système.
▪ Inconvénients : Les environnements virtuels ne sont pas complètement isolés, puisqu'ils partagent
notamment le code du noyau. Par conséquent, il n'est pas possible de configurer des systèmes invités avec
des noyaux différents. Ils doivent partager le même noyau que le système hôte.
Isolation
Conteneurs
19
Propriétés de virtualisation
▪ Compatibilité binaire : Chaque machine pense être propriétaire du matériel disponible
▪ Aucune modification du système d'exploitation ou des applications*
▪ Interposition : Toutes les actions d'une machine virtuelle doivent passer par
l'hyperviseur.
▪ Transformations sur instructions, mémoire, E/S
▪ Active ressource transparente surengagement , chiffrement , compression, réplication …
▪ Isolement :
▪ Un programme s'exécutant sur une machine virtuelle ne peut pas accéder/perturber les données
d'une autre machine virtuelle.
▪ Isolement logiciel
▪ Isolement d'anomalie
▪ Une machine virtuelle avec une charge de traitement élevée ne peut pas affecter les performances
d'une autre machine virtuelle. 20
Propriétés de virtualisation
▪ Encapsulation : L'état complet d'une machine virtuelle peut être capturé dans un
fichier : image système
▪ Le fichier peut être manipulé comme n'importe quel autre fichier : transféré, dupliqué, supprimé, …
▪ L' état de la machine virtuelle : la mémoire dynamique, la mémoire statique et l'état des registres du
processeur et des périphériques .
▪ Active les instantanés de VM, les clones
▪ Portabilité
▪ Indépendant du matériel physique
▪ Permet la migration de machines virtuelles actives et en cours d'exécution
21
Demandes de virtualisation
22
Demandes de virtualisation
▪ Virtualisation de bureau
▪ Virtualisation de serveur
▪ Virtualisation du réseau
▪ Virtualisation du stockage
23
Virtualisation de bureau
▪Définition : est une technologie logicielle qui sépare l' environnement de bureau et les
logiciels d'application associés du périphérique client physique utilisé pour y accéder.
▪ Les applications de bureau et le stockage des données sont déplacés vers un serveur centralisé
pour améliorer l'accès et réduire les coûts.
▪ Le bureau virtuel doit être connecté au serveur via un réseau ou Internet.
▪Il permet la fourniture d'une application s'exécutant dans un environnement isolé , qui ne
nécessite aucune installation locale , intégration ou dépendance sur la plate-forme
informatique sous-jacente.
Demande 1 Demande 2 Demande 3 Demande n
Couche de virtualisation
Système opérateur
26
Matériel
Logiciels / Virtualisation d'applications (…)
▪Pourquoi utilisons-nous la virtualisation d'applications ?
▪ Réduit les coûts de test, quel que soit le facteur de forme , facilitant la migration du système
d'exploitation
▪ Réduit les tests de compatibilité et de régression en fournissant une isolation et en minimisant les
conflits d'applications
▪Exemples :
▪ Microsoft App-V : est un outil que les administrateurs informatiques peuvent utiliser pour
exécuter des applications à distance et les diffuser à l'utilisateur final,
▪ Citrix XenApp : étend les sessions de bureau et les applications Microsoft Remote Desktop 27
Virtualisation du stockage
▪Est le processus de masquage de la complexité sous-jacente des ressources de stockage
physiques et de présentation de la vue logique de ces ressources aux systèmes de calcul.
▪réseaux consiste à partager la même infrastructure physique (débit, ressources CPU, etc.) au
profit de plusieurs réseaux virtuels isolés .
▪Les ressources réseau peuvent être déployées et gérées en tant que services logiques.
30
Virtualisation du réseau
▪ Améliorer l'efficacité du réseau/augmenter la flexibilité
▪ Réduisez les coûts d'investissement et d'exploitation.
▪ Maintenir des normes élevées de sécurité, d'évolutivité,
▪ Gérabilité et disponibilité tout au long de la conception du campus
31
Virtualisation du réseau (...)
▪ Scénarios courants de virtualisation de réseau
▪ La virtualisation de réseau peut également être appliquée au sein de serveurs virtuels pour
créer des réseaux synthétiques entre des machines virtuelles (VM) ; ceci est souvent
appelé "virtualisation du réseau interne".
▪ Un bon exemple de réseau virtuel interne serait VnetworkStack ( Vyatta , Citrix) ou opensolaris 32
Avantages / défis de la
virtualisation
33
Avantages de la virtualisation
▪ Optimisation des ressources et load balancing efficace : répartition des machines virtuelles sur les
machines physiques en fonction des charges respectives ;
▪ La consolidation offre une mutualisation efficace en termes de coût et de temps (par exemple, la
consommation d'électricité, la maintenance physique, la surveillance, le support, la compatibilité
matérielle, etc.)
▪ Installation, sauvegarde, déploiement et migration faciles des machines virtuelles et des applications ;
▪ Diminuer les risques liés au dimensionnement des serveurs lors de la définition de l'architecture d'une
application, l'ajout de ressources devient transparent ;