Как перенести виртуальную машину hyper v на другой компьютер
Как перенести виртуальную машину hyper v на другой компьютер
Добрый день уважаемые читатели блога, я продолжаю знакомить вас с виртуализацией на базе Microsoft Hyper-V 3.0 и сегодня мы рассмотрим, как переместить виртуальную машину, с одного хоста на другой, в идеале без простоев и без наличия централизованных утилит управления, по типу SCVMM 2012 R2 и без общего хранилища. Думаю для начинающих системных администраторов, это будет полезно.
live migration в Hyper-V
Перемещение виртуальной машины или как его еще называют live migration, появилась в рабочем виде только в Hyper-V 3.0 в операционной системе Windows Server 2012 R2. В данной версии его существенно улучшили и теперь он работает без общего хранилища и без кластера, от вас лишь в идеале потребуется гигабитное сетевое подключение, между участниками перемещения.
Что переносится при live migration
Сразу хочу отметить, что live migration это не замена отказоустойчивого кластера, рассматривайте ее как дополнение, которое позволяет подготавливать инфраструктуру к созданию кластера, она вам поможет например в случае, когда один из серверов ломается, и нужно мигрировать без простоя виртуальные машины.
Требования live migration
Давайте определимся, что необходимо для успешного перемещения виртуальной машины на Hyper-V 3.0:
И так на первом хосте, у меня есть виртуальная машина с именем dc7, ее я хочу переместить на другой хост Hyper-V. Для этого щелкаем по ней правым кликом и выбираем переместить.
первое окно мастера можно сразу пропускать, оно не несет ни какой полезности.
Далее у вас два варианта перемещения:
Следующим шагом, будет указание сервера, на который вы перевозите, так как у меня сервера, являются членами домена, то я делаю это через поиск по нему.
Далее задаем папку сохранения.
Все начинается процедура перемещения, если у вас не включена динамическая миграция, то вы можете получить ошибку 0x8009030E, посмотрите как она решается.
Хочу напомнить, что на момент перемещения, ваш виртуальный сервер будет доступен, можете проверить, через команду пинг.
В диспетчере задач, можно про мониторить загрузку сети при перемещении.
Как видите в процессе живой миграции на хостах Hyper-V 3.0, без общего хранилища, нет ничего сложно, в принципе все понятно на интуитивном уровне и Microsoft, с каждым релизом упрощает жизнь системным администраторам.
Экспорт и импорт виртуальных машин
применимо к: Windows Server 2022, Windows 10, Windows Server 2016, Microsoft Hyper-V Server 2016, Windows server 2019, Microsoft Hyper-V server 2019
В этой статье показано, как экспортировать и импортировать виртуальную машину, что является быстрым способом их перемещения или копирования. В этой статье также обсуждаются некоторые варианты, которые необходимо выполнить при экспорте или импорте.
Экспорт виртуальной машины
Экспорт собирает все необходимые файлы в одну единицу — файлы виртуального жесткого диска, файлы конфигурации виртуальной машины и файлы контрольных точек. Это можно сделать на виртуальной машине, которая находится в запущенном или остановленном состоянии.
Использование диспетчера Hyper-V
Чтобы экспортировать виртуальную машину:
В диспетчере Hyper-V щелкните правой кнопкой мыши виртуальную машину и выберите пункт Экспорт.
Выберите место хранения экспортируемых файлов и нажмите кнопку Экспорт.
После завершения экспорта можно просмотреть все экспортированные файлы в расположении экспорта.
Использование PowerShell
Откройте сеанс от имени администратора и выполните команду, как показано ниже, после замены и пути виртуальной машины <> :
Дополнительные сведения см. в разделе Export-VM.
Импорт виртуальной машины
При импорте виртуальной машины она регистрируется на узле Hyper-V. Вы можете выполнить импорт в узел или на новый узел. При импорте в тот же узел вам не нужно сначала экспортировать виртуальную машину, так как Hyper-V пытается повторно создать виртуальную машину из доступных файлов. Импорт виртуальной машины регистрирует ее, чтобы ее можно было использовать на узле Hyper-V.
Мастер импорта виртуальных машин также помогает устранить несовместимости, которые могут существовать при переходе с одного узла на другой. Обычно это различие в физическом оборудовании, таком как память, виртуальные коммутаторы и виртуальные процессоры.
Импорт с помощью диспетчера Hyper-V
Чтобы импортировать виртуальную машину, выполните следующие действия.
В меню действия в диспетчере Hyper-V щелкните Импорт виртуальной машины.
Щелкните Далее.
Выберите папку, содержащую экспортированные файлы, и нажмите кнопку Далее.
Выберите виртуальную машину для импорта.
Выберите тип импорта и нажмите кнопку Далее. (Описание см. в разделе типы импортаниже.)
Нажмите кнопку Готово.
Импорт с помощью PowerShell
Регистрация на месте
Этот тип импорта использует файлы, где они хранятся во время импорта, и хранит идентификатор виртуальной машины. Следующая команда показывает пример файла импорта. Выполните аналогичную команду со своими собственными значениями.
Восстановить
Чтобы импортировать виртуальную машину, указав собственный путь к файлам виртуальной машины, выполните команду, подобную следующей, заменив примеры значениями.
Импортировать как копию
Чтобы завершить импорт и переместить файлы виртуальной машины в расположение Hyper-V по умолчанию, выполните команду, подобную следующей, заменив примеры значениями.
Дополнительные сведения см. в статье Импорт-виртуальная машина.
Типы импорта
Hyper-V предлагает три типа импорта:
Регистрация на месте Этот тип предполагает, что файлы экспорта находятся в расположении, где вы храните и запускаете виртуальную машину. Импортированная виртуальная машина имеет тот же идентификатор, что и во время экспорта. Поэтому, если виртуальная машина уже зарегистрирована в Hyper-V, ее необходимо удалить перед тем, как будет работать импорт. После завершения импорта файлы экспорта становятся файлами выполняющегося состояния и не могут быть удалены.
Восстановление виртуальной машины Восстановите виртуальную машину в выбранное расположение или используйте по умолчанию Hyper-V. Этот тип импорта создает копию экспортированных файлов и перемещает их в выбранное расположение. При импорте идентификатор виртуальной машины такой же, как и при экспорте. Поэтому, если виртуальная машина уже запущена в Hyper-V, ее необходимо удалить перед завершением импорта. После завершения импорта экспортированные файлы остаются неизменными и могут быть удалены или импортированы снова.
Копирование виртуальной машины Это похоже на тип восстановления в том, что выбрано расположение для файлов. Разница заключается в том, что импортированная виртуальная машина имеет новый уникальный идентификатор. Это означает, что виртуальную машину можно импортировать на один узел несколько раз.
Импорт и экспорт в Hyperv или перенос виртуальных машин
Импорт и экспорт в Hyper V это возможность копирование и переноса виртуальных машин. Эта возможность используется в тестовой среде, когда у нас есть образ или шаблон машины и для переноса с одного сервера на другой. Я так же слышал, что кто-то использует эту возможность как резервное копирование. Мы рассмотрим на примерах с GUI и в Powershell.
Если вы хотите создать шаблон виртуальной машины, то перед экспортом нужно сделать sysprep. Что бы просто перенести виртуальную машину Hyper V этого делать не надо.
Либо запустить файл sysprep.exe в этой папке:
И подтвердить действия с этими настройками:
После окончания работы утилиты компьютер выключится и его нельзя будет включать. Если вы его включите, то идентификаторы сгенерируются и операцию нужно будет проделывать заново.
Экспорт Hyper V
Теперь выполним экспорт виртуальной машины Hyper V, в этот момент ВМ может быть включена. Нажмите на нее правой кнопкой и найдите кнопку экспорта:
Выберете путь, куда хотите экспортировать ВМ и нажмите кнопку подтверждения. ВМ будет экспортирована со всеми настройками и виртуальным диском:
После этого мы выполнили в Hyper V копирование виртуальной машины.
Импорт Hyper V
Что бы выполнить в Hyper V импорт виртуальной машины нажмите следующую кнопку:
После стартового окна нам нужно будет выбрать папку, куда мы экспортировали ВМ:
Проверяем, что имя ВМ совпадает с той, которую мы хотим импортировать:
На следующем окне у нас появляется три возможных пункта клонирования виртуальной машины Hyper V. Так как ВМ тоже имеет уникальные идентификаторы этот пункт очень важен:
Если в этот момент уже работает ВМ с этим идентификатором, то мы получим ошибку:
The operation failed because a virtual machine with the same identifier already exists. Select a new identifier and try the operation again.
Ошибка загрузки конфигурации виртуальной машины hyper v
Я выполню копирование машины, но остальные варианты аналогичны:
В случае с копированием мы можем выбрать новое расположение файлов чекпоинтов, конфигураций и кэша либо использовать установленное по умолчанию:
В этом окне выбирается расположение диска:
В этой ВМ адаптер подключен к другому коммутатору и его не существует на этом хосте гипервизора. Проверка коммутаторов идет по именам и если раньше коммутатор, на этом же хосте, назывался ‘Ext 1’, а затем был удален или переименован на ‘Ext 01’ вы тоже получите ошибку. Можно выбрать новый коммутатор или пропустить этот шаг:
На последнем шаге мы проверяем введенные данные и нажимаем кнопку подтверждения:
После этого ВМ импортируется и вам может понадобится подключиться к коммутатору и переименовать ее.
В обоих случаях вам нужно зайти в настройки ВМ:
Для переименовывания машины нужно зайти на вкладку «Имя»:
Если сетевых адаптеров у ВМ нет, то нужно зайти во вкладку добавления устройств и добавить сетевой адаптер:
А затем подключить к коммутатору:
После этого в Hyper V виртуальная машина будет подключена и ее можно запускать.
Экспорт и импорт виртуальной машины Hyper V в Powershell
Все команды имеют ключ ComputerName, а значит перенос виртуальной машины Hyper V может делаться на удаленном компьютере.
Получим список ВМ Hyper V, что бы узнать какую машину экспортировать:
Что бы через консоль Powershell в Hyper V скопировать виртуальную машину, в базовом варианте, нужно сделать следующее:
Так как мы можем выполнить клонирование и включенной машины, то у нас есть несколько способов манипулировании с памятью. Для этого есть ключ CaptuteLiveState, которого нет в версии Windows Server 2012 r2 и ниже, со значениями:
По умолчанию используется CaptureSavedState.
Для импорта есть три варианта сохранения идентификаторов, которые описывались выше.
Если вы решили импортировать ВМ, которая уже находиться в нужной папке и с сохранением идентификаторов сделайте так:
Import-VM : Failed to create virtual machine. The operation failed because a virtual machine with the same identifier already exists. Select a new identifier and try the operation again.
Для импорта ВМ, с сохранением идентификаторов, но в новое место на диске выполните:
В случае копирования VM с генерированием нового идентификатора можно сделать так:
В этом случае все файлы будут перемещены в папку, которая была указана в настройках Hyper V. Операция клонирования выполнена.
Экспорт и импорт виртуальных машин Hyper-V
Функция «Поделиться» Hyper-V в Windows 10
Прогресс создания этого файла будем наблюдать внизу окна подключения.
Функция экспорта-импорта машин Hyper-V
Классическая функция экспорта машин Hyper-V, в отличие от рассмотренной функции «Поделиться» и механизмов экспорта машин других гипервизоров, не предусматривает сжатие файлов машины в некий посредничающий файл-архив. Экспорт машин в гипервизоре от Microsoft – это обычное копирование файлов машины.
Т.е. содержимое экспорта – это точные копии файлов машины, разложенные по папкам, как и её исходные файлы.
А классический импорт машин – это не извлечение данных из посредничающего файла-архива, а добавление машины по пути хранения её файлов в окно диспетчера Hyper-V. При этом функция импорта является универсальным решением и для переноса машин, и для их копирования, и для их перерегистрации в диспетчере после удаления оттуда или переустановки хостовой Windows. Рассмотрим эти операции.
Перенос машин Hyper-V
Если необходимо перенести машину Hyper-V в другое место на диске, можем просто удалить машину из окна диспетчера Hyper-V и с помощью обычного проводника Windows перенести файлы машины куда нам надо. Ну а если машину перенести надо на другой компьютер, можем упаковать её файлы в обычный архив и извлечь его на другом компьютере. А вот если мы захотим перенести или скопировать машину не в её текущем состоянии, а в состоянии, запечатлённом в снимке контрольной точки, мы это сможем сделать только путём экспорта контрольной точки в диспетчере Hyper-V.
После запуска операции экспорта указываем путь, куда будут сохранены файлы машины, и жмём «Экспорт».
Переместив в нужное место файлы оригинальной виртуальной машины или экспортировав снимок её контрольной точки, запускаем функцию импорта на панели операций диспетчера Hyper-V.
Жмём «Далее».
Указываем путь хранения перемещённых или экспортированных файлов машины.
Если мы указали путь общей папки хранения машин, то выбираем какую-то конкретную машину.
Жмём «Готово».
Всё – машина импортирована.
Перерегистрация машин Hyper-V
Копирование машин Hyper-V
Жмём «Далее».
На этапе выбора типа импорта выбираем копирование машины.
Создаём на диске папку для файлов клона и прописываем эти пути на следующем этапе мастера импорта.
Далее указывать путь хранения диска машины-клона. Для него можно создать по пути хранения файлов клона специальную подпапку.
Жмём «Готово».
По завершении копирования будем наблюдать клон в окне диспетчера Hyper-V.
А чтобы не путать его с оригиналом, можем переименовать машину.
Экспорт и импорт виртуальной машины Hyper-V
Экспорт и импорт виртуальной машины Hyper-V
Мини-приложения для 11
Как отключить мини-приложения в 11
Как вернуть старое контекстное меню в 11
Не запускается PC Health Check на 11
Не могу обновиться до 11
Механизм экспорта-импорта в гипервизоре Hyper-V предназначен для перемещения виртуальных машин с одного компьютера или сервера на другой. Экспорт – это, по сути, копирование виртуальной машины с полным сохранением ее конфигурации. При экспорте копируется виртуальный жесткий диск, настройки оборудования, сохраненный момент работы гостевой ОС, созданные контрольные точки (снапшоты).
Механизм экспорта-импорта Hyper-V также можно использовать для создания на том же сервере или на том же компьютере виртуальной машины-клона для тестирования и взаимодействия с виртуальной машиной-оригиналом. Машина-клон может получить другой ID (идентификатор), другой внутренний IP-адрес в сети Hyper-V, вследствие чего, по сути, не будет ничем отличаться от виртуальных машин, созданных с нуля.
Ниже рассмотрим процесс экспорта-импорта виртуальной машины на примере Hyper-V, входящего в состав Windows 10, детальнее.
Рассматриваемые вопросы:
1. Экспорт виртуальной машины
Одним из преимуществ новой версии Hyper-V, вошедшей в состав Windows Server 2012 R2, клиентских систем Windows 8.1 и 10, является способность осуществлять некоторые ресурсоемкие задачи, в частности, экспорт на лету, в процессе работы виртуальной машины, без ее остановки, даже без приостановки. Экспорт осуществляется в фоновом режиме, он проходит не быстро, поскольку задействует небольшое количество системных ресурсов, оставляя пользователю возможность работать с виртуальной машиной дальше.
Как осуществляется экспорт виртуальной машины? Выбираем в диспетчере Hyper-V нужную виртуальную машину, вызываем контекстное меню. Нам нужна команда «Экспорт».
Далее используем кнопку обзора и указываем путь хранения файлов экспорта. Жмем «Экспорт».
2. Экспорт снимка виртуальной машины
Еще одна относительно новая функция Hyper-V, которой не было в старых серверных версиях Windows – возможность экспорта отдельной контрольной точки, то есть, виртуальной машины в состоянии на момент создания этой контрольной точки. Ранее гипервизор Microsoft предусматривал только экспорт-импорт всей виртуальной машины. И в случае, если нужно было состояние какой-то отдельной контрольной точки, приходилось экспортировать виртуальную машину со всеми ее контрольными точками, а после импорта делать откат к нужной. Сейчас Hyper-V позволяет экспортировать каждую отдельную контрольную точку. Экспортировав отдельный снапшот, его можно затем импортировать как новую виртуальную машину, в частности, со своим уникальным идентификатором на том же сервере или компьютере.
Чтобы осуществить экспорт виртуальной машины из контрольной точки, выбираем в диспетчере Hyper-V и машину, и контрольную точку. На последней вызываем контекстное меню и выбираем «Экспорт».
3. Надежность формата экспорта Hyper-V
Экспорт виртуальной машины Hyper-V осуществляется не в какой-нибудь отдельный сжатый формат файла, куда помещаются и виртуальный жесткий диск, и файлы конфигурации, и сохраненное состояние гостевой ОС, как, например, это предлагается механизмом экспорта-импорта в программе VirtualBox. В случае с виртуальными машинами VirtualBox экспорт-импорт возможен при участии посредника – файла формата OVA. При повреждении этого файла импорт виртуальной машины VirtualBox может не состояться. А вот в случае с Hyper-V экспорт виртуальной машины означает полное копирование виртуального жесткого диска в исходном его формате – VHDX (или VHD).
Таким образом, если прочие данные экспорта повредятся, виртуальную машину все равно можно будет воссоздать. Нужно будет средствами Hyper-V создать новую виртуальную машину, использовав существующий файл VHDX (VHD).
4. Импорт виртуальной машины
Экспортированную виртуальную машину в дальнейшем можно импортировать в совместимой версии Hyper-V в составе серверных редакций Windows и клиентских Windows 8.1 и 10.
Для импорта виртуальной машины выбираем соответствующую функцию в диспетчере Hyper-V.
Жмем «Далее» в окне приветствия мастера.
В следующем окне используем кнопку обзора и указываем путь к папке с экспортированной виртуальной машиной. Жмем «Далее».
Выбираем нужную виртуальную машину, если в указанной папке их несколько. Жмем «Далее».
Затем нужно сделать выбор, как будет импортирована виртуальная машина. Если таковая перенесена с другого сервера или компьютера, можно использовать первый тип импорта, предусматривающий ее регистрацию с использованием исходного идентификатора. Этот вариант регистрирует виртуальную машину в той же папке, где хранятся файлы ее экспорта, следовательно, не будет затрачено время на копирование файлов.
Второй тип импорта также подойдет для случаев переноса виртуальной машины с другого сервера или компьютера, но при его использовании экспортированные файлы будут перенесены в указанную папку. Идентификатор виртуальной машины при этом останется прежним.
Если виртуальная машина перемещается в рамках одного сервера или компьютера, следует использовать третий тип импорта, предусматривающий генерирование нового идентификатора. Ведь на одном физическом компьютере не может быть виртуальных машин Hyper-V с одинаковым идентификатором.
В нашем случае имеет место быть копирование виртуальной машины, это третий тип импорта. Жмем «Далее».
Путь хранения файлов конфигурации, контрольных точек и прочих данных импортируемой виртуальной машины, указанный Hyper-V по умолчанию, можно сменить. Необходимо установить галочку смены места хранения и вручную указать нужные пути.
В нашем случае просто допишем в пути (через слеш) создание отдельной папки «Копия». Жмем «Далее».
Этот же путь укажем и для файла VHDX, чтобы все находилось в одном месте. Жмем «Далее».
Завершающий этап мастера – сводка данных импорта. Жмем «Готово».
Теперь в нашем случае в диспетчере Hyper-V имеется две одинаковые виртуальные машины. Они с разными идентификаторами, но у них одно и то же название. Сменим название только что импортированной виртуальной машины.
Все – процесс импорта осуществлен. Импортированную виртуальную машину можно запускать и тестировать.