Конвертация Hyper-V в VMware

Для конвертирования виртуальной машины из формата Hyper-V в формат VMware (упакованный в OVA) нам понадобится:

  1. Рабочая станция с Windows 8.1/10 с установленной ролью Hyper-V или модулем powershell для Hyper-V. Так же подойдет Windows Server 2012 R2 с установленной ролью Hyper-V и модулем powershell для Hyper-V.

    Установить модуль poweshell для Hyper-V можно следующим образом: запустите консоль powershell с привилегиями администратора.


    Выполните команду:
    Для Windows 8.1/Windows Server 2012 R2: Add-WindowsFeature RSAT-Hyper-V-Tools –IncludeAllSubFeature
    Для Windows 10: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-PowerShell
  2. Содержимое пакета Converter.zip – в нем находятся все необходимые скрипты и утилиты для конвертации. Распакуйте содержимое на диск компьютера, на котором будет проходить конвертация.

     

  3. Для того чтобы скрипт сработал корректно необходимо изменить ExecutionPolicy на RemoteSigned. Для этого запустите Windows Powershell с привилегиями администратора (как на изображении выше), выполните команду: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

    Подтвердите смену политики.

Подготовка виртуальной машины к конвертации

Внимание! Для старых гостевых ОС (например, Windows Server 2003) необходимо убедиться, что в системе инициализирован драйвер SCSI (актуально для ВМ первого поколения). Если ОС установлена на диск подключенный к контроллеру IDE и других дисков в системе нет/они подключены также к шине IDE, то необходимо подключить к этой ВМ хотя бы один виртуальный диск через контроллер SCSI и убедиться, что он инициализирован в системе.

Требования к ova/ovf файлам:
- Hardware Version машины не выше 11й;
- Тип дисков scsi.

Откройте оснастку управления Hyper-V (Панель управления\Администрирование\Управление Hyper-V или Control Panel\All Control Panel Items\Administrative Tools\Hyper-V Manager).

Подключитесь к вашему серверу Hyper-V (если ваша виртуальная машина работает не на том же компьютере, на котором вы выполняете конвертацию).
Выключите вашу виртуальную машину и экспортируйте ее (Контекстное меню – Export…).

Укажите папку для экспорта вашей виртуальной машины.

Конвертация виртуальной машины

Примечание: скрипт можно скачать с нашего репозитория на GitHub.

Шаг 1

Запустите консоль powershell с привилегиями администратора.

Шаг 2

Перейдите в папку Converter, содержащую необходимые скрипты и утилиты.

Шаг 3

Весь процесс осуществляется скриптом Convert-VM.ps1, который принимает два параметра:

Convert-VM.ps1 –HyperVVMPath <string> –OVAPath <string> [<CommonParameters>]

- HyperVVMPath - путь к экспортированной ранее виртуальной машине;

- OVAPath – путь к папке, в которую будет сконвертирована виртуальная машина в формате OVA (если папка не существует, она будет создана).

Запустите скрипт, указав в параметрах пути к необходимым папкам.
Например:
.\Convert-VM.ps1 -HyperVVMPath D:\export\Test1\ -OVAPath D:\ova\

Дождитесь выполнения всех утилит конвертации (они могут продолжаться длительное время, в зависимости от размера файлов виртуальной машины).

По итогам работы скрипт укажет путь к созданному OVA-файлу.

Создание OVA из файла виртуальной машины

Если у Вас в наличии нет виртуальной машины, а есть только файл виртуального диска и хочется превратить его в шаблон OVA, то можно воспользоваться другим набором параметров для скрипта:

Convert-VM.ps1 –VHDPath <string> –OVAPath <string> [–CPU <byte>] [–Memory <byte>] [<CommonParameters>]

VHDPath – путь к вашему файлу виртуального диска в формате vhd или vhdx.
OVAPath – путь к папке, в которую будет сконвертирована виртуальная машина в формате OVA (если папка не существует, она будет создана).

Опциональные параметры:
CPU – количество процессоров виртуальной машины (число, по умолчанию 1).
Memory – количество памяти виртуальной машины (число, в МБ, по умолчанию 1024).

Например: .\Convert-VM.ps1 -VHDPath D:\ test.vhd -OVAPath D:\temp\ova -CPU 2 –Memory 4096

Дождитесь выполнения всех утилит конвертации (они могут продолжаться длительное время, в зависимости от размера файла виртуального диска).

По итогам работы скрипт укажет путь к созданному OVA-файлу.

 

Последнее обновление: 10.12.2018