Последние версии VirtualBox поддерживают несколько форматов для виртуальных дисков, но они забыли предоставить сравнение между ними.
- VDI
- VMDK
- VHD
- жесткий диск
Теперь меня интересует рекомендация или сравнение, которое учитывает следующее:
- уметь использовать динамический размер
- иметь возможность делать снимки
- быть в состоянии перенести мою виртуальную машину на другую ОС или даже другое бесплатное решение для виртуализации с минимальными усилиями (вероятно, что-то, что будет работать в Ubuntu).
- представление
virtualbox
disk-image
Сорин
источник
источник
Ответы:
VirtualBox имеет
Источник: Oracle® VM. Руководство пользователя VirtualBox® » Глава 5. Виртуальное хранилище » 5.2. Файлы образов дисков (VDI, VMDK, VHD, HDD)
Отвечая на ваши соображения
VDI , VMDK и VHD поддерживают динамически распределенное хранилище. VMDK имеет дополнительную возможность разбивать файл хранилища на файлы размером менее 2 ГБ каждый, что полезно, если в вашей файловой системе установлен небольшой размер файла.
HDD , QCOW и QED должны быть выделены динамически, если они созданы в VirtualBox.
VirtualBox поддерживает создание снимков всех шести форматов .
VDI является родным форматом VirtualBox. Другое программное обеспечение для виртуализации, как правило, не поддерживает VDI, но его довольно просто конвертировать из VDI в другой формат, особенно с
qemu-img convert
.VMDK разработан VMWare и для него, но VirtualBox и QEMU (другое распространенное программное обеспечение для виртуализации) также поддерживают его. Этот формат может быть лучшим выбором для вас, потому что вам нужна широкая совместимость с другим программным обеспечением для виртуализации.
VHD - это родной формат Microsoft Virtual PC. Windows Server 2012 представил VHDX в качестве преемника VHD, но VirtualBox не поддерживает VHDX.
HDD - это формат для Parallels . Parallels специализируется на виртуализации для macOS. Возможно, это вам не подходит, особенно если учесть, что VirtualBox поддерживает только старую версию формата жесткого диска.
QCOW - это старая оригинальная версия формата qcow. Он был заменен qcow2, который VirtualBox не поддерживает.
QED был заброшенным улучшением qcow2. QEMU советует не использовать QED.
Каждый из форматов может иметь нюансы производительности из-за того, что хранилище блоков абстрагируется от формата, но я не нашел никаких тестов, сравнивающих форматы, поддерживаемые VirtualBox.
Существуют и другие факторы, влияющие на производительность, такие как:
источник
Я всегда использую VDI, так как это родной формат VirtualBox; однако использование VMDK (формат VMWare) повысит совместимость с другим программным обеспечением виртуальной машины.
VirtualBox будет отлично работать в Ubuntu, поэтому, если целью является совместимость Windows / Ubuntu, VDI будет идеальным выбором.
Оба формата будут соответствовать вашим требованиям.
Что касается двух других, VHD - это формат, разработанный Microsoft, а HDD - формат, разработанный Apple; они оба по собственной лицензии, поэтому ограничьте кроссплатформенную поддержку; Я бы не рекомендовал их.
источник
Mpack объясняет ключевую разницу в производительности между VHD и VDI:
https://forums.virtualbox.org/viewtopic.php?f=1&t=22688
источник
Я не знаю, позволит ли использование vmdk прозрачно запустить виртуальную машину, созданную в VirtualBox в VMware, или нет. Это может. Однако более универсальным вариантом может быть использование функции VirtualBox File / Export для создания .ova-файла «Open Virtualization Appliance», который затем можно импортировать в VMware. При таком подходе вы можете портировать на любую систему виртуализации, которая поддерживает .ova, не заботясь о том, какой формат образа диска вы используете в VirtualBox.
Если вам необходимо экспортировать данные с одной и той же виртуальной машины через равные промежутки времени, например, каждый день, это может быть проблемой. Но если вы время от времени переходите на другую технологию, все будет в порядке.
Если у вас уже есть файл .vdi, вы можете проверить, работает ли он, не создавая новую виртуальную машину. Экспортируйте его в .ova, затем попробуйте импортировать с помощью vmware.
источник
Это зависит от того, как вы планируете использовать виртуальный диск. Не каждая виртуальная машина хочет один раздел на одном диске.
У VDI, кажется, есть больше опций (при использовании с VirtualBox), но как только вы убираете VirtualBox из картинки, поддержка VDI становится несколько шаткой (по состоянию на конец 2014 года).
Например, мои решения должны иметь максимальную межплатформенную поддержку. Монтирование VDI (такого как устройство обратной связи) в Linux или Windows 7 сложнее и сложнее, чем вы могли ожидать. Почти как у VDI слишком много функций, что затрудняет создание полностью соответствующих утилит, которые могут работать на нем.
VMDK выглядит просто менее безболезненно, если вы хотите, чтобы он работал с любой виртуальной машиной на любой рабочей станции, когда вы хотите клонировать его 3 раза одновременно на другие системы в сети и когда вы хотите открыть его без запуска виртуальной машины. экземпляр.
Несмотря на то, что я использую VirtualBox 90% времени, те несколько раз, когда мои диски становятся недоступными в определенных рабочих процессах, привели меня к выбору VMDK для подключаемых / совместно используемых файловых систем.
источник
Файлы образов дисков находятся в хост-системе и рассматриваются гостевыми системами как жесткие диски определенной геометрии. Когда гостевая операционная система выполняет чтение или запись на жесткий диск, VirtualBox перенаправляет запрос в файл образа.
Как и физический диск, виртуальный диск имеет размер (емкость), который должен быть указан при создании файла образа. В отличие от физического диска, VirtualBox позволяет расширять файл образа после создания, даже если он уже содержит данные; VirtualBox поддерживает четыре варианта файлов образов дисков:
VDI: Обычно VirtualBox использует собственный формат контейнера для гостевых жестких дисков - файлы образа виртуального диска (VDI). В частности, этот формат будет использоваться при создании новой виртуальной машины с новым диском.
VMDK: VirtualBox также полностью поддерживает популярный и открытый формат контейнера VMDK, который используется многими другими продуктами виртуализации, в частности, VMware. [25]
VHD: VirtualBox также полностью поддерживает формат VHD, используемый Microsoft.
Также поддерживаются файлы изображений Parallels версии 2 (формат HDD). [26] Из-за отсутствия документации о формате более новые форматы (3 и 4) не поддерживаются. Однако вы можете конвертировать такие файлы изображений в формат версии 2, используя инструменты, предоставляемые Parallels.
источник
Хорошая причина для меня, чтобы использовать vmdk, заключается в том, что Virtualbox (по крайней мере до v4.1), использующий формат VDI, имеет тенденцию со временем заполнять все выделенное дисковое пространство, хотя использование внутреннего виртуального диска все еще намного меньше. С Virtualbox, использующим диски vmdk, это кажется меньшей проблемой.
Но я говорю годы безотказной работы. Это не может быть проблемой, с которой сталкиваются многие люди.
источник
Похоже, использование VDI позволяет обрезать файл диска до его фактического размера VirtualBox и поддержку команды TRIM SSD
источник
edit
кнопка под моим вопросом для вас: DVDI гораздо проще сжать, если виртуальная машина становится слишком большой.
источник
Давным-давно я провел один тест, преобразовал динамический VDI в динамический VHD, чтобы проверить скорость и размеры файлов.
Помните, что это была неизменная гостевая установка Windows с некоторыми приложениями, помните, что для моего теста я конвертировал один формат в другой, так что оба должны иметь одно и то же изображение, как при клонировании.
Для диска размером 64 ГБ размер файла VDI был около 18 ГБ, а размер файла VHD - около 22 ГБ.
Я помню, я видел эти две вещи:
Это было давно, и тестирование проводилось на жестком диске, но я гарантирую, что оба файла будут дефрагментированы и расположены рядом друг с другом на быстрой части диска.
Надеюсь, кто-то может сделать реальные тесты SSD, но я чувствую, что VHD быстрее (и больше), чем VDI.
Просто совет: VHD / VHDX может быть сжато в любой Windows 7 и выше с помощью инструмента командной строки DiskPart, для VDI необходим внешний инструмент CloneVDI.
Извините, я не тестировал VMDK, я не знал, как сжать его, не изменив его UUID (UUID диска), помните, что инструменты команд VBOX всегда меняют его на каждом клоне, независимо от того, какой формат вы используете.
источник
Я только что перенес необработанный VMDK, который был сопоставлен с разделом Transcend SSD370 128 ГБ на Samsung Pro 850 512 ГБ.
Очевидно, VMDK намного быстрее, чем VDI. Я не понимаю почему, может я где-то допустил ошибку.
Я скопировал VMDK через Virtual Media Manager на 850. Один раз как VDI, один раз как VMDK.
Затем я побежал
hdparm -tT --direct /dev/sda
на изображениях. Для каждого из «запусков» я переключал замену «Машина -> Настройки -> Хранение -> Контроллер SATA -> ImageFile.xxx». Необработанный раздел на SSD370 был определен файлом VMDK, поэтому на самом деле это не образ.Вот результаты:
Я действительно не знаю, как это интерпретировать, может быть, кто-то хочет оставить комментарий к этому. Я выбрал VMDK тогда.
источник