Comment travailler avec les fichiers VHD et VHDX Hyper-V : notions de base essentielles
& La version de Windows Server 2012 a été très bien accueillie en raison de l’introduction de plusieurs fonctionnalités de virtualisation, notamment le nouveau format de fichier VHDX. Le format VHDX est essentiellement le successeur du format VHD, mais avec des capacités plus avancées. Cependant, vous pouvez toujours créer et gérer des fichiers VHD dans votre environnement Hyper-V. Découvrons ensemble les différences entre les fichiers Hyper-V VHD et VHDX, leurs avantages et leurs utilisations possibles.
À propos des fichiers Hyper-V VHD et VHDX
Les disques virtuels créés dans l’environnement Hyper-V peuvent être stockés sous forme de fichiers au format VHD ou VHDX sur un disque physique. Les disques durs virtuels constituent une alternative aux disques durs physiques ; ils fonctionnent comme les disques durs d’une machine virtuelle (VM). Les disques virtuels peuvent contenir un système de fichiers natif, des partitions de disque, des secteurs et des dossiers. Ils peuvent effectuer des opérations standard sur les disques et les fichiers. Chaque VM doit disposer d’au moins un disque dur virtuel pouvant être utilisé comme stockage pour les données de la VM.
Les versions antérieures de Windows ne prenaient en charge qu’un seul format de fichier pour les disques virtuels : VHD. En raison des exigences technologiques croissantes, Windows 2012 a introduit le format de fichier VHDX, qui a considérablement amélioré la capacité de stockage, renforcé les performances sur les disques à grands secteurs et assuré des niveaux plus élevés de protection des données.
Les fichiers Hyper-V VHD et VHDX peuvent être de différents types :
- Fixe. L’espace pour le disque virtuel est attribué lors de la création du fichier VHD. Le fichier du disque dur virtuel a la même taille que le disque dur virtuel. Sa taille reste constante, indépendamment des données ajoutées ou supprimées.
- Expansion dynamique. L’espace pour le disque virtuel est attribué à la demande. Le disque dur virtuel dispose d’un espace de stockage physique spécifique qui peut être utilisé, mais l’espace est alloué au fur et à mesure des besoins. Ainsi, la taille du fichier VHD ou VHDX augmente lorsque de nouvelles données sont ajoutées.
- Différenciation. Ce type de disque est utilisé pour identifier, stocker, gérer et rétablir les modifications apportées à un autre disque virtuel ou au disque parent.
Différences entre les fichiers Hyper-V VHD et VHDX
Pour mieux comprendre le fonctionnement des fichiers Hyper-V VHD et VHDX, examinons les différences entre ces formats de fichiers. Cela nous permettra de comprendre comment chacun d’entre eux peut améliorer les performances des disques virtuels. Le tableau suivant compare les deux formats :
| VHD | VHDX |
| Format de fichier de base pris en charge par Windows, Citrix et Oracle | Format de fichier avancé pris en charge par Windows |
| Capacité de stockage maximale de 2 To | Capacité de stockage maximale de 64 To |
| Les fichiers VHD offrent moins de protection contre la corruption des données que leurs homologues VHDX | Les fichiers VHDX offrent une protection robuste contre la corruption des données en conservant les métadonnées |
| La prise en charge de la prise en charge des métadonnées personnalisées n’est pas fournie | Les métadonnées personnalisées sont prises en charge et peuvent être stockées |
| Pris en charge par Windows Server 2008, 2008 R2, 2012 et 2012 R2 | Prise en charge par Windows 2012 et versions ultérieures |
| Pas de redimensionnement en direct | Redimensionnement en direct disponible |
| Taille de secteur logique de 512 octets | Taille de secteur logique de 4 Ko |
| Problèmes d’alignement des données | Meilleur alignement des données |
| Le rognage n’est pas pris en charge | Le rognage est pris en charge |
Comme vous pouvez le constater, le nouveau format de fichier Hyper-V VHDX comprend plusieurs fonctionnalités qui ont considérablement amélioré son utilité. Par exemple, le rognage vous permet d’identifier les blocs de données qui ne sont plus utilisés et qui peuvent être supprimés, ce qui améliore l’optimisation du stockage et les performances globales. Une autre fonctionnalité introduite avec le nouveau format de fichier Hyper-V VHDX est le VHDX partagé, qui permet aux VMs d’un même cluster invité d’utiliser un fichier VHDX comme stockage partagé. De plus, les fichiers Hyper VHDX vous permettent de redimensionner (réduire ou agrandir) les disques virtuels à la demande, pendant que la machine virtuelle est encore en cours d’exécution, ce qui permet de gagner beaucoup de temps et de réduire les frais généraux. Enfin, grâce à un alignement amélioré des données, les fichiers Hyper-V VHDX peuvent considérablement améliorer les opérations d’E/S. En revanche, les disques physiques à grands secteurs sont sujets à une dégradation des performances.
Même si le format VHDX est une version plus avancée du format VHD, il existe encore certains cas d’utilisation où l’utilisation du format VHD est préférable. Par exemple, les fichiers Hyper-V VHDX ne sont pas compatibles avec les versions antérieures de Windows Server. Par conséquent, si vous exécutez des environnements virtuels avec des systèmes d’exploitation invités mixtes et que vous devez déplacer des VMs entre différents hôtes, le format de fichier VHD serait le choix optimal, car il est pris en charge par un plus grand nombre de systèmes d’exploitation.
Comment utiliser les fichiers Hyper-V VHD et VHDX dans PowerShell
Maintenant que vous savez ce que sont les fichiers Hyper-V VHD et VHDX et quels avantages ils peuvent offrir, vous êtes prêt à créer et à configurer vos disques durs virtuels. Pour cela, vous pouvez utiliser Hyper-V Manager ou PowerShell en mode Administrateur. Dans cet article de blog, nous décrivons comment gérer les opérations sur les fichiers Hyper-V VHD et VHDX dans PowerShell. Il s’agit de la meilleure approche, car PowerShell offre plus d’options pour configurer les fichiers Hyper-V VHD et VHDX. Vous pouvez créer, convertir, fusionner ou enlever des disques rapidement et facilement en exécutant des scripts PowerShell.
Créer des fichiers Hyper-V VHD et VHDX
Pour créer un nouveau disque dur virtuel au format VHD ou VHDX, ouvrez PowerShell en tant qu’administrateur et exécutez la cmdlet New-VHD . L’exemple suivant vous montre comment créer un disque dur virtuel de type dynamique à l’emplacement spécifié, avec une taille de 10 Go, une taille de bloc de 128 Mo et une taille de secteur logique de 4 Ko. Notez que c’est l’extension du fichier (.vhd ou .vhdx) qui détermine le format du fichier ; dans ce cas, un fichier VHDX est créé.
New-VHD -Path 'C:Virtual DisksDemoDisk.vhdx' -BlockSizeBytes 128MB -LogicalSectorSize 4KB -SizeBytes 10GB -Dynamic
Le disque dur virtuel est maintenant créé et les informations suivantes à propos du disque virtuel s’affichent dans la fenêtre PowerShell.

Ajouter des fichiers Hyper-V VHD et VHDX
Avec la cmdlet Add-VMHardDiskDrive , vous pouvez ajouter un disque dur virtuel à une machine virtuelle spécifique. Dans l’exemple suivant, le disque dur virtuel DemoDisk.vhdx situé au chemin d’accès spécifié est attaché à la machine virtuelle nommée DemoVM. Le contrôleur SCSI, le numéro de contrôleur 0 et l’emplacement du contrôleur 1 sont également attribués au disque virtuel.
Add-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1 -Path 'C:Virtual DisksDemoDisk.vhdx'
Enlever les fichiers Hyper-V VHD et VHDX
La commande Remove-VMHardDiskDrive permet de supprimer un disque dur virtuel d’une machine virtuelle. Pour illustrer le fonctionnement de cette applet de commande, voici comment supprimer le disque créé ci-dessus :
Remove-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1
À l’aide de ces applets de commande, vous pouvez facilement créer et supprimer des disques virtuels avec les paramètres requis, puis les attacher à des VMs spécifiques.
Convertir des fichiers VHD et VHDX Hyper-V
Comme mentionné ci-dessus, les fichiers VHDX offrent de nombreux avantages par rapport à leurs prédécesseurs VHD. Ainsi, dans de nombreux cas, il est conseillé de convertir tous les fichiers VHD au format VHDX. Pour mettre à niveau les fichiers VHD Hyper-V vers le format VHDX, il suffit d’exécuter la cmdlet Convert-VHD , qui vous permet de modifier le format du fichier tout en conservant le contenu du disque dur virtuel source. Les données du disque dur virtuel source sont copiées sur un nouveau disque au format requis. L’opération doit être effectuée hors ligne ; il est recommandé de détacher le disque dur virtuel. L’exemple ci-dessous montre la cmdlet qui permet de convertir des fichiers VHD Hyper-V en VHDX :
Convert-VHD -Path ‘C:New Virtual DisksFixed Disk.vhd’ -DestinationPath ‘C:New Virtual DisksFixed Disk.vhdx’
Rappelez-vous toutefois que les fichiers VHDX ne sont compatibles qu’avec Windows Server 2012 et versions ultérieures. Vous devrez donc peut-être convertir les fichiers VHDX Hyper-V en VHD. Dans ce cas, vous pouvez utiliser la même cmdlet Convert-VHD , mais dans l’ordre inverse. N’oubliez pas que le disque dur virtuel doit être détaché avant d’effectuer l’opération.
Convert-VHD -Path ‘C:Virtual DisksDemoDisk.vhdx’ ‘C:Virtual DisksDemoDisk.vhd’
Fusionner des fichiers VHD et VHDX Hyper-V
Comme mentionné ci-dessus, les disques de différenciation sont utilisés pour stocker et rétablir les modifications apportées à un autre VHD ou à un système d’exploitation invité. Chaque disque de différence suit et stocke les modifications apportées à un disque virtuel associé. Dans ce cas, le disque de différence est appelé « disque enfant » et le disque dur virtuel est appelé « disque parent ». Avec la cmdlet Merge-VHD , vous pouvez fusionner les modifications stockées dans un disque de différence dans le disque parent ou dans un autre disque enfant de la chaîne de disques de différence. Notez que cette opération est effectuée hors ligne ; assurez-vous que la chaîne de disques est détachée.
Pour fusionner le disque dur virtuel enfant avec le disque dur virtuel parent, exécutez la cmdlet suivante. Notez qu’une fois l’opération terminée et le contenu du disque enfant transféré vers le disque parent, le disque de différence est détruit.
Merge-VHD -Path ‘C:Virtual StorageDifferencing.vhdx’
Dans l’exemple suivant, nous avons un disque parent, maindisk.vhdx, et un disque enfant, ChDisk1.vhdx, qui possède lui-même un disque enfant : ChDisk2.vhdx. Ce dernier disque virtuel possède même son propre enfant, ChDisk3.vhdx. Ensemble, ces disques constituent la chaîne de différenciation . La cmdlet suivante peut être utilisée pour fusionner les disques durs virtuels enfants dans la chaîne de disques.
Merge-VHD -Path ‘C:VM TestingChDisk3.vhdx’ -DestinationPath ‘C:VM TestingChDisk1.vhdx’
Grâce à cette opération, les données provenant de ChDisk3.vhdx et ChDisk2.vhdx sont fusionnées dans ChDisk1.vhdx. Le script PowerShell simplifie le processus de fusion des disques durs virtuels ; l’opération entière peut être effectuée en une seule fois, quelle que soit la taille de la chaîne de différenciation. C’est l’un des avantages de Powershell : avec Hyper-V Manager, vous n’êtes pas autorisé à fusionner plusieurs couches de la chaîne de disques de différenciation à la fois. Vous devriez fusionner manuellement chaque couche de la chaîne de disques de différenciation, ce qui vous demanderait du temps et des efforts supplémentaires.
Monter des fichiers Hyper-V VHD et VHDX
La La cmdlet Mount-VHD vous permet de monter un ou plusieurs disques durs virtuels. L’exemple suivant montre comment monter un disque dur virtuel avec le chemin d’accès C:Virtual DisksDemoDisk.vhdx.
Mount-VHD -Path ‘C:Virtual DisksDemoDisk.vhdx’
À l’aide de scripts PowerShell, vous pouvez monter un disque dur virtuel en mode lecture seule :
Mount-VHD -Path ‘C:Virtual DisksDemoDisk.vhdx’ -ReadOnly
Démontez les fichiers Hyper-V VHD et VHDX
Si vous souhaitez démonter un disque dur virtuel, exécutez la cmdlet Dismount-VHD dans PowerShell. Dans l’exemple ci-dessous, vous pouvez voir comment démonter le disque dur virtuel avec le chemin d’accès C:Virtual DisksDemoDisk.vhdx.
Dismount-VHD -Path ‘C:Virtual DisksDemoDisk.vhdx’
Une autre option consiste à démonter le disque dur virtuel à l’aide du numéro du disque monté, comme suit :
Dismount-VHD -DiskNumber 8
Redimensionner les fichiers VHD et VHDX Hyper-V
Si vous souhaitez redimensionner (réduire ou agrandir) un disque dur virtuel, utilisez la cmdlet Resize-VHD . L’exemple suivant montre comment redimensionner un disque dur virtuel en lui attribuant une nouvelle taille spécifiée. Dans ce cas, nous avons agrandi le VHDX from 10 Go to 20 Go :
Resize-VHD -Path 'C:Virtual DisksDemoDisk.vhdx' -SizeBytes 20GB
Cependant, la réduction n’est disponible que pour les fichiers VHDX. Notez que le disque dur virtuel ne doit pas être réduit à une taille inférieure à sa taille minimale spécifiée. Pour connaître la taille minimale du disque dur virtuel, exécutez la cmdlet suivante :
Get-VHD -Path 'C:Virtual Hard Disksdemovdisk.vhdx’
Vous pouvez utiliser la commande suivante pour réduire le fichier VHDX à sa taille minimale :
Resize-VHD -Path 'C:Virtual Hard Disksdemovdisk.vhdx’ -ToMinimumSize
Conclusion
Les fichiers Hyper-V VHD et VHDX jouent tous deux un rôle important dans les environnements virtuels, car ils fonctionnent comme les disques durs d’une machine virtuelle. Le format de fichier VHD a été utilisé pendant longtemps, mais pour suivre les progrès constants de la technologie de virtualisation, Microsoft a introduit une version plus avancée. Ainsi, le format de fichier VHDX a été lancé avec Windows Server 2012 afin d’améliorer les performances des disques physiques à grands secteurs, d’augmenter la capacité de stockage et d’assurer la protection des données.
Après avoir comparé toutes les fonctionnalités offertes par les fichiers Hyper-V VHD et VHDX, on peut affirmer sans risque que Hyper-V VHDX est un format de fichier plus efficace et plus fiable, conçu pour répondre aux exigences de performances des environnements virtuels modernes.
Veillez à protéger vos disques VHD et VHDX à l’aide d’une solution de protection des données adaptée aux infrastructures virtualisées. Envisagez NAKIVO Backup & Replication, une solution rapide et économique qui offre de multiples options pour sécuriser les environnements Hyper-V, VMware, AWS EC2 et Microsoft 365.