Pregunta ¿Qué imagen de disco debería usar con VirtualBox, VDI, VMDK, VHD o HDD?


Las últimas versiones de VirtualBox admiten varios formatos para discos virtuales, pero olvidaron proporcionar una comparación entre ellos.

  • VDI
  • VMDK
  • VHD
  • HDD

Ahora, estoy interesado en una recomendación o comparación que considere lo siguiente:

  • ser capaz de usar tamaño dinámico
  • ser capaz de tener instantáneas
  • ser capaz de mover mi máquina virtual a otro sistema operativo o incluso otra solución de virtualización gratuita con un mínimo esfuerzo (probablemente algo que funcionaría bien en Ubuntu).
  • actuación

249


origen


Ejecuta el cuadro Virtual y haz clic en el ícono de ayuda> Contenido, hay una explicación justa debajo de "Almacenamiento virtual" - Moab
Con respecto a la migración a "otra solución de virtualización gratuita ... que funcionaría bien en Ubuntu", estoy bastante seguro de que VirtualBox está disponible para Linux. - Iszi
En cuanto a rendimiento, creo que lo mejor es crear discos fijos si tiene espacio. De lo contrario, es muy estresante para el sistema operativo cuando se utiliza la máquina virtual en lugar de una vez en el momento de la creación. - Alexis Wilke
Otra cosa a tener en cuenta es cambiar el tamaño de la imagen cuando sea necesario: VBoxManage no puede redimensionar los VMDK, por lo que tendría que clonar primero en VDI, luego cambiar el tamaño, luego volver a VMDK + fudge up the UUID. Solo por esta razón, VDI parece ser la mejor opción para mí. - Mike Demenok


Respuestas:


VirtualBox tiene soporte completo para VDI, VMDKy VHD y apoyo para Parallels Version 2 (HDD) (no versiones más nuevas).

Respondiendo a sus consideraciones

  • ser capaz de usar tamaño dinámico

VDI, VMDKy VHD todos soportan el tamaño asignado dinámicamente. VMDK tiene una capacidad adicional de dividir el archivo de almacenamiento en archivos de menos de 2 GB cada uno, lo cual es útil si su sistema de archivos tiene un límite de tamaño de archivo pequeño.

  • ser capaz de tener instantáneas

Los cuatro formatos instantáneas de soporte en VirtualBox.

  • ser capaz de mover mi máquina virtual a otro sistema operativo o incluso otra solución de virtualización gratuita con un mínimo esfuerzo (probablemente algo que funcionaría bien en Ubuntu).

VDI es el formato nativo de VirtualBox. No busqué ningún otro software que admita este formato.

VMDK está desarrollado por y para VMWare, pero Sun xVM, QEMU, VirtualBox, SUSE Studio y .NET DiscUtils también lo admiten. (Este formato puede ser el más adecuado para usted porque quiere un software de virtualización que funcione bien en Ubuntu.)

VHD es el formato nativo de Microsoft Virtual PC. Este es un formato popular entre los productos de Microsoft.

No sé nada sobre HDD. A juzgar por mirar este sitio, Parallels es un producto Mac OS X y probablemente no sea adecuado para usted, especialmente si se tiene en cuenta que VirtualBox solo es compatible con una versión anterior del formato HDD.

  • actuación

El formato no debe afectar el rendimiento, o al menos, los impactos en el rendimiento son insignificantes.

Los factores que influyen en el rendimiento son:

  • las limitaciones de su dispositivo físico (mucho más notable en una unidad de disco duro que una unidad de estado sólido... ¿Por qué?)
  • expandir una unidad de disco virtual asignada dinámicamente (las operaciones de escritura son más lentas a medida que el disco virtual se expande, pero una vez que es lo suficientemente grande, la expansión debería ocurrir menos)
  • tecnología de virtualización (hardware vs. software; la virtualización de hardware ayuda a VirtualBox y mejora la velocidad de los sistemas operativos virtuales)
  • el hecho de que está ejecutando un sistema operativo virtual. El rendimiento siempre es más lento que ejecutar un sistema operativo en el host debido al proceso de virtualización.

178



+1 Añadiré que VMDK parece ofrecer la panacea que he estado buscando en términos de copias de seguridad incrementales: ya no tener para hacer una copia de seguridad de un enorme VDI monolítico para un cambio de bit único en el invitado. - msanford
Creo que falta algo de consideración sobre el disco duro del host sin procesar, es decir, el invitado virtual que usa un disco duro "físico" (o dispositivo RAID) como se ve desde el host. Esto permitiría mejores resultados que el uso de un disco simulado sobre un sistema de archivos. - Enzo
@Enzo: ahora uso VMDK en un dispositivo de bloques sin formato. La gran sorpresa es que VirtualBox necesita ejecutarse como root. Además, las instantáneas no son compatibles con los discos sin formato, pero tengo un sistema de instantáneas de terceros (ZFS). VMDK en un disco sin procesar también es mucho menos portátil. En cuanto al rendimiento, no tengo ningún punto de referencia sólido, pero tampoco tengo quejas. - Deltik
VHD se puede montar como una unidad en Windows Disk Management, lo que no parece tan sencillo con VDI: superuser.com/q/342334/13889 - endolith
@msanford ¿podría explicar cómo VMDK evita hacer una copia de seguridad del enorme archivo? ¿rsync puede descifrar mejor las diferencias? el archivo VMDK también parece cambiar en cada modificación. - Ben Creasy


Siempre uso VDI, ya que es el formato nativo de VirtualBox; sin embargo, usar un VMDK (formato VMWare) aumentará la compatibilidad con otro software de máquina virtual.

VirtualBox correrá bien en Ubuntu, por lo que si el objetivo es la interoperabilidad de Windows / Ubuntu, VDI sería una elección perfectamente válida.

Ambos formatos cumplirán sus requisitos.

En cuanto a los otros dos, VHD es un formato desarrollado por Microsoft, y HDD es un formato desarrollado por Apple; estos tienen licencia de propiedad, por lo que limitan el soporte multiplataforma; No los recomendaría.


33





Mpack, explica una diferencia de rendimiento clave entre VHD y VDI aquí:

Habiendo estudiado recientemente el formato VHD, esperaría que hubiera al menos una pequeña diferencia en el favor de los VDI, más notable cuando comparas cosas similares, es decir, un VDI optimizado versus un VHD optimizado. La razón es que el formato VHD dinámico tiene estos sectores de "mapa de bits" dispersos por todo el disco. Cada vez que modifica un sector dentro de un bloque, estos bloques de mapas de bits pueden necesitar ser actualizados y escritos, lo que implica búsquedas adicionales, lecturas y escrituras. Estos sectores de mapa de bits también deben pasarse por alto cuando se leen clústeres consecutivos desde una imagen de disco: más búsquedas. El formato VDI no tiene estos gastos generales, especialmente si el VDI ha sido optimizado (bloques en el disco virtual ordenados por LBA).

Todos mis comentarios se aplican al formato VHD dinámico frente a VDI dinámico. Las pruebas de rendimiento en discos virtuales de tamaño fijo son inútiles ya que ambos formatos son los mismos (solo una imagen simple de un disco), simplemente tienen diferentes encabezados sobre ellos.

https://forums.virtualbox.org/viewtopic.php?f=1&t=22688


14





No sé si usar vmdk le permitiría ejecutar de forma transparente una máquina virtual creada en VirtualBox en VMware o no. Que podría. Sin embargo, una opción más universal podría ser utilizar la función Archivo / Exportar de VirtualBox para crear un archivo .ova de "Dispositivo de virtualización abierto" que luego se pueda importar a VMware. Con ese enfoque, puede realizar un puerto a cualquier sistema de virtualización que admita .ova sin importar qué formato de imagen de disco use en VirtualBox.

Si necesita exportar desde la misma máquina virtual a intervalos regulares, p. todos los días, eso podría ser un dolor. Pero si solo te mueves a una tecnología diferente de vez en cuando, debería estar bien.

Si ya tiene un archivo .vdi, puede probar si esto funciona sin tener que crear una nueva máquina virtual. Extiéndalo a .ova, luego intente importar con vmware.


5





Los archivos de imagen de disco residen en el sistema host y son vistos por los sistemas invitados como discos duros de una cierta geometría. Cuando un sistema operativo invitado lee o escribe en un disco duro, VirtualBox redirige la solicitud al archivo de imagen.

Al igual que un disco físico, un disco virtual tiene un tamaño (capacidad), que debe especificarse cuando se crea el archivo de imagen. Sin embargo, a diferencia de un disco físico, VirtualBox le permite expandir un archivo de imagen después de la creación, incluso si ya tiene datos; VirtualBox admite cuatro variantes de archivos de imagen de disco:

VDI: normalmente, VirtualBox usa su propio formato de contenedor para discos duros invitados: archivos de imagen de disco virtual (VDI). En particular, este formato se usará cuando crea una nueva máquina virtual con un disco nuevo.

VMDK: VirtualBox también es totalmente compatible con el popular y abierto formato de contenedor VMDK que muchos otros productos de virtualización usan, en particular, VMware. [25]

VHD: VirtualBox también es totalmente compatible con el formato VHD utilizado por Microsoft.

Los archivos de imagen de Parallels versión 2 (formato HDD) también son compatibles. [26] Por falta de documentación del formato, los formatos más nuevos (3 y 4) no son compatibles. Sin embargo, puede convertir dichos archivos de imagen al formato de la versión 2 utilizando las herramientas proporcionadas por Parallels.


5



Esta respuesta viene del Capítulo 5 del manual de VirtualBox. enlazar - JerryOL


Una buena razón para usar vmdk es que Virtualbox (al menos hasta v4.1) con formato VDI tiene la tendencia, a lo largo del tiempo, de ocupar todo el espacio asignado en el disco, aunque el uso del disco virtual interno aún sea mucho menor. Con Virtualbox usando discos vmdk, parece menos problemático.

Pero estoy hablando años uptime. Esto podría no ser un problema que muchas personas encuentren.


4



Está más relacionado con la fragmentación del sistema de archivos invitados que con el formato en sí. - Enzo


Depende de cómo planee usar el disco virtual también. No todas las máquinas virtuales quieren una sola partición en un solo disco.

VDI parece tener más opciones (cuando se usa con VirtualBox), pero tan pronto como quita VirtualBox de la imagen, el soporte para VDI se vuelve un tanto inestable (a finales de 2014).

Por ejemplo, mis soluciones deben tener el máximo soporte multiplataforma. Montar un VDI (como un dispositivo de retroalimentación) en Linux o Windows 7 es más difícil y más complicado de lo que cabría esperar. Casi como el VDI tiene demasiadas funciones, lo que dificulta la creación de utilidades totalmente compatibles que puedan operar en él.

VMDK es menos desagradable en mi humilde opinión cuando quieres que funcione con cualquier VM en cualquier estación de trabajo, cuando quieres clonarlo 3 veces en otros sistemas en la red al mismo tiempo, y cuando quieres abrirlo sin abrir una VM ejemplo.

Aunque uso VirtualBox el 90% del tiempo, las pocas veces que mis discos se vuelven inaccesibles en ciertos flujos de trabajo me han llevado a favorecer VMDK para sistemas de archivos conectables / compartidos.


3





Parece que el uso de VDI hace posible recortar el archivo de disco a su tamaño real Compatibilidad con el comando TRIM de VirtualBox y SSD


3



Si bien es preciso, es un poco aburrido para una pregunta que pregunta sobre las diferencias generales entre esos formatos, ¿no crees? - Seth
@Seth Visión general fue proporcionado por respuestas anteriores y no tengo suficientes representantes para comentar, pero aún es importante mencionar este hecho - OwnageIsMagic
Del mismo modo que una sugerencia, agréguela para darle más contexto. P.ej. "Mientras esta La respuesta proporciona una buena visión general, también debe considerar la ventaja de ... ". Por lo tanto, incluso si se lee solo, su respuesta tiene una relación con una más general. - Seth
@Seth hay edit botón debajo de mi pregunta para ti: D - OwnageIsMagic
Es una sugerencia para ti sobre cómo mejorar la publicación. Es tu decisión cada vez que quieras hacerlo, ya que es solo mi opinión. Más o menos reescribir una en una edición es un estilo bastante malo, otra vez solo mi opinión. ;) - Seth


VDI es mucho más fácil de compactar si la VM crece demasiado grande.


1