Виртуальные переезды для маленькой такой компании. Конвертируем виртуальные жёсткие диски VDI, VHD и VMDK с помощью программы VirtualBox Конвертирование в VHDX с помощью PowerShell

Задачу конвертирования можно выполнить несколькими способами:

VMware Converter

Можно сконвертировать :

  • "живую" включенную машину
  • машину из инфраструктуры (сферы)
  • Hyper -V Server
  • несколько других форматов

К сожалению "голый" (оффлайн ) VHD из конвертера сконвертировать не удалось, так как сам VHD был из среды Hyper -V, пришлось временно "поднять" машину, указав в качестве диска мой VHD, в настройках конвертера необходимо выбрать данный Hyper -V сервер, после подключения к нему, из списка машин выбрать требуемую (машина подлежащая конвертации должна быть выключена), в качестве получателя может выбрано несколько вариантов:

  • Инфраструктура (сфера)
  • Workstantion \ VMware virtual machine

Так же можно выбрать в какую версию конвертировать :

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

По завершению работы мастера, в списке задач будет отображено состояние \ статус новой задачи.

В принципе интерфейс довольно интуитивен и разобраться в функционале довольно просто.

StarWind V2V

Здесь все значительно проще:

  • после установки и запуска данного ПО, открывается мастер, где предлагается выбрать VHD файл
  • далее необходимо указать формат образа, в зависимости от требований:

  • далее выбрать тип диска - IDE \ SCSI
  • указать путь назначения
  • состояние процесса будет отображаться посредством строки индикации и статусом задачи

Является возможность полноценной работы с несколькими форматами виртуальных жёстких дисков. VirtualBox не только поддерживает возможность открытия сторонних виртуальных дисков, в частности, и VMDK , с которыми работают и программное обеспечение , но также предусматривает изначальное создание виртуальных машин с жёсткими VHD- и VMDK-дисками наряду с собственным форматом VDI . А вот упомянутое программное обеспечение от компаний Microsoft и VMware совсем не благосклонно к формату виртуального жёсткого диска VirtualBox – VDI. Открыть в Hyper-V или VMware Workstation виртуальную машину, установленную на VDI-диск, можно либо путём экспорта её конфигурации в файл , либо методом конвертирования диска VDI в диск VHD или VMDK.

Как осуществить конвертирование одного формата виртуального диска в другой, чтобы иметь возможность работать с гостевой операционной системой посредством нескольких программ-гипервизоров?

1. Конвертер виртуальных жёстких дисков внутри VirtualBox

Для конвертирования виртуальных жёстких дисков существует ряд специальных утилит. Утилита для конвертирования форматов виртуальных жёстких дисков имеется и в составе VirtualBox. Встроенный конвертер позволяет преобразовывать из одних в другие все поддерживаемые программой форматы виртуальных жёстких дисков — VDI, VHD, VMDK, HDD, QED, QCOW .

Рассмотрим работу встроенного конвертера VirtualBox на примере преобразования диска VHD в диск VMDK. В принципе, для открытия гостевой системы на VHD-диске в программе VMware Workstation преобразование формата диска не нужно. VMware работает с форматом Microsoft VHD. В нашем случае причиной смены формата стала экономия дискового пространства, поскольку диски VMDK на физическом компьютере занимают меньше места, чем диски VHD. При этом в дальнейшем с гостевой операционной системой можно будет работать как в VMware Workstation, так и в VirtualBox.

2. Процесс конвертирования

В окне программы VirtualBox раскрываем меню «Файл» и выбираем «Менеджер виртуальных носителей» .

В открывшемся окне этого самого менеджера виртуальных носителей, в первой вкладке «Жёсткие диски» увидим перечень виртуальных дисков, на которых установлены гостевые операционные системы, открытые в VirtualBox. Не обнаружим здесь стандартной кнопки обзора или специальной опции, чтобы можно было добавить отдельные файлы дисков VDI, VHD или VMDK, виртуальные машины которых до этого момента не запускались с помощью VirtualBox. Тем не менее, такая возможность нам представится впредь, и если необходимо конвертировать виртуальный диск гостевой системы не из списка VirtualBox, нужно выбрать любой из существующих дисков.

Выбрав из списка нужный или любой попавшийся диск, можем приступать к процессу конвертирования. Жмём кнопку вверху «Копировать» .

Далее появится окно выбора диска. Оставляем всё, как есть, если изначально выбран нужный виртуальный диск. Если это не так, с помощью кнопки обзора в конце строки с выбранным диском указываем путь к любому другому файлу VDI, VHD или VMDK, который хранится на компьютере. Жмём «Next» .

Следующее окно – выбор формата виртуального жёсткого диска на выходе. В нашем случае исходный формат диска VHD будет преобразован в формат VMware Workstation — VMDK. Жмём «Next» .

В окне задания формата хранения виртуального диска необходимо выбрать его тип – динамический или фиксированный. Жмём «Next» .

Далее следует задание названия нового виртуального диска и место его хранения. По умолчанию VirtualBox добавляет к имени файла диска отметку «_копия», а местом хранения определяет папку с исходным конвертируемым файлом. Эти данные можно изменить. Чтобы назначить другое место сохранения файла на выходе, необходимо нажать кнопку обзора в конце строки с названием нового диска. После внесения правок можем приступать непосредственно к самому процессу конвертирования. Жмём кнопку внизу «Копировать» .

Время конвертирования будет напрямую зависеть от объёмов исходного файла виртуального жёсткого диска.

По окончании процесса конвертирования виртуальный жёсткий диск уже в новом формате можем наблюдать в папке хранения.

Всё – теперь можно его использовать для создания виртуальных машин с задействованием существующих виртуальных дисков, на которых уже установлены гостевые системы.

Помогла ли вам данная статья?

Любой переезд всегда связан с хлопотами. Переезд виртуальных машин не исключение. Я не говорю сейчас о том случае, когда легкая миграция виртуальных машин с одной хост-системы на другую является одним из несомненных плюсов виртуализации вообще, я говорю о другом, о нечастом, но всё же случае смены системы виртуализации или переселении ОС с физической машины в новый многоквартирный виртуальный дом.

Перевезём бесплатно

Далее речь пойдёт о некоторых инструментах, которые могут пригодиться в этом хлопотном деле. Указание на размер компании в заголовке не случайное, договоримся, что на собственно переезд мы готовы потратить только время.

Виды услуг

Прежде всего, полезно будет упомянуть о двух старейших способах. Во-первых, это полный бэкап и восстановление, во-вторых, подготовка, снятие образа и его последующее развёртывание в новой среде. Оба способа многократно описаны различными авторами (по этой причине я данный вариант пропущу), они универсальны и пригодны как для физических, так и для виртуальных машин.

Второй вариант – создание образа непосредственно из работающей системы в формат виртуального жёсткого диска, пригодного для загрузки системы в виртуальной среде. Вариант подходит для переноса действующих систем из физической в виртуальную среду (P2V) или из одной системы виртуализации в другую.

Третий вариант – конвертация файлов виртуальных жёстких дисков из формата одной системы виртуализации в формат другой, для переноса виртуальных машин из одной системы виртуализации в другую (V2V). Вариант наиболее быстрый, но для загрузочных разделов хорошо подходит только для операционных систем, способных после установки загружаться на широком спектре оборудования (чаще всего это системы с System V или BSD стилем инициализации), либо потребует предварительной подготовки, аналогичной подготовке перед снятием образа из первого варианта.

Именно о двух последних вариантах и поговорим дальше.

Поехали!

Две системы виртуализации, с которыми мне доводилось работать наиболее плотно, это продукты линейки VMWare (формат дисков VMDK) и Microsoft Hyper-V (формат VHD), причём со второй я познакомился, когда она была и не Hyper-V, и не Microsoft. :) Вряд ли ошибусь, если предположу, что в этих двух системах "живёт" наибольшее количество виртуальных серверов в серверных комнатах и датацентрах всего мира (хотя Citrix активно работает и постепенно отгрызает у них существенную долю рынка виртуализации), так что предлагаю пока сосредоточиться пока на них.

VMware Converter

Очень простая утилита под Windows, исходный и целевой форматы конвертирования отражены в названии. Программа не обновлялась с 2006 года и актуальность её сейчас, тем более учитывая существование описанных выше программ, сомнительна.

В комментариях к этой записи приветствую упоминания о других программных инструментах, облегчающих P2V и V2V переносы систем, в том числе в другие среды виртуализации, не упомянутые в этой заметке.

Сегодня хотим поведать о том, как конвертировать образы дисков виртуальных машин из одного формата в другой. Допустим у нас есть виртуальная машина, развернутая в среде виртуализации 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

После этого, можно зайти в папку, куда будет помещен сконвертированный файл и наблюдать за тем как увеличивается его размер.

В Windows Server 2012 Hyper-V появилась поддержка нового формат виртуальных дисков – VHDX. Виртуальные диски в формате VHDX имеют много преимуществ, включая больший максимальный размер диск – 64 TB, защита от повреждения данных и многое другое. Вы можете конвертировать текущие диски в формате VHD в новый формат VHDX с помощью консоли Hyper-V Manager. В ходе процесса будет создан новый диск VHDX и скопированы данные с старого диска на новый. В конце процедуры у вас будет 2 диска – в старом формате и в новом. После успешной проверки нового диска вы можете вручную удалить старый.

Запускается мастер 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 -Compu