Возможность миграции виртуальных машин с одного хоста на другой была обязательной с момента создания Hyper-V. В начале, во времена Windows Server 2008, у Hyper-V была только одна возможность - автономная миграция. VM бралась в автономном режиме, перемещалась, а затем возвращалась в онлайн-режим. Это делалось с помощью функций экспорта и импорта. Хотя это и предполагало некоторую мобильность виртуальных машин, но было ограничено тем, что для VM требовалось время простоя.
Содержание:
Миграция виртуальных машин
В Hyper-V для Windows Server 2008, вы могли перемещать ВМ с одного хоста на другой, только тогда, когда виртуальная машина была в оффлайн-режиме.
Позднее, с выпуском Windows Server 2008 R2, с помощью «живой» миграции, впервые появилась возможность перенести виртуальную машину во время её работы. Однако «живая» миграция доступна только между кластерными хостами Hyper-V, где виртуальные машины находятся на общем томе кластера (CSV).
В Windows Server 2008 R2, у Hyper-V появилась возможность перемещать запущенные виртуальные машины с одного узла кластера на другой.
В Windows Server 2012, в способности переносить виртуальные машины между любыми хостами Hyper-V одной и той же версии, появился совершенно новый уровень свободы. И это не зависело от того, был ли источник или место назначения частью перехода на другой кластер ресурса.
Hyper-V Windows Server 2012 представила возможность перемещения запущенных виртуальных машин с любого хоста на любой другой хост.
Windows Server 2012 R2 продвинула «живую» миграцию ещё на шаг вперёд, предоставив первую «кросс-версию» живой миграции. ВМ могут переносить данные с любого хоста Windows Server 2012 на любой сервер Windows Server 2012 R2, независимо от его принадлежности к отказоустойчивому кластеру.
Hyper-V Windows Server 2012 R2 предоставила возможность переноса запущенных виртуальных машин с хоста под управлением Windows Server 2012 на хост под управлением Windows Server 2012 R2.
Живая миграция виртуальных машин
Windows Server 2016 перешла на следующую ступень миграции, предоставляя администраторам истинную свободу управления своими виртуальными машинами. Ранее, живая миграция работала только между хостами с той же версией Windows Server или следующей версией Windows Server.
В следующей таблице приведены доступные для Hyper-V параметры миграции, в каждой запущенной на хосте версии Windows Server:
Операционная система хоста | Опции миграции |
Windows Server2008 | Только офф-лайн миграция |
Windows Server 2008 R2 | Живая миграция только между узлами кластера |
Windows Server 2012 | Живая миграция в кластер или из него |
Windows Server 2012 R2 | Живая миграция «в» или «из» кластера, а также из нижнего уровня Windows Server |
Windows Server 2016 | Живая миграция «в» или «из» кластера, а также на сервер Windows Server верхнего уровня или на более низкий уровень |
Windows Server 2016 - единственная версия, дающая возможность "живой" миграции на хост, на котором установлена более ранняя версия Windows Server.
Hyper-V Windows Server 2016 позволяет перемещать запущенные виртуальные машины на хост с установленной более ранней версией Windows Server.
Для переноса виртуальных машин в Windows Server 2016 из более ранних версий Windows Server должно выполняться следующее условие:
- Оба хоста должны быть членами одного и того же Active Directory.
- Оба хоста должны иметь включённую функцию живой миграции.
Включение "живой" миграции не изменилось с предыдущих версий. На главном устройстве хоста откройте диалоговое окно «Параметры Hyper-V» и выберите опцию «Enable Incoming and Outgoing Live Migrations/Включить входящий и исходящий перенос в реальном времени». Затем выберите место, откуда вы хотите получать входящие живые миграции.
Механика выполнения живой миграции такая же, как в предыдущих версиях Windows Server. Существует три способа выполнения этого процесса:
- Использовать на хосте диспетчер Hyper-V
- Создать сценарий в Windows PowerShell
- Использовать диспетчер виртуальных машин (не входит в состав Windows Server)
При использовании Hyper-V Manager, щёлкните правой кнопкой мыши на виртуальной машине, которую нужно перенести, а затем в контекстном меню выберите «Переместить».
Чтобы проделать ту же операцию, с помощью Windows PowerShell, используйте командлет Move-VM. В следующем примере виртуальная машина с именем New Test VM перемещается на конечный сервер с именем Hyper-Server:
PS C:\> Move-VM "New Test VM" Hyper-Server
Имейте в виду, что, даже несмотря на то, что с Windows Server 2012 любую виртуальную машину можно перенести "живой" миграцией на любой новый Windows Server, только ВМ версии 5.0 может мигрировать из Windows Server 2016 на Windows Server 2012 R2. Версии можно просмотреть в диспетчере Hyper-V или используя командлет Get-VM в Windows PowerShell.
Примечание. Не путайте версии с поколением. Поколение 1 и Поколение 2 может быть версии 5.0. Номер версии должен относиться к версии Windows Server, который использовался для создания виртуальной машины, тогда как поколение должно относиться к доступным для VM виртуализированным аппаратным средствам.
Также важно отметить, что хотя, можно сделать "живую" миграцию виртуальных машин за пределами отказоустойчивой кластеризации, эта новая мобильность скорее всего будете использоваться в пределах отказоустойчивого кластера.
В первый раз после выпуска Windows Server 2003, средство отказоустойчивости кластеров теперь поддерживает кластеры смешанного режима. Это означает, что вы можете обновить узлы кластера Windows Server 2012 R2 до нового Windows Server 2016 при сохранении их членству в кластере. Благодаря усовершенствованиям в области мобильности, вы можете легко перемещать виртуальные машины между старыми и новыми кластерными узлами в рамках общей стратегии обновления кластера.