Sobre los archivos VHD y VHDX de Hyper-V
Los discos virtuales creados en el entorno Hyper-V pueden almacenarse como archivos en formato VHD o VHDX en un disco físico. Los discos virtuales son una alternativa a los discos duros físicos; funcionan como los discos duros de una máquina virtual (VM). Los discos virtuales pueden contener un sistema de archivos nativo, particiones de disco, sectores y carpetas. Pueden realizar operaciones de disco y archivo estándar. Cada VM debe tener al menos un disco duro virtual que se pueda usar como almacenamiento para los datos de la VM.
Las versiones anteriores de Windows solo admitían un único formato de archivo para discos virtuales: VHD. Como resultado de las crecientes demandas tecnológicas, Windows 2012 introdujo el formato de archivo VHDX, que ha mejorado considerablemente la capacidad de almacenamiento, ha mejorado el rendimiento en discos de gran sector y ha garantizado niveles más altos de protección de datos.
Tanto los archivos Hyper-V VHD como VHDX pueden ser de diferentes tipos:
- Fijo. El espacio para el disco virtual se asigna cuando se crea el archivo VHD. El archivo de disco duro virtual tiene el mismo tamaño que el disco duro virtual. Su tamaño permanece constante, independientemente de que se agreguen o eliminen datos.
- Expansión dinámica. El espacio para el disco virtual se asigna según la demanda. El disco duro virtual tiene una cantidad especificada de espacio de almacenamiento físico que potencialmente se puede usar, pero el espacio se asigna según sea necesario. Por lo tanto, el tamaño del archivo VHD o VHDX aumenta cuando se agregan nuevos datos.
- Diferencial. Este tipo de disco se utiliza para identificar, almacenar, gestionar y revertir los cambios realizados en otro disco virtual o en el disco principal.
Diferencias entre los archivos VHD y VHDX de Hyper-V
Para comprender mejor cómo funcionan los archivos VHD y VHDX de Hyper-V, exploremos cómo difieren los formatos de archivo. A su vez, esto nos dice cómo cada uno de ellos puede mejorar el rendimiento de los discos virtuales. La siguiente tabla contrasta los dos formatos:
VHD | VHDX |
El formato de archivo básico compatible con Windows, Citrix y Oracle | Un formato de archivo avanzado compatible con Windows |
Hasta 2 TB de capacidad de almacenamiento | Hasta 64 TB de capacidad de almacenamiento |
Los archivos VHD ofrecen menos protección contra la corrupción de datos que sus contrapartes VHDX | Los archivos VHDX proporcionan una sólida protección contra la corrupción de datos al realizar un seguimiento de los metadatos |
No se proporciona soporte para metadatos personalizados | Se admite y puede almacenarse metadatos personalizados |
Compatible con Windows Server 2008, 2008 R2, 2012 y 2012 R2 | Compatible con Windows 2012 y posteriores |
No hay redimensionamiento en vivo | El redimensionamiento en vivo está disponible |
Tamaño de sector lógico de 512 bytes | Tamaño de sector lógico de 4 KB |
Problemas con el alineamiento de datos | Mejor alineación de datos |
No se admite el recorte | El recorte es compatible |
Como puede ver, el nuevo formato de archivo Hyper-V VHDX incluye varias características que han mejorado significativamente su utilidad. Por ejemplo, el recorte le permite identificar bloques de datos que ya no se utilizan y que pueden eliminarse, lo que mejora la optimización del almacenamiento y aumenta el rendimiento general. Otra característica que se introdujo con el nuevo formato de archivo Hyper-V VHDX es Shared VHDX, que permite a las MV en el mismo clúster de invitados usar un archivo VHDX como almacenamiento compartido. Además, los archivos Hyper VHDX le permiten redimensionar (reducir o expandir) discos virtuales a pedido, mientras la MV sigue en funcionamiento, lo que ahorra considerablemente tiempo y reduce la sobrecarga. Finalmente, debido al alineamiento de datos mejorado, los archivos Hyper-V VHDX pueden mejorar considerablemente las operaciones de E/S. En contraste, los discos físicos de sector grande son propensos a la degradación del rendimiento.
A pesar de que VHDX es una versión más avanzada del formato VHD, todavía hay casos en los que el uso de VHD es preferible. Por ejemplo, los archivos Hyper-V VHDX no son compatibles con las versiones anteriores de Windows Server. Por lo tanto, si está ejecutando entornos virtuales con sistemas operativos invitados mixtos y necesita mover MV entre diferentes hosts, el formato de archivo VHD sería la opción óptima, ya que es compatible con más sistemas operativos.
Cómo trabajar con archivos Hyper-V VHD y VHDX en PowerShell
Ahora que sabes qué son los archivos VHD y VHDX de Hyper-V y qué beneficios pueden proporcionar, estás listo para crear y configurar tus discos duros virtuales. Para este propósito, puedes utilizar el Administrador de Hyper-V o PowerShell en modo de administrador. En esta publicación de blog, describimos cómo gestionar las operaciones de archivos VHD y VHDX de Hyper-V en PowerShell. Este es el mejor enfoque, ya que PowerShell proporciona más opciones para configurar archivos VHD y VHDX de Hyper-V. Puedes crear, convertir, fusionar o eliminar discos rápidamente y fácilmente ejecutando scripts de PowerShell.
Crea archivos VHD y VHDX de Hyper-V
Para crear un nuevo disco duro virtual en formato VHD o VHDX, abre PowerShell como administrador y ejecuta el cmdlet New-VHD. El siguiente ejemplo te muestra cómo crear un disco duro virtual de tipo dinámico en la ruta especificada, con un tamaño de 10 GB, un tamaño de bloque de 128 MB y un tamaño de sector lógico de 4 KB. Ten en cuenta que es la extensión de archivo (.vhd o .vhdx) la que determina el formato del archivo; en este caso, se está creando un archivo VHDX.
New-VHD -Path 'C:\Virtual Disks\DemoDisk.vhdx' -BlockSizeBytes 128MB -LogicalSectorSize 4KB -SizeBytes 10GB -Dynamic
El disco duro virtual se ha creado y se muestra la siguiente información sobre el disco virtual en la ventana de PowerShell.
Añadir archivos VHD y VHDX de Hyper-V
Con el cmdlet Add-VMHardDiskDrive, puedes agregar un disco duro virtual a una VM específica. En el siguiente ejemplo, el disco duro virtual DemoDisk.vhdx en la ruta especificada se adjunta a la VM llamada DemoVM. También se asigna el controlador SCSI, el número de controlador 0 y la ubicación del controlador 1 al disco virtual.
Add-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1 -Path 'C:\Virtual Disks\DemoDisk.vhdx'
Eliminar archivos VHD y VHDX de Hyper-V
El comando Remove-VMHardDiskDrive se utiliza para eliminar un disco duro virtual de una VM. Para demostrar cómo funciona este cmdlet, aquí está cómo eliminar el disco creado justo arriba:
Remove-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1
Utilizando estos cmdlets, puedes crear y eliminar fácilmente discos virtuales con los parámetros requeridos y adjuntarlos a VMs específicas.
Convertir archivos VHD y VHDX de Hyper-V
Como se mencionó anteriormente, los archivos VHDX ofrecen una serie de beneficios sobre sus predecesores VHD. Por lo tanto, en muchos casos, es recomendable convertir todos los archivos VHD al formato VHDX. Para actualizar archivos VHD de Hyper-V a VHDX, simplemente ejecute el cmdlet Convert-VHD, que le permite cambiar el formato del archivo mientras guarda el contenido del disco duro virtual de origen. Los datos del disco duro virtual de origen se copian a un nuevo disco del formato requerido. La operación debe realizarse sin conexión; se recomienda desconectar el disco duro virtual. El ejemplo a continuación demuestra el cmdlet que permite la conversión de archivos VHD de Hyper-V a VHDX:
Convert-VHD -Path ‘C:\Nuevos Discos Virtuales\Disco Fijo.vhd’ -DestinationPath ‘C:\Nuevos Discos Virtuales\Disco Fijo.vhdx’
Recuerde, sin embargo, que los archivos VHDX solo son compatibles con Windows Server 2012 y versiones posteriores. Por lo tanto, es posible que necesite convertir archivos VHDX de Hyper-V a VHD. En este caso, se puede utilizar el mismo cmdlet Convert-VHD, pero en sentido inverso. Recuerde que el disco duro virtual debe estar desconectado antes de realizar la operación.
Convert-VHD -Path ‘C:\Discos Virtuales\DiscoDemo.vhdx’ ‘C:\Discos Virtuales\DiscoDemo.vhd’
Fusionar archivos VHD y VHDX de Hyper-V
Como se mencionó anteriormente, los discos de diferenciación se utilizan para almacenar y revertir los cambios realizados en otro VHD o en un sistema operativo invitado. Cada disco de diferenciación realiza un seguimiento y almacena los cambios realizados en un disco virtual asociado. En este caso, el disco de diferenciación se denomina “disco secundario” y el disco duro virtual se llama “disco principal”. Con el cmdlet Merge-VHD, puedes fusionar los cambios almacenados en un disco de diferenciación en el disco principal o en otro disco secundario en la cadena de discos de diferenciación. Ten en cuenta que esta operación se realiza sin conexión; asegúrate de que la cadena de discos esté desconectada.
Para fusionar el disco duro virtual secundario en el disco duro virtual principal, ejecuta el siguiente cmdlet. Ten en cuenta que una vez que la operación esté completa y que el contenido del disco secundario se transfiera al principal, el disco de diferenciación se destruirá.
Merge-VHD -Path ‘C:\Almacenamiento Virtual\Diferenciacion.vhdx’
En el siguiente ejemplo, tenemos un disco principal, maindisk.vhdx, y un disco secundario, ChDisk1.vhdx, que a su vez tiene un disco secundario: ChDisk2.vhdx. Este último disco virtual incluso tiene su propio disco secundario, ChDisk3.vhdx. Juntos, estos discos constituyen la cadena de diferenciación. El siguiente cmdlet se puede utilizar para fusionar los discos duros virtuales secundarios en la cadena de discos.
Merge-VHD -Path ‘C:\Pruebas VM\ChDisk3.vhdx’ -DestinationPath ‘C:\Pruebas VM\ChDisk1.vhdx’
A través de esta operación, los datos de ChDisk3.vhdx y ChDisk2.vhdx se fusionan en ChDisk1.vhdx. El script de PowerShell simplifica el proceso de fusión de discos duros virtuales; toda la operación puede llevarse a cabo en una ejecución, sin importar el tamaño de la cadena de diferenciación. Esta es una ventaja de PowerShell: con Hyper-V Manager, no se te permite fusionar múltiples capas de la cadena de discos de diferenciación de una vez. Tendrías que fusionar manualmente cada capa de la cadena de discos de diferenciación, y estos pasos adicionales te costarían tiempo y esfuerzo.
Montar archivos VHD y VHDX de Hyper-V
El cmdlet Mount-VHD te permite montar uno o más discos duros virtuales. El siguiente ejemplo demuestra cómo montar un disco duro virtual con la ruta C:\Virtual Disks\DemoDisk.vhdx.
Mount-VHD -Path ‘C:\Virtual Disks\DemoDisk.vhdx’
Usando scripts de PowerShell, puedes montar un disco duro virtual en modo de solo lectura:
Mount-VHD -Path ‘C:\Virtual Disks\DemoDisk.vhdx’ -ReadOnly
Desmontar archivos VHD y VHDX de Hyper-V
Si deseas desmontar un disco duro virtual, ejecuta el cmdlet Dismount-VHD en PowerShell. En el siguiente ejemplo, puedes ver cómo desmontar el disco duro virtual con la ruta C:\Virtual Disks\DemoDisk.vhdx.
Dismount-VHD -Path ‘C:\Virtual Disks\DemoDisk.vhdx’
Otra opción es desmontar el disco duro virtual usando el número de disco del disco montado, de la siguiente manera:
Dismount-VHD -DiskNumber 8
Redimensionar archivos VHD y VHDX de Hyper-V
Si deseas redimensionar (encoger o expandir) un disco duro virtual, se debe utilizar el cmdlet Resize-VHD. El siguiente ejemplo muestra cómo redimensionar un disco duro virtual asignándole un nuevo tamaño especificado. En este caso, hemos expandido el VHDX de 10GB a 20GB:
Resize-VHD -Path 'C:\Discos Virtuales\DemoDisk.vhdx' -SizeBytes 20GB
Sin embargo, la reducción solo está disponible para archivos VHDX. Ten en cuenta que el disco duro virtual no debe reducirse a un tamaño menor que su tamaño mínimo especificado. Para ver el tamaño mínimo del disco duro virtual, ejecuta el siguiente cmdlet:
Get-VHD -Path 'C:\Discos Duros Virtuales\demovdisk.vhdx'
Puedes utilizar el siguiente comando para reducir el archivo VHDX a su tamaño mínimo:
Resize-VHD -Path 'C:\Discos Duros Virtuales\demovdisk.vhdx' -ToMinimumSize
Conclusión
Tanto los archivos VHD como los VHDX de Hyper-V juegan un papel significativo en los entornos virtuales, ya que funcionan como los discos duros de una máquina virtual. El formato de archivo VHD se utilizó durante mucho tiempo, pero para mantenerse al día con el constante progreso de la tecnología de virtualización, Microsoft introdujo una versión más avanzada. Por lo tanto, el formato de archivo VHDX se lanzó con Window Server 2012 para mejorar el rendimiento de los discos físicos de sector grande, aumentar la capacidad de almacenamiento y garantizar la protección de datos.
Después de comparar todas las características que ofrecen los archivos Hyper-V VHD y VHDX, es seguro decir que Hyper-V VHDX es un formato de archivo más eficiente y confiable diseñado para manejar las demandas de rendimiento de los entornos virtuales modernos.
Asegúrate de proteger tus discos VHD y VHDX con una solución de protección de datos diseñada para infraestructuras virtualizadas. Considera NAKIVO Backup & Replication, que es una solución rápida y rentable que ofrece múltiples opciones para asegurar entornos de Hyper-V, VMware, AWS EC2 y Microsoft 365.
Source:
https://www.nakivo.com/blog/work-hyper-v-vhd-vhdx-files-essential-basics/