Конвертация виртуального диска VMDK из OVA-шаблона VMWare в VHDX для Hyper-V

imageПотребовалось развернуть новую виртуальную машину в Hyper-V из файла шаблона виртуальной машины VMWare в формате OVA. Прямого конвертирования из этого формата ни в стандартных оснастках Hyper-V, ни в базовом функционале SCVMM я не нашёл. Выяснилось, что файл *.ova, это по сути контейнер *.tar. Поэтому такой файл можно распаковать любым архиватором, например 7-zip. В распакованном виде нам станет доступен файл виртуального жёсткого диска VMWare в формате VMDK, а уже с этим форматом нам поможет разобраться утилита Microsoft Virtual Machine Converter 3.0.

Помимо графического интерфейса для онлайн конвертации виртуальных машин (с прямым подключением к хостам виртуализации VMWare и Hyper-V), после установки утилиты в системе становится доступен набор PowerShell командлетов. Подробное описание всех доступных командлетов есть в документе MVMC_cmdlets.doc, ссылку на который можно найти на странице загрузки утилиты. Далее пример простого скрипта для конвертации файла формата VMDK в формат VHD/VHDX

Import-Module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"
$VMDKpath = "D:\Temp\MVMC\VMWareFiles"
$VHDXpath = "D:\Temp\MVMC\HyperVFiles"
$VMDKfiles = Get-ChildItem "FileSystem::$VMDKpath" -Filter *.vmdk
foreach ($VMDK in $VMDKfiles){
Write-Host "Converting file: " $VMDK.Name 
ConvertTo-MVMCVirtualHardDisk -SourceLiteralPath $VMDK.FullName `
-DestinationLiteralPath $VHDXpath `
-VHDFormat Vhdx `
-VHDType DynamicHardDisk
}

После конвертации виртуальную машину Hyper-V можно создать вручную с присоединением к ней полученного VHD/VHDX файла.

Всего комментариев: 4 Комментировать

  1. Вложу свои 5 копеек.

    Если понадобится быстро запустить ВМ с диском vmdk то его можно легко (в течение 3 секунд) конвертировать в vhd с помощью утилиты http://www.techieshelp.com/downloads/VhdTool.exe

    Делаем vhdtool.exe /convert some.vmdk и получаем измененный файл в котором уже есть заголовок vhd, останется только переименовать его в some.vhd

    В дальнейшем данный файл можно сконвертировать в vhdx с помощью командлета Convert-VHD или оснастки Hyper-V Manager.

    1. Константин /

      Доброго времени суток! Александр как же подгрузить vhdtool.exe в PS? Спасибо заранее.

  2. Sysop /

    Коллеги, проверил, не работает ни один ни второй метод. получилось только с помощью VirtualBox

  3. Павел /

    все работает с MVMC скриптом
    смотрите логи

Добавить комментарий