Поделиться через


Масштабная миграция виртуальных машин VMware

Эта статья поможет вам понять, как использовать сценарии для миграции большого количества виртуальных машин VMware с помощью безагентного метода. Чтобы масштабировать миграцию, используйте модуль PowerShell для службы "Миграция Azure".

Примечание.

В настоящее время эта сквозная документация по сценариям миграции VMware доступна в предварительной версии. Дополнительные сведения об использовании службы "Миграция Azure" см. в документации по продукту службы "Миграция Azure".

Сценарии автоматизации миграции Azure Migration VMware доступны для скачивания в репозитории примеров Azure PowerShell на GitHub. Сценарии можно использовать для миграции виртуальных машин VMware в Azure с помощью метода безагентной миграции. Используемые в этих сценариях команды PowerShell для службы "Миграция Azure" описаны здесь.

Текущие ограничения

  • Эти скрипты поддерживают миграцию виртуальных машин VMware со всеми дисками. Вы можете изменить сценарии, если хотите выборочно реплицировать диски, подключенные к виртуальной машине VMware.
  • Сценарии поддерживают использование рекомендаций по оценке. Если рекомендации по оценке не используются, все диски, подключенные к виртуальной машине VMware, переносятся на один и тот же управляемый тип диска (цен. категория "Стандартный" или "Премиум"). Вы можете обновить сценарии, если вы хотите использовать несколько типов управляемых дисков с одной виртуальной машиной.

Необходимые компоненты

Установка модуля PowerShell для Миграции Azure

Модуль PowerShell для Миграции Azure доступен в предварительной версии. Необходимо установить модуль PowerShell с помощью следующей команды.

Install-Module -Name Az.Migrate 

Входной CSV-файл

После завершения всех предварительных требований необходимо создать CSV-файл с данными каждой исходной виртуальной машины, которую требуется перенести. Все сценарии предназначены для работы с одним и тем же CSV-файлом. Пример шаблона CSV-файла доступен в папке сценариев для справки. Этот CSV-файл можно настроить таким образом, чтобы можно было использовать рекомендации по оценке и даже указывать определенные операции, которые не должны активироваться для той или иной виртуальной машины.

Примечание.

Один и тот же CSV-файл можно использовать для миграции виртуальных машин в несколько проектов службы "Миграция Azure".

Схема CSV-файла

Заголовок столбца Description
AZMIGRATEPROJECT_SUBSCRIPTION_ID Укажите идентификатор подписки для проекта службы "Миграция Azure".
AZMIGRATEPROJECT_RESOURCE_GROUP_NAME Укажите имя группы ресурсов для службы "Миграция Azure".
AZMIGRATEPROJECT_NAME Укажите имя проекта для службы "Миграция Azure", в который требуется перенести серверы.
SOURCE_MACHINE_NAME Укажите понятное имя (отображаемое имя) для обнаруженной виртуальной машины в проекте "Миграция Azure".
AZMIGRATEASSESSMENT_NAME Укажите имя оценки, которую необходимо использовать для миграции.
AZMIGRATEGROUP_NAME Укажите имя группы, которая использовалась для оценки службой "Миграция Azure".
TARGET_RESOURCE_GROUP_NAME Укажите имя группы ресурсов Azure, в которую необходимо перенести виртуальную машину.
TARGET_VNET_NAME Укажите имя виртуальной сети Azure, которую должна использовать перенесенная виртуальная машина.
TARGET_SUBNET_NAME Укажите имя подсети в целевой виртуальной сети, которую должна использовать перенесенная виртуальная машина. Если осталось пустым, будет использоваться подсеть по умолчанию.
TARGET_MACHINE_NAME Укажите имя, которое должна использовать перенесенная виртуальная машина в Azure. Если осталось пустым, будет использоваться имя исходного компьютера.
TARGET_MACHINE_SIZE Укажите единицу хранения запасов (SKU), которую виртуальная машина должна использовать в Azure. Например, чтобы перенести виртуальную машину в виртуальную машину D2_v2 в Azure, укажите в этом поле значение "Standard_D2_v2". Если вы используете оценку, это значение будет выведено на основе рекомендации по оценке.
LICENSE_TYPE Укажите, следует ли использовать программу "Преимущество гибридного использования Azure" для виртуальных машин Windows Server. Используйте значение "WindowsServer", чтобы воспользоваться возможностями программы "Преимущество гибридного использования Azure". В противном случае оставьте его пустым или используйте NoLicenseType.
OS_DISK_ID Укажите идентификатор диска для операционной системы переносимой виртуальной машины. Используемый идентификатор диска — свойство, определяющее уникальный идентификатор (UUID) диска и извлекаемое с помощью командлета Get-AzMigrateServer. Если значение не указано, первый диск виртуальной машины будет использоваться в сценарии в качестве диска операционной системы.
TARGET_DISKTYPE Укажите тип диска, к которому будут относиться все диски виртуальной машины в Azure. Выберите "Premium_LRS" для управляемых дисков уровня "Премиум", "StandardSSD_LRS" — для дисков SSD уровня "Стандартный" и "Standard_LRS" — для жестких дисков уровня "Стандартный". Если вы решите использовать оценку, сценарий будет определять приоритет с использованием рекомендуемых типов дисков для каждого диска виртуальной машины. Если вы не используете оценку или не указываете никакого значения, в сценарии будут по умолчанию использоваться жесткие диски уровня "Стандартный".
AVAILABILITYZONE_NUMBER Укажите номер зоны доступности для перенесенной виртуальной машины. Вы можете оставить это пустым, если вы не хотите использовать зоны доступности.
AVAILABILITYSET_NAME Укажите имя группы доступности для перенесенной виртуальной машины. Этот параметр можно оставить пустым, если вы не хотите использовать группу доступности.
TURNOFF_SOURCESERVER Укажите "Y", если вы хотите отключить исходную виртуальную машину во время миграции. В противном случае укажите "N". Если оставить пустым, скрипт предполагает значение "N".
TESTMIGRATE_VNET_NAME Укажите имя виртуальной сети для тестовой миграции.
UPDATED_TARGET_RESOURCE_GROUP_NAME Если вы хотите обновить группу ресурсов, которая будет использоваться перенесенной виртуальной машиной в Azure, укажите имя группы ресурсов Azure, а затем оставьте ее пустой.
UPDATED_TARGET_VNET_NAME Если вы хотите обновить виртуальная сеть для использования перенесенной виртуальной машиной в Azure, укажите имя виртуальная сеть Azure, а затем оставьте его пустым.
UPDATED_TARGET_MACHINE_NAME Если вы хотите обновить имя, которое будет использоваться перенесенной виртуальной машиной в Azure, укажите новое имя, а затем оставьте его пустым.
UPDATED_TARGET_MACHINE_SIZE Если вы хотите обновить номер SKU, который будет использоваться перенесенной виртуальной машиной в Azure, укажите новый номер SKU, который будет использоваться, в противном случае оставьте его пустым.
UPDATED_AVAILABILITYZONE_NUMBER Если вы хотите обновить зону доступности, используемую перенесенной виртуальной машиной в Azure, укажите новую зону доступности, которую необходимо использовать, в противном случае оставьте ее пустой.
UPDATED_AVAILABILITYSET_NAME Если вы хотите обновить набор доступности, который будет использоваться перенесенной виртуальной машиной в Azure, укажите новый набор доступности, который будет использоваться, в противном случае оставьте его пустым.
UPDATE_NIC1_ID Укажите подлежащий обновлению идентификатор сетевой карты. Если оставить пустым, скрипт предполагает, что значение должно быть первой сетевой картой обнаруженной виртуальной машины. Если вы не хотите обновить сетевой адаптер виртуальной машины, оставьте все поля, содержащие имя сетевого адаптера, пустым.
UPDATED_TARGET_NIC1_SELECTIONTYPE Укажите значение для этой сетевой карты. Используйте "Primary", "Secondary" или "DoNotCreate", чтобы указать, должен ли этот сетевой адаптер быть основным, вторичным или не должен быть создан на перенесенной виртуальной машине. Для виртуальной машины можно задать только одну основную сетевую карту. Оставьте поле пустым, если не хотите выполнять обновление.
UPDATED_TARGET_NIC1_SUBNET_NAME Укажите имя подсети для сетевой карты на перенесенной виртуальной машине. Оставьте поле пустым, если не хотите выполнять обновление.
UPDATED_TARGET_NIC1_IP Укажите адрес IPv4, который будет использоваться сетевым адаптером на перенесенной виртуальной машине, если нужно использовать статический IP. Если вы хотите автоматически назначить этот IP-адрес, выберите значение "auto". Оставьте поле пустым, если не хотите выполнять обновление.
UPDATE_NIC2_ID Укажите подлежащий обновлению идентификатор сетевой карты. Если оставить это поле пустым, сценарием предполагается, что значение является вторым сетевым адаптером обнаруженной виртуальной машины. Если обновлять сетевую карту виртуальной машины не нужно, оставьте пустыми все поля с именем сетевой карты.
UPDATED_TARGET_NIC2_SELECTIONTYPE Укажите значение для этой сетевой карты. Задайте значение "Primary","Secondary" или "DoNotCreate", чтобы указать, какой должна ли быть сетевая карта на перенесенной виртуальной машине основной или дополнительной, либо указать, что ее не нужно там создавать. Для виртуальной машины можно задать только одну основную сетевую карту. Оставьте поле пустым, если не хотите выполнять обновление.
UPDATED_TARGET_NIC2_SUBNET_NAME Укажите имя подсети для сетевой карты на перенесенной виртуальной машине. Оставьте поле пустым, если не хотите выполнять обновление.
UPDATED_TARGET_NIC2_IP Укажите адрес IPv4, который будет использоваться сетевым адаптером на перенесенной виртуальной машине, если нужно использовать статический IP. Если вы хотите автоматически назначить этот IP-адрес, выберите значение "auto". Оставьте поле пустым, если не хотите выполнять обновление.
OK_TO_UPDATE Выберите "Y", чтобы указать, что нужно обновлять свойства виртуальной машины при запуске сценария AzMigrate_UpdateMachineProperties. В противном случае выберите "N" или оставьте поле пустым.
OK_TO_MIGRATE Выберите "Y", чтобы указать, что следует перенести виртуальную машину при запуске сценария AzMigrate_StartMigration. Выберите "N" или оставьте поле пустым, если не планируете переносить виртуальную машину.
OK_TO_USE_ASSESSMENT Выберите "Y", чтобы указать, что виртуальная машина должна запускать репликацию с учетом рекомендаций оценки при запуске сценария AzMigrate_StartReplication. Это приведет к переопределению значений TARGET_MACHINE_SIZE и TARGET_DISKTYPE в CSV-файле. Выберите "N" или оставьте поле пустым, если не хотите использовать рекомендации оценки.
OK_TO_TESTMIGRATE Выберите "Y", чтобы указать, что при запуске сценария AzMigrate_StartTestMigration нужно выполнять тестовую миграцию виртуальной машины. Выберите "N" или оставьте поле пустым, если не хотите выполнять тестовую миграцию виртуальной машины.
OK_TO_RETRIEVE_REPLICATIONSTATUS Выберите "Y", чтобы указать, что при запуске сценария AzMigrate_ReplicationStatus следует обновлять состояние репликации виртуальной машины. Выберите "N" или оставьте поле пустым, если не хотите обновлять состояние репликации.
OK_TO_CLEANUP Выберите "Y", чтобы указать, что при запуске сценария AzMigrate_StopReplication следует удалять сведения о репликации виртуальной машины. В противном случае выберите "N" или оставьте поле пустым.
OK_TO_TESTMIGRATE_CLEANUP Выберите "Y", чтобы указать, что при запуске сценария AzMigrate_CleanUpTestMigration следует удалять сведения о тестовой миграции виртуальной машины. В противном случае выберите "N" или оставьте поле пустым.

Выполнение сценария

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

Шаг № Имя сценария Description
1 AzMigrate_StartReplication.ps1 Включите репликацию для всех виртуальных машин, указанных в CSV-файле. Сценарий генерирует выходные данные в формате CSV и файл журнала для устранения неполадок.
2 AzMigrate_ReplicationStatus.ps1 Проверьте состояние репликации. Сценарий генерирует выходные данные в формате CSV со сведениями о состоянии каждой виртуальной машины и файл журнала для устранения неполадок.
3 AzMigrate_UpdateMachineProperties.ps1 По окончании начальной репликации виртуальных машин используйте этот сценарий для обновления целевых свойств виртуальной машины (свойств вычислительных ресурсов и сети). Сценарий генерирует выходные данные в формате CSV со сведениями о задании для каждой виртуальной машины.
4 AzMigrate_StartTestMigration.ps1 Запустите тестовую отработку отказа для всех указанных в CSV-файле виртуальных машин, которые настроены для тестовой миграции. Сценарий генерирует выходные данные в формате CSV со сведениями о задании для каждой виртуальной машины.
5 AzMigrate_CleanUpTestMigration.ps1 После того как вы вручную проверите виртуальные машины, где выполнялась тестовая отработка отказа, используйте этот сценарий для очистки перечисленных в CSV-файле виртуальных машин, участвовавших в тестовой отработке отказа и настроенных для удаления сведений о тестовой миграции. Сценарий генерирует выходные данные в формате CSV со сведениями о задании для каждой виртуальной машины.
6 AzMigrate_StartMigration.ps1 Запустите миграцию всех перечисленных в CSV-файле виртуальных машин, которые настроены для миграции. Сценарий генерирует выходные данные в формате CSV со сведениями о задании для каждой виртуальной машины.
7 AzMigrate_StopReplication.ps1 Останавливает репликацию виртуальной машины после ее успешной миграции или отмены репликации по другим причинам. Сценарий генерирует выходные данные в формате CSV со сведениями о задании для каждой виртуальной машины.

Следующие сценарии вызываются другими сценариями для всех операций службы "Миграция Azure", таких как включение репликации, запуск тестовой миграции, обновление свойств виртуальной машины и т. д. Убедитесь, что все сценарии находятся в одной папке или имеют одинаковый путь.

Шаг № Имя сценария Description
1 AzMigrate_Shared.ps1 Общий сценарий, содержащий функции для извлечения свойств оценки (с помощью API), обнаруженных виртуальных машин и реплицируемых виртуальных машин.
2 AzMigrate_CSV_Processor.ps1 Общий сценарий, содержащий функции для операций с CSV-файлами, включая загрузку, чтение и печать журналов.
3 AzMigrate_Logger.ps1 Общий сценарий, вызываемый в целях создания файла журнала для операций автоматизации службы "Миграция Azure". Файл журнала будет сохранен в формате log.Scriptname.Datetime.txt.

Кроме того, в папке также содержится сценарий AzMigrate_Template.ps1, содержащий схему платформы для создания пользовательских сценариев выполнения различных операций службы "Миграция Azure".

Синтаксис выполнения сценария

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

Если вы хотите выполнить скрипт для запуска репликации для виртуальных машин с помощью файла Input.csv, используйте следующий синтаксис.

".\AzMigrate_StartReplication.ps1" .\Input.csv 

Чтобы получить дополнительные сведения об использовании Azure PowerShell в целях миграции виртуальных машин VMware с помощью службы "Миграция Azure", следуйте указаниям в этом руководстве.