Intégration de Hyper-V dans « Windows 8 »

Conception de Windows 8

Vision en coulisses de l'équipe d'ingénierie Windows

Intégration de Hyper-V dans « Windows 8 »

Rate This
  • Comments 5

Dans ce billet, nous allons parler de la prise en charge de la virtualisation sur le système d'exploitation « client » de Windows. Commercialisée à l'origine pour Windows Server où cette technologie a rencontré un grand succès, nous voulions intégrer la virtualisation dans un certain nombre de scénarios pour les professionnels qui utilisent Windows. Les deux scénarios les plus fréquents sur lesquels nous nous sommes concentrés concernent les développeurs de logiciels qui travaillent sur plusieurs plateformes, clients et serveurs, et les professionnels de l'informatique qui cherchent à gérer des clients et des serveurs virtualisés de manière transparente. Mathew John, gestionnaire de projet au sein de notre équipe Hyper-V, est l'auteur de ce billet. Il est à noter que, comme c'est le cas avec toutes les fonctionnalités, nous parlons de l'aspect ingénierie du travail et non du conditionnement final, qui fera l'objet de décisions bien plus tard au cours du projet. –Steven 
PS : nous n'avions pas prévu d'écrire autant de billets d'un seul coup et nous reviendrons à un rythme moins soutenu (j'espère ne pas vous décevoir si vous vous étiez habitué à cette cadence). Nous nous préparons actuellement à plein temps pour la conférence BUILD !!

Que vous soyez développeur de logiciels, administrateur informatique ou simplement passionné, vous êtes nombreux à avoir besoin d'exécuter plusieurs systèmes d'exploitation, généralement sur plusieurs ordinateurs différents. Nous n'avons pas tous accès à des pièces spéciales capables d'héberger tous ces ordinateurs et c'est là que la virtualisation permet de gagner du temps et de l'espace.

Au cours de la conception de Windows 8, nos efforts se sont concentrés sur l'intégration de Hyper-V, la technologie de virtualisation des ordinateurs intégrée aux deux dernières versions de Windows Server, afin qu'elle fonctionne également sur le système d'exploitation client. En bref, Hyper-V vous permet d'exécuter plusieurs systèmes d'exploitation x86 32 bits ou 64 bits en même temps sur le même ordinateur. Au lieu de fonctionner directement avec le matériel de l'ordinateur, les systèmes d'exploitation s'exécutent au sein d'un ordinateur virtuel.

Hyper-V permet aux développeurs de gérer facilement plusieurs environnements de test et de passer rapidement et simplement d'un environnement à un autre sans coût matériel supplémentaire. Par exemple, nous vous proposons des ordinateurs virtuels préconfigurés qui contiennent des versions antérieures d'Internet Explorer pour aider les développeurs Web. L'administrateur informatique bénéficie de l'avantage supplémentaire de la parité des ordinateurs virtuels et d'une expérience de gestion commune dans Hyper-V sous Windows Server et Windows Client. Nous savons également que vous êtes nombreux à utiliser la virtualisation pour essayer de nouvelles choses sans risquer de modifier votre PC.

Présentation de Hyper-V

Hyper-V requiert un système de 64 bits doté de SLAT (Second Level Address Translation). SLAT est une fonctionnalité présente dans la génération actuelle des processeurs 64 bits d'Intel et AMD. Vous devrez également disposer d'une version 64 bits de Windows 8 et d'au moins 4 Go de RAM. Hyper-V prend en charge la création des systèmes d'exploitation 32 bits et 64 bits sur les ordinateurs virtuels.

La mémoire dynamique de Hyper-V permet d'allouer et de libérer dynamiquement la mémoire requise par l'ordinateur virtuel (vous spécifiez un minimum et un maximum) et de partager la mémoire non utilisée entre les ordinateurs virtuels. Vous pouvez exécuter 3 ou 4 ordinateurs virtuels sur un ordinateur doté de 4 Go de RAM, mais vous aurez besoin de plus de RAM pour 5 ordinateurs virtuels ou plus. À l'opposé, vous pouvez également créer des ordinateurs virtuels avec 32 processeurs et 512 Go de RAM.

Concernant l'expérience utilisateur avec les ordinateurs virtuels, Windows propose deux façons d'interagir avec l'ordinateur virtuel : la console d'ordinateur virtuel et la connexion Bureau à distance.

La console d'ordinateur virtuel (également connue sous le nom de VMConnect) est une vue sous forme de console de l'ordinateur virtuel. Elle fournit une vue sur un seul écran de l'ordinateur virtuel, avec une résolution allant jusqu'à 1 600 x 1 200 en couleur 32 bits. Cette console vous permet de visionner le processus de démarrage de l'ordinateur virtuel.

Pour une utilisation plus complète, vous pouvez vous connecter à l'ordinateur virtuel à l'aide d'une connexion Bureau à distance. Avec cette connexion, l'ordinateur virtuel bénéficie des fonctionnalités présentes sur votre PC physique. Par exemple, si vous possédez plusieurs écrans, l'ordinateur virtuel peut afficher ses graphiques sur tous ces écrans. De même, si vous possédez une interface tactile multipoint sur votre PC, l'ordinateur virtuel peut utiliser cette interface pour vous offrir une expérience tactile. L'ordinateur virtuel bénéficie par ailleurs de fonctionnalités multimédias par le biais des haut-parleurs et du microphone du système physique. Le système d'exploitation racine (c'est-à-dire le système d'exploitation Windows principal qui gère les ordinateurs virtuels) peut également partager son Presse-papiers et ses dossiers avec les ordinateurs virtuels. Enfin, avec la connexion Bureau à distance, vous pouvez également relier n'importe quel périphérique USB directement à l'ordinateur virtuel.

Pour le stockage,vous pouvez ajouter plusieurs disques durs aux contrôleurs IDE ou SCSI disponibles sur l'ordinateur virtuel. Vous pouvez utiliser des disques durs virtuels (fichiers .VHD ou .VHDX) ou des disques réels que vous transmettez directement à l'ordinateur virtuel. Les disques durs virtuels peuvent également se trouver sur un serveur de fichiers à distance, ce qui facilite la gestion et le partage d'un ensemble commun de disques durs virtuels prédéfinis au sein d'une équipe.

La fonctionnalité de « déplacement de stockage dynamique » de Hyper-V donne à vos ordinateurs virtuels une certaine indépendance par rapport au stockage sous-jacent. Vous pouvez ainsi transférer l'espace de stockage de l'ordinateur virtuel d'un lecteur local vers un autre, vers une clé USB ou vers un partage de fichiers à distance sans avoir à redémarrer votre ordinateur virtuel. J'ai trouvé cette fonctionnalité assez pratique pour les déploiements rapides : lorsque j'ai rapidement besoin d'un ordinateur virtuel, je démarre un de ceux de la bibliothèque des ordinateurs virtuels sur un partage de fichiers, puis je déplace l'espace de stockage de l'ordinateur virtuel vers mon lecteur local.

La possibilité de réaliser des captures instantanées d'un ordinateur virtuel alors qu'il est en cours d'exécution est également une fonctionnalité très appréciée de Hyper-V. Une capture instantanée enregistre tout ce qui concerne l'ordinateur virtuel. Elle vous permet de revenir à un point antérieur dans la vue d'un ordinateur virtuel, ce qui est très précieux pour résoudre des problèmes épineux. Dans le même temps, les ordinateurs virtuels Hyper-V bénéficient de toute la souplesse de Windows. Windows Update peut appliquer des correctifs aux composants Hyper-V, ce qui vous évite de configurer des processus de maintenance supplémentaires. En outre, Windows dispose des mêmes fonctionnalités inhérentes lorsque Hyper-V est installé.

Cela dit, l'utilisation de la virtualisation a ses limites. Les fonctionnalités ou les applications qui dépendent d'un matériel spécifique ne fonctionnent pas bien sur un ordinateur virtuel. Par exemple, Windows BitLocker et Measured Boot, qui s'appuient sur le module de plateforme sécurisée (TPM), risquent de ne pas fonctionner correctement sur un ordinateur virtuel et les jeux ou applications qui nécessitent un traitement avec GPU (sans fournir de logiciel de secours) risquent également de ne pas fonctionner correctement. De plus, les applications qui s'appuient sur des sous-compteurs 10m, c'est-à-dire des applications haute précision sensibles à la notion de latence, telles que des applications de mixage de musique, etc. peuvent rencontrer des problèmes en cas d'exécution sur un ordinateur virtuel. De plus, le système d'exploitation racine s'exécute par dessus la couche de virtualisation Hyper-V, mais il bénéficie d'un accès direct à tout le matériel. Cela explique pourquoi les applications dotées de configurations matérielles particulières continuent à s'exécuter sans entrave sur le système d'exploitation racine, mais les applications haute précision sensibles à la notion de latence peuvent toujours rencontrer des problèmes d'exécution sur le système d'exploitation racine.

Il est à noter les systèmes d'exploitation que vous utilisez sur les ordinateurs virtuels doivent toujours être dotés d'une licence.

Voici un rapide aperçu du fonctionnement de Hyper-V sous Windows 8.


Téléchargez cette vidéo pour la regarder sur votre lecteur habituel :
MP4 haute qualité | MP4 faible qualité

Prise en charge de la communication des ordinateurs virtuels via des cartes réseau sans fil

Comme vous l'avez constaté dans la démo, la création d'un commutateur réseau externe est aussi simple que sélectionner une carte réseau physique dans une liste déroulante et de cliquer sur OK. Cela a déjà très bien fonctionné pour Windows Server Hyper-V, mais pour obtenir des résultats similaires dans Windows 8, l'opération devait fonctionner avec des cartes réseau sans fil, ce qui constituait un nouveau défi.

Le problème

Le commutateur réseau dans Hyper-V est un « commutateur à 2 couches », ce qui signifie qu'il commute (c'est-à-dire détermine le chemin qu'un certain paquet Ethernet suit) à l'aide des adresses MAC qui identifient de manière unique chaque carte réseau (physique et virtuelle). L'adresse MAC des ordinateurs source et de destination sont envoyées à chaque paquet Ethernet et un commutateur à 2 couches l'utilise pour déterminer où envoyer le paquet entrant. Un commutateur virtuel externe est connecté au monde externe via la carte réseau physique. Les paquets Ethernet d'un ordinateur virtuel destinés à un ordinateur du monde externe sont envoyés via cette carte réseau physique. Cela signifie que la carte réseau physique doit être capable de transporter le trafic provenant de tous les ordinateurs virtuels connectés à ce commutateur, ce qui implique donc que les paquets qui transitent par la carte réseau physique contiendront plusieurs adresses MAC (une pour la carte réseau virtuelle de chaque ordinateur virtuel). Cela est pris en charge sur les cartes réseau physiques câblées (en plaçant la carte réseau en mode de proximité), mais pas sur les cartes réseau sans fil, car le canal sans fil établi par la carte réseau WiFi et son point d'accès autorise uniquement les paquets Ethernet avec l'adresse MAC de la carte réseau WiFi et rien d'autre. En d'autres termes, Hyper-V ne pourrait pas utiliser les cartes réseau WiFi pour un commutateur externe si nous continuions à utiliser l'architecture actuelle des commutateurs virtuels.

Diagramme montrant une partition racine et un ordinateur virtuel hébergé sur l'ordinateur 1, les deux connectés à l'ordinateur 2 via (dans cet ordre) : une carte réseau virtuelle sur la partition racine (MAC: A), un commutateur externe virtuel, une carte réseau câblée physique (MAC: Ph1), une carte réseau physique sur l'ordinateur 2 (MAC: Ph2). De plus, la carte réseau virtuelle sur l'ordinateur virtuel (MAC: B), est connectée à un commutateur externe virtuel, une carte réseau câblée physique (MAC: Ph1), une carte réseau physique sur l'ordinateur 2 (MAC: Ph2).Figure 1 : mise en réseau entre un ordinateur virtuel et un ordinateur virtuel à l'aide d'une connexion câblée

La solution

Pour contourner cette limite, nous avons utilisé la solution de pontage de Microsoft, qui implémente le traitement proxy (pour IPv4) et le traitement proxy de découverte de voisin (pour IPv6) pour remplacer l'adresse MAC de la carte réseau virtuelle par l'adresse MAC de la carte WiFi pour les paquets sortants. Le pont assure une correspondance interne entre l'adresse IP de la carte virtuelle et son adresse MAC pour que les paquets provenant du monde externe soient envoyés à la carte virtuelle appropriée.

Hyper-V intègre le pont dans la création du commutateur virtuel de sorte que lorsque vous créez un commutateur externe virtuel à l'aide d'une carte WiFi, Hyper-V effectue les opérations suivantes :

  1. Création d'un pont de carte unique connecté à la carte WiFi
  2. Création du commutateur virtuel externe
  3. Liaison du commutateur virtuel externe pour utiliser le pont, au lieu de la carte WiFi directement

Dans ce modèle, la commutation Ethernet se produit dans le commutateur virtuel et la conversion MAC a lieu dans le pont. Pour l'utilisateur final qui crée un réseau externe, le workflow est le même que vous sélectionniez une carte réseau câblée ou sans fil.

Diagramme montrant une partition racine et un ordinateur virtuel hébergé sur l'ordinateur 1, les deux connectés à l'ordinateur 2 via (dans cet ordre) : une carte réseau virtuelle sur la partition racine (MAC: A), un commutateur externe virtuel, un pont Microsoft (conversion MAC), une carte réseau WiFi (MAC: Ph1), une carte réseau physique (MAC: Ph2) sur l'ordinateur 2. De plus, la carte réseau virtuelle sur l'ordinateur virtuel (MAC: B) est connectée à un commutateur externe virtuel, à un pont Microsoft (conversion MAC), à une carte réseau WiFi (MAC: Ph1), à une carte réseau physique (MAC: Ph2) sur l'ordinateur 2.
Figure 2 : mise en réseau entre un ordinateur virtuel et un ordinateur virtuel à l'aide d'une connexion WiFi

Pour conclure, en intégrant Hyper-V de Windows Server dans le client Windows, nous avons pu fournir une technologie de virtualisation robuste conçue pour répondre aux besoins en flexibilité, sécurité, fiabilité et performances de la plupart des centres de données. Avec Hyper-V, les développeurs et les professionnels de l'informatique peuvent maintenant créer un environnement de test et d'utilisation plus efficace et rentable sur différents ordinateurs.

--Mathew John

  • Loading...
Leave a Comment
  • Please add 5 and 7 and type the answer here:
  • Post