Cours VM1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 37

Introduction & Motivation Concepts de base de la virtualisation

Introduction à la virtualisation

Mourad Nachaoui

ENSA de Khouribga

February 26, 2024

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Introduction & Motivation


Applications de la virtualisation

Concepts de base de la virtualisation


Ce quoi une machine virtuelle
Terminologie
Hyperviseur
Identifiez un hyperviseur de type 2

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Introduction 1/2

§ L’informatique a connu un développement considérable


au cours des vingt dernières années, devenant quasiment
indispensable pour chacun d’entre nous et encore plus
pour les entreprises.
§ Avec la popularisation d’Internet, le nombre d’utilisateurs
connectés a connu une croissance exponentielle.
§ Cette expansion a entraîné un énorme flux de données qui
ne cesse de croître jour après jour.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Introduction 2/2

§ Par conséquent, il a été impératif de trouver des solutions


pour stocker cette masse gigantesque de données et
concevoir de nouvelles méthodes pour y accéder de
manière simplifiée.
§ Ainsi, au fil des années, la virtualisation et le Cloud
Computing ont émergé comme des solutions pour stocker
d’énormes quantités de données et les rendre accessibles à
tout utilisateur, indépendamment de sa localisation et du
périphérique qu’il utilise.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Une situation concrète 1/2


§ Imaginez-vous membre d’une petite entreprise de
développement informatique comptant environ 30
employés. Chacun de ces employés dispose d’un
ordinateur fonctionnant sous Linux, Mac ou Windows, en
fonction de ses besoins, en plus de quelques smartphones
sous Android.
§ Dans le cadre de vos activités, vous envisagez de déployer
une application de stockage de données sur l’ensemble de
votre parc informatique. Bien que plusieurs applications
puissent répondre aux besoins de votre entreprise, vous
souhaitez d’abord tester leur compatibilité avec les
systèmes d’exploitation Windows, Linux, Mac et Android.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Une situation concrète 2/2


§ Idéalement, vous aimeriez effectuer ces tests directement
sur les machines de l’entreprise. Cependant, étant donné
que toutes les machines sont actuellement utilisées, il serait
inapproprié de monopoliser les appareils de vos collègues
pour effectuer vos tests.
§ Heureusement, il existe des solutions qui peuvent
simplifier cette tâche en vous permettant de réaliser tous
vos tests sur votre propre ordinateur. La virtualisation est
l’une de ces solutions, vous offrant la possibilité de créer
des environnements virtuels sur votre machine, ce qui
vous permet de tester les applications sur différentes
plateformes sans monopoliser les ressources informatiques
de vos collègues.
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Machines vertuelles

Note
Ce cas de figure illustre parfaitement une des situations où l’on
peut avoir besoin de créer ce qu’on appelle des “machines
virtuelles”. Nous verrons par la suite qu’il existe bien d’autres
situations où la virtualisation est pratique, voire indispensable.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Applications de la virtualisation

Les applications de la virtualisation offrent une


multitude de possibilités, notamment :
1. Tester un système d’exploitation sans l’installer sur votre
machine physique ;
2. Vérifier la compatibilité d’une application avec différents
systèmes d’exploitation ;
3. Utiliser une application dans un environnement spécifique
;
4. Exploiter les fonctionnalités spécifiques d’un système
d’exploitation ;
5. Simuler une deuxième machine et effectuer des tests de
communication simples ;
6. Créer un petit réseau composé de plusieurs machines ;
7. Simuler des environnements multi-systèmes d’exploitation
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

8. Optimiser l’utilisation des serveurs physiques et réaliser


des économies

9. Diviser un serveur physique en plusieurs serveurs virtuels

10. Améliorer la disponibilité des systèmes en augmentant


leur tolérance aux pannes ;

11. Transférer des serveurs virtuels sur de nouveaux serveurs


physiques ;

12. Déployer rapidement un serveur virtuel en cas de besoin ;

13. Simplifier les opérations de maintenance.

Machine physique
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

Pour fonctionner, une machine a effectivement besoin de 4


types de ressources principaux :
§ le CPU ;
§ la mémoire (RAM) ;
§ le stockage (disque dur) ;
§ le réseau (optionnel).

Serveur
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

Un serveur est un ordinateur utilisé à distance depuis


différents postes de travail, ou autres serveurs. Il possède des
ressources matérielles comme une machine normale.
Cependant, les ressources sont utilisées par des applications,
non pas de manière directe, mais en s’appuyant sur un système
d’exploitation.

Virtualisation
La virtualisation d’une machine hôte englobe diverses
techniques et outils visant à exécuter plusieurs systèmes
d’exploitation sur une seul machine physique.

Comment une machine virtuelle peut-elle donc


fonctionner sans ressources physiques ?
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

Fondamentalement, la virtualisation repose sur le principe de


partage des ressources de la machine hôte entre les différents
systèmes d’exploitation exploités simultanément. La machine
hôte n’a pas forcément besoin de 100 % de chaque type de
ressource pour fonctionner, elle peut donc en “prêter” ou en
allouer une partie à une ou plusieurs VM.

Machine virtuelle
Les machines virtuelles sont l’élément clé d’une infrastructure
virtuelle. La virtualisation permet d’exécuter plusieurs
machines virtuelles avec des systèmes d’exploitation
hétérogènes et aux applications d’être exécutées en isolation,
côte à côte sur la même machine physique.

En utilisant la virtualisation, vous pouvez déplacer


Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

dynamiquement des ressources où elles sont nécessaires et


déplacer le traitement où il convient. C’est possible parce que
la virtualisation détache le système d’exploitation et ses
applications du matériel sur lequel ils sont exécutés.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Ce quoi une machine virtuelle

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Terminologie

Pour être utile de manière opérationnelle, la virtualisation doit


respecter deux principes fondamentaux :
Le cloisonnement : chaque système d’exploitation a un
fonctionnement indépendant, et ne peut interférer avec les
autres en aucune manière.
La transparence : le fait de fonctionner en mode virtualisé ne
change rien au fonctionnement du système d’exploitation et a
fortiori des applications.
La transparence implique la compatibilité : toutes les
applications peuvent tourner sur un système virtualisé, et leur
fonctionnement n’est en rien modifié.
§ Système hôte -> host
§ l’OS principal de l’ordinateur .
§ Les hôtes fournissent des ressources CPU et mémoire
utilisées par les machines virtuelles Et leur donnent l’accès
au stockage et aux réseaux. Plusieurs machines virtuelles
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

peuvent traiter le même hôte en même temps.


§ Système invité -> guest
§ l’OS installé au sein d’une machine virtuelle
§ Un système d’exploitation installé sur une machine
virtuelle s’appelle un système d’exploitation client.
§ Machine virtuelle -> Virtual Machine - VM
§ un ordinateur virtuel qui utilise un système invité
§ Chaque machine virtuelle possède des périphériques
virtuels qui fournissent la même fonctionnalité que le
matériel physique. Les machines virtuelles obtiennent le
CPU et la mémoire, les cartes vidéo, l’accès au stockage et
la connectivité réseau à partir des hôtes sur lesquels elles
s’exécutent.
§ Ordinateur virtuel aussi appelé
§ Serveur privé virtuel ! Virtual Private Server - VPS
§ ou environnement virtuel ! Virtual Environment - VE
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Découvrez la fonction de l’hyperviseur


Vous avez donc une machine dans une machine. Mais
comment se répartissent-elles les ressources ? Nativement, les
machines (Windows, Linux ou autre) ne sont pas capables de
partager les ressources physiques qu’elles utilisent. C’est là
qu’intervient l’hyperviseur.

Définition
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. C’est une
couche logicielle qui s’insère entre le matériel et les différents
systèmes d’exploitation

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Un schéma de base d’un hôte distinguant le matériel, le


système d’exploitation, et ses applications :

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

L’hyperviseur vient s’insérer entre le matériel et plusieurs


systèmes d’exploitation, de la manière suivante :

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

L’hyperviseur a 2 rôles majeurs :


§ créer des ressources virtuelles propres à chaque VM ;
§ répartir ses propres ressources.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Créer des ressources virtuelles propres à chaque VM


§ Initialement, le processus consiste à allouer des ressources
virtuelles pour chaque machine virtuelle (VM).
§ En effet, les VM ne sont pas directement en
communication avec les ressources de la machine hôte, car
elles fonctionnent dans un environnement isolé, ignorant
leur propre nature virtuelle et leur hébergement sur un
hôte physique.
§ Ainsi, chaque VM accède à ses propres ressources
virtuelles, telles que son disque dur, sa mémoire, son
processeur et ses périphériques, simulant ainsi le
fonctionnement d’une machine physique.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Répartir ses propres ressources


§ Dans une seconde phase, l’hyperviseur assume le rôle de
chef d’orchestre en distribuant de manière dynamique et
contrôlée les ressources nécessaires à chaque machine
virtuelle (VM), en fonction de ses besoins et des priorités
définies, tout en respectant des limites préétablies.
§ Cette analogie peut être comparée au fonctionnement d’un
organisme vivant, tel qu’un arbre, qui capte des ressources
telles que l’eau et les nutriments du sol, puis les redistribue
vers ses différentes branches en fonction de leurs besoins
individuels.
§ De la même manière, l’hyperviseur gère les ressources
disponibles pour assurer un fonctionnement optimal et
équilibré de toutes les VM hébergées sur la même
infrastructure physique.
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Distinguez les hyperviseurs selon vos besoins


§ Il existe deux grandes catégories d’hyperviseurs qui
conviennent à des utilisations très distinctes.
§ Prenons l’exemple de vos déplacements entre L’ENSAK et
l’FPK : vous auriez le choix entre divers moyens de
transport tels que le vélo, la voiture, ou le bus,
correspondant à ce qu’on appelle les hyperviseurs de
type 2.
§ Ces derniers sont particulièrement adaptés aux petites
infrastructures. Typiquement, les hyperviseurs de type 2
sont préférés lorsque vous disposez d’une seule machine
et que vous souhaitez réaliser des tests multiplateformes,
que ce soit au niveau des applications, des systèmes
d’exploitation ou de la communication.
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Hyperviseur de Type 2
Un hyperviseur de Type 2 est un logiciel qui s’exécute au sein
d’un système d’exploitation hôte déjà en place. En
conséquence, un système d’exploitation invité fonctionne à un
niveau d’abstraction supplémentaire, soit au troisième niveau
au-dessus du matériel. Les systèmes d’exploitation invités
fonctionnent sans conscience de leur état de virtualisation, ce
qui signifie qu’ils n’ont pas besoin d’être spécifiquement
adaptés à cet environnement.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Parmi les exemples d’hyperviseurs de Type 2, on peut citer


VMware Workstation, VMware Fusion, l’hyperviseur open
source QEMU, les produits Microsoft Virtual PC et Virtual
Server, VirtualBox d’Oracle, ainsi que Parallels Workstation de
SWsoft et Parallels Desktop.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Hyperviseurs de type 1

§ Maintenant, si vous envisagez un voyage entre Marrakech


et Montréal, l’avion serait votre choix privilégié, similaire à
ce qu’offrent les hyperviseurs de type 1.
§ Ces derniers s’avèrent particulièrement pertinents pour
des architectures réseau d’entreprise de grande envergure,
où l’optimisation des coûts et de la maintenance est
cruciale, tout en renforçant la résilience face aux pannes.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Hyperviseur de Type 1

§ Un hyperviseur de Type 1, également appelé natif, est un


logiciel qui s’exécute directement sur la plateforme
matérielle, transformant ainsi cette dernière en un
contrôleur de système d’exploitation.
§ Cela permet l’exécution d’un système d’exploitation
secondaire au-dessus du matériel. L’hyperviseur de type 1
est conçu comme un noyau hôte léger et optimisé,
initialement destiné à exécuter des noyaux de systèmes
d’exploitation invités adaptés et optimisés pour cette
architecture spécifique.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

§ Ces systèmes invités ont une "conscience" de leur état de


virtualisation. Sur les processeurs prenant en charge les
instructions de virtualisation matérielle telles que AMD-V
et Intel VT, les systèmes d’exploitation invités n’ont plus
besoin d’être modifiés pour être exécutés dans un
hyperviseur de type 1.
§ Parmi les exemples d’hyperviseurs de Type 1 plus récents,
on trouve Xen, Oracle VM et ESX Server de VMware.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Hyperviseur

À noter
En ce qui concerne les hyperviseurs, il en va de même : ils
répondent à deux utilisations distinctes et ne peuvent donc pas
être échangés l’un contre l’autre. Il est donc crucial de garder à
l’esprit que ce n’est pas vous qui choisissez le type
d’hyperviseur, mais plutôt vos besoins spécifiques qui le
déterminent.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Identifiez un hyperviseur de type 2

§ L’hyperviseur de type 2, également connu sous le nom


d’hyperviseur hébergé, est le plus simple à installer.
§ Il suffit de l’installer comme n’importe quelle autre
application sur votre système d’exploitation. Une fois
installé, il vous permet de créer et de gérer des machines
virtuelles indépendamment du système d’exploitation de
l’hôte.
§ Contrairement à l’hyperviseur de type 1, qui a un accès
direct au matériel, l’hyperviseur de type 2 fonctionne au
sein du système d’exploitation hôte comme une
application supplémentaire.
§ Cela signifie qu’il partage les ressources de la machine
avec d’autres applications et processus en cours
d’exécution sur le système hôte.
Mourad Nachaoui ENSA de Khouribga
Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Identifiez un hyperviseur de type 2

§ Par conséquent, l’hyperviseur de type 2 n’a pas de priorité


sur les ressources de l’hôte. Si une application gourmande
en ressources, comme une application de traitement de
données volumineuses, monopolise une grande partie des
ressources de la machine hôte, cela peut avoir un impact
sur les performances des machines virtuelles gérées par
l’hyperviseur de type 2.
§ Par exemple, si cette application utilise 95 % des ressources
disponibles, l’hyperviseur n’aura que 5 % des ressources
restantes pour faire fonctionner l’ensemble de ses
machines virtuelles, ce qui peut entraîner des
ralentissements ou des interruptions de service.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Identifiez un hyperviseur de type 2

Pourquoi moins de 5 % et pas 5 % ?


§ Votre système d’exploitation, en tant que pilier central de
votre système, nécessite également des ressources pour
fonctionner correctement.
§ Ainsi, il accapare en premier lieu une partie des ressources
disponibles pour alimenter les processus systèmes
essentiels à son bon fonctionnement.
§ Ensuite, les applications en cours d’exécution sur votre
système obtiennent leur part de ressources, suivies par
l’hyperviseur qui gère les machines virtuelles.
§ Toutefois, chaque machine virtuelle est soumise à des
limitations de ressources définies initialement par
l’hyperviseur.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Identifiez un hyperviseur de type 2

§ Ainsi, aucune VM ne peut dépasser ces limites prédéfinies,


ce qui garantit que l’OS hôte ne sera pas ralenti par les
machines virtuelles, tant qu’elles ont été configurées de
manière raisonnable.
§ Pour illustrer cela, on peut comparer le système à un arbre,
où l’OS joue le rôle du tronc principal qui distribue les
ressources à toutes les branches, représentant les
applications.
§ Bien que l’OS alimente également les applications, il
réserve également une part de ressources pour son propre
fonctionnement, assurant ainsi son bon fonctionnement et
évitant les ralentissements induits par les applications ou
les machines virtuelles.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation
Introduction & Motivation Concepts de base de la virtualisation

Identifiez un hyperviseur de type 2

Note
Du fait d’être installés sur un OS hôte, ces hyperviseurs ont des
performances limitées et hébergent des VM qui peuvent par
conséquent être instables.
Ces hyperviseurs ne sont pas faits pour créer des VM de
production, mais uniquement pour du développement, des
tests et de l’usage personnel.

Mourad Nachaoui ENSA de Khouribga


Introduction à la virtualisation

Vous aimerez peut-être aussi