Конвертирование VHD в VMDK. Конвертирование виртуальных дисков на примере работы с утилитой StarWind V2V Конвертирование vmdk в vhd
Сегодня хотим поведать о том, как конвертировать образы дисков виртуальных машин из одного формата в другой. Допустим у нас есть виртуальная машина, развернутая в среде виртуализации VMware, а мы хотим импортировать её в среду Hyper-V. Или же вендор выпускает дистрибутивы только для Hyper-V, а нам обязательно нужно развернуть машину в VMware, потому что у нас вся сеть на нем. Если ты столкнулся с такой проблемой, то обязательно дочитай эту статью и ты найдёшь решение.
Процесс
Существует несколько форматов образов виртуальных жёстких дисков, которые поддерживаются разными средами виртуализации. Рассмотрим некоторые из них:
- VMDK (Virtual Machine DisK) - формат образа виртуального жёсткого диска для виртуальных машин, разработанный VMware
- VHD (Virtual Hard Disk) - формат файла, использующийся для хранения образов операционных систем, разработанный компанией Connectix, которая позднее была куплена Microsoft и теперь используется для образов Hyper-V. VHDX тоже самое, только все пространство на диске должно быть задано сразу.
- VDI (Virtual Disk Images) - формат образа жёсткого диска гостевых виртуальных машин VirtualBox.
Если ты используешь VirtualBox - поздравляю, ты можешь взять любой из имеющихся форматов и создать виртуальную машину.
Но так уж получилось, что форматы VHD и VMDK несовместимы между собой. Поэтому, чтобы можно было использовать VMDK в Hyper-V, а VHD в VMware, их сначала нужно переконвертировать.
Итак, допустим у нас есть виртуальная машина VMware с образом жёсткого диска LOCAL-VM-disk1.vmdk , который находится в папке C:\VMDKs . Для того, чтобы перенести его в Hyper-V, создадим папку, куда будет отправлен наш сконвертированный файл VHD – C:\VHDs . После этого, скачаем специальную программу от Microsoft - Microsoft Virtual Machine Converter 3.0, она доступна по ссылке https://www.microsoft.com/en-us/download/details.aspx?id=42497 .
После нажатия на кнопку Download , нам предложат скачать 2 файла – саму программу и описание команд. Установите программу.
Прежде чем продолжить, убедитесь, что версия PowerShell, которая у вас установлена 3 или выше. Проверить это можно если ввести команду $PSVersiontable
Если версия ниже 3 – обновите PowerShell, если 3 или выше, то продолжаем. Для начала, необходимо указать путь до скрипта конвертера, для этого вводим команду:
Import-Module ‘C:\Program Files\Microsoft Virtual Machine Converter\MvmcCMdlet.psd1’
Расположение скрипта может отличаться от C:\Program Files\Microsoft Virtual Machine Converter\, всё зависит от того, какой путь был указан при установке программы
Команда должна выполниться без каких-либо ошибок. Если ошибки всё же появились – проверьте расположение скрипта и правильность ввода. Ну или пишите вывод ошибки в комментарии – мы постараемся помочь:)
Теперь можно приступать к конвертированию. Для этого введите следующую команду:
ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath “C:\VMDKs\LOCAL-VM-disk1.vmdk”-DestinationLiteralPath “C:\VHDS\” -VhdType DynamicHardDisk -VhdFormat vhd
- C:\VMDKs\LOCAL-VM-disk1.vmdk - Путь к конвертируемому образу формата VMDK
- C:\VHDS\ - Папка, куда будет помещен сконвертированный образ формата VHD
После этого, можно зайти в папку, куда будет помещен сконвертированный файл и наблюдать за тем как увеличивается его размер.
Встроенную в Hyper-V функцию преобразования дисков тяжело назвать полноценным конвертером. Все, что может штатный гипервизор Microsoft делать с виртуальными жесткими дисками собственного формата VHD и VHDX – это преобразовывать эти форматы один в другой, а также менять динамический тип на фиксированный и наоборот.
Механизм конвертирования виртуальных дисков в форматы других гипервизоров, как это, например, предусматривается в программе VirtualBox, в составе Hyper-V отсутствует.
Ниже рассмотрим, как происходит процесс преобразования VHD- и VHDX-дисков с установленными гостевыми ОС в другой тип и формат. Преобразовывать диски будем с помощью штатных возможностей Hyper-V в составе Windows 10 и сторонней бесплатной программкой StarWind V2V Converter.
на сайте разработчика, предварительно заполнив анкету для регистрации аккаунта StarWind. Ссылка на скачивание инсталлятора приходит на почту, указанную в регистрационных данных.
С форматом виртуальных жестких дисков VMDK работает не только «родной» гипервизор VMware, но и VirtualBox. Процесса конвертирования дисков VHDX в диски VMDK все равно не избежать, если виртуальную машину Hyper-V нужно запустить на VMware или VirtualBox. Но и в преобразовании формата VHD, поддерживаемого и VMware, и VirtualBox, есть свои выгоды – диски VMDK более экономно расходуют дисковое пространство физического компьютера, нежели диски VHD.
StarWind V2V Converter может преобразовывать диски VHD и VHDX в диски VMDK. И наоборот – диски VMDK в диски VHD и VHDX. Для дисков VHD и VMDK при конвертировании можно выбрать иной, нежели имеющийся тип – динамический или фиксированный. Рассмотрим работу программы на примере преобразования диска VHDX в диск VMDK.
Запускаем StarWind V2V Converter и сразу жмем «Далее».
Указываем путь исходного файла VHDX. Жмем «Next».
Выбираем формат и тип диска VMDK. В нашем случае выбран первый вариант – VMware growable image. Это динамический тип диска. Второй вариант — VMware pre-allocated image – это тип диска фиксированный. Жмем «Next».
В качестве контроллера VMware при создании виртуальных машин рекомендуется выбрать SCSI, его и выберем. Жмем «Next».
04.12.2015 7310
Н
аличие определённого ряда ограничений ничуть не умаляет достоинства виртуализации
- одной из самых замечательных технологий, применяющихся для безопасного запуска приложений в изолированной среде, тестирования программного обеспечения и ещё Бог знает для чего. Для создания виртуальных дисков - этой самой изолированной среды используются специальные программы, такие как VMware
и VirtualBox
либо же Hyper-V
, являющийся встроенным инструментом Microsoft Windows
.
Поскольку виртуализация стала обыденным делом не только среди системных администраторов, но и среди обычных пользователей, разработчикам программных средств виртуализации пора бы уже создать единый совместимый формат виртуальных машин. Справедливости ради нужно сказать, что работа в этом направлении ведётся, тем не менее, сталкиваться с проблемами несовместимости при переносе виртуальных машин с одного гипервизора на другой приходится довольно часто.
Например, как прикажете поступать, если нужно перенести виртуальную машину Hyper-V нового формата VHDX на VMware или наоборот? Конечно, можно пойти окольными путями, преобразовать диск VHDX в старый VHD и попробовать подключить его VirtualBox , но лучше воспользоваться специальной утилитой-конвертером , позволяющей преобразовывать виртуальные диски VHD и VHDX в диски VMDK и наоборот. Вместе с этим утилита также позволяет выбирать тип диска - динамический или фиксированный .
Загрузить утилиту можно бесплатно с официальной страницы www.starwindsoftware.com/v2v-converter-download , предварительно зарегистрировавшись либо скачать её с ресурса Softpedia , если не желаете тратить время на заполнения полей формы. Установите утилиту, запустите её тут же нажмите «Далее» . Укажите через обзор путь к преобразовываемому диску VHD или VHDX и нажмите «Next» .
Далее программа предложит вам определиться с форматом диска (для VMDK это VMware growable image) и его типом. Если вам нужен динамический диск , выбираем VMware growable image , если фиксированный , выбираем VMware pre-allocated image . Жмём «Next» .
В следующем окне нужно будет указать тип контроллера. Рекомендуется выбирать SCSI .
Конвертация диска VHD в VHDX
Различие между форматами данных дисков отражены в заметке — . Сейчас же поговорим о том, как выполнить конвертацию этих дисков.
Стоит отметить — при конвертации простой работающей ОС неизбежен, т.к. создается файл нового формата (аналогичного размера). Инструмент конвертации — Hyper-V, поэтому переходим в Hyper-V Manager, выбираем «Редактировать диск», заходим в мастер редактирования VHD:
Указываем место расположения диска, который необходимо сконвертировать и выбираем пункт «Convert»:
Выбираем нужный формат и тип диска:
После этого указываем имя и расположение «нового» диска:
При этом старый диск остается на месте, поэтому для дальнейшего использования ВМ, необходимо удалить и прописать новый VHDX диск.
Конвертирование доступно и через PowerShell :
Convert-VHD -Path ″D:\Hyper-V\SRV2k3.vhd″ -VHDType Fixed -DestinationPath ″D:\Hyper-V\NewSRV2k3.vhdx″ -DeleteSource
В данной строке указано — место старого и «нового» дисков(-Path и -DestinationPath) , тип диска (-VHDType Fixed, фиксированный размер) и удаление исходного диска по завершению конвертирования (-DeleteSource).
В Windows Server 2012 Hyper-V появилась поддержка нового формат виртуальных дисков – VHDX. Виртуальные диски в формате VHDX имеют много преимуществ, включая больший максимальный размер диск – 64 TB, защита от повреждения данных и многое другое. Вы можете конвертировать текущие диски в формате VHD в новый формат VHDX с помощью консоли Hyper-V Manager. В ходе процесса будет создан новый диск VHDX и скопированы данные с старого диска на новый. В конце процедуры у вас будет 2 диска – в старом формате и в новом. После успешной проверки нового диска вы можете вручную удалить старый.
- Выключаем виртуальную машину которая имеет доступ к диску.
- Открываем настройки виртуальной машины и находим нужный диск. Ждем кнопку Edit:
- Запускается мастер Edit Virtual Hard Disk Wizard. Выберите действие Convert и нажмите Next .
- Выберите формат VHDX и нажмите Next .
- Вы можете выбрать должен ли диск быть фиксированного размера или его размер может динамически меняться. Данная опция доступа независимо от того, какой тип был у диска ранее. Нажмите Next .
- Выберите имя и распложение нового VHDX диска и нажмите Next .
- Проверьте все настройки и нажмите Finish для создания нового диска. Время на создание зависит от размера исходного диска и скорости вашего жесткого диска. На моем SSD диске VHD размеров 300GB конвертировался примерно 2 минуты.
- Заключительным этапом будет подключение нового диска к виртуальной машине.
После загрузки виртуальной машины вам необходимо проверить что все в порядке. Если это так то вы можете безопасно удалить старый диск.
Для конвертации можно также воспользоваться PowerShell. В таком случае действий получается на порядок меньше:)
Convert-VHD -Path \\win2012-dc01\vms\old.vhd -DestinationPath \\win2012-dc01\vms\new.vhdx -DeleteSource -ComputerName win2012-hv01
Полезная информация