Architecture technique des hyperviseurs
La virtualisation peut être décrite simplement grâce au schéma suivant :
En effet, le but premier est de faire fonctionner plusieurs systèmes d’exploitations sur le même matériel physique.
Ceci peut avoir plusieurs avantages tels que :
- économie d’énergie car une seule alimentation est utilisée
- le système est moins dépendant du matériel : matériel générique
- le système est donc isolé du matériel ce qui améliore la tolérance aux pannes et offre un meilleur contrôle des ressources
- la machine virtuelle étant composée de fichiers, sa sauvegarde ou son déplacement se résume à une copie de fichiers.
Architecture de l'hyperviseur VMware vSphere
ESX
Ci-dessous vous est présenté un schéma détaillant l'architecture ESX ainsi qu'une explication détaillée de chaque partie :
Nous distinguons tout d'abord le matériel physique qui sera utilisé comme ressource pour le système de virtualisation.
Il y a ensuite la partie appelée "VMkernel". Ce dernier est conçu pour gérer et contrôler les ressources physiques du matériel.
Voici un bref descriptif de ce qui compose le VMkernel :
- Il dispose des ordonnanceurs pour le processeur, la mémoire et les accès disques
- Les drivers sont génériques et inclus dans l'hyperviseur
- On y trouve le VMFS (VMware File System): système de fichier distribué et optimisé pour les gros fichiers
Virtual Machine Monitor
Voici la partie concernant Virtual Mahine Monitor :
Nous allons donc énoncer ci-après les propriétés de cette partie du noyau :
- La partie VMM est responsable de la virtualisation des processeurs
- C'est VMM qui prend le contrôle de la machine virtuelle dès le démarrage
- En somme, cela permet d'executer plusieurs environnements identiques sur une seule machine
Ressource manager
Voici la partie sur le gestionnaire de ressource :
Dont figure, ci-dessous, les responsabilités au sein du VMkernel :
- Il a pour charge de partitionner les ressources physiques entre les différentes machines
- Cela offre la possibilité aux administrateurs de spécifier des réservations et des limites pour les machines virtuelles
- Enfin, c'est ce ressource manager qui ordonance le temps d'accès au processeur
Periodic Load Balancer
Voici la partie sur l'équilibrage de charge périodique :
La gestion du processeur est faite à deux endroits.
En effet, le VMkernel ordonance les processeurs indépendamment tandis que le Periodic Load Balancer prévaut et décide sur quel processeur sera réellement ordonancé la VM.
Sa fonction principale est de garantir une bonne répartition du processeur entre les machines virtuelles. Pour cela, il vérifie toutes les 20 millisecondes l'utilisation du processeur et migre les machines virtuelles en conséquence pour garantir cette bonne répartition.
Virtual SMP
Parlons maintenant du Virtual SMP (Symetric Mutli-Proccessing) :
Virtual SMP permet à une machine virtuelle d’utiliser jusqu’à quatre processeurs physiques en même temps.
Grâce à cela il devient possible de virtualiser les applications gourmandes en processeur (BDD, serveurs de messagerie).
Avant l'implémentation de virtual SMP, un seul processeur était alloué à plusieurs machines.
Service console
Et enfin une brève description des possibilités offertes par le service console:
- Il offre l'accès en ligne de commande à l’ESX
- Il offre également un accès web à l’ESX
- Enfin, il permet depuis cet accès distant de manager et monitorer voire même de créer des machines virtuelles.
Architecture de l'hyperviseur Microsoft Hyper-v R2
Hyperviseur
Ci-dessous vous est présenté un schéma détaillant l'architecture complète de l'hyperviseur ainsi qu'une explication détaillée de chaque partie :
Commençons par la couche la plus basse appelée "Designed for windows server hardware". Il faut comprendre par là que seul le matériel supporté sera uniquement celui précisé explicitement par Microsoft.
Ensuite, intéressons nous de plus près à l'hyperviseur. C'est donc lui qui permet de faire la relation entre le matériel physique et le virtuel.
De plus, il maintient la separation entre partition parente et enfant que je vais décrire par la suite.
Partition parente
Cette partition est la base de l'installation, elle doit être installée obligatoirement en Windows 2008. De plus, c'est la partition parente qui offre les services de virtualisation aux partitions enfants.
La description des partitions est réalisée en deux parties : le mode noyau et le mode utilisateur.
Commençons par le mode noyau :
- Il contient le VSP (Virtualization services provider) qui permet l'émulation du matériel et de gérer les demandes d'accès à ce dernier.
- Les drivers natifs sont également présent et assurent la connectivité avec le matériel physique
En ce qui concerne le mode utilisateur, voici une explication de deux points importants :
- VM Service: cette partie concerne le management des machines virtuelles pour toutes les partitions enfants
- VM Worker Process : partie qui contient l'ensemble de la configuration des partitions enfants
Partition enfant
La partition enfant, contrairement à la partition parente, n'est pas unique. Il y en a une par machine virtuelle hébergée et gérée par la partition parente.
L'application, le système virtuel mis en place, tourne dans le mode utilisateur de la partition enfant.
Pour le mode noyau, deux points sont à détailler :
- Les partitions enfants n’ont pas un accès direct au matériel
- Elles utilisent donc le VSC (Virtualization service client) pour rediriger les demandes d’accès au matériel vers le VSP à travers le VMBUS
Comparaison
Différence entre hyperviseurs
Voici un schéma présentant les différences de fonctionnement entre les hyperviseurs des deux concurrents :
Nous avons une comparaison entre deux types d'hyperviseurs qui ont un fonctionnement quelque peu différent en particulier sur la gestion de drivers:
- Le premier, dit MONOLITIC, est celui utilisé par VMware. Il a la particularité de contenir son propre modèle de driver
- Le second, utilisé donc par microsoft, est dit MICROKERNELIZED. Dans ce modèle, les drivers sont dans le système d'exploitation invité.
Bilan
Pour résumer :
- Chez Vmware, ils sont embarqués dans l’hyperviseur. L’éditeur s’efforce donc de garantir leur parfaite compatibilité, il faut donc toujours vérifier que le serveur et les périphériques (stockage, réseau) sont certifiés et validés pour Vmware.
- Hyper-V est un composant du système d’exploitation Windows Server. À ce titre, il supporte l’ensemble des matériels et des pilotes actuellement pris en charge par Windows.
0 commentaires:
Enregistrer un commentaire