Partilhar via


Migração em escala de VMs VMware

Este artigo ajuda você a entender como usar scripts para migrar um grande número de máquinas virtuais (VMs) VMware usando o método sem agente. Para dimensionar migrações, use o módulo Azure Migrate PowerShell.

Os scripts de automação de migração do Azure Migrate VMware estão disponíveis para download no repositório de Exemplos do Azure PowerShell no GitHub. Os scripts podem ser usados para migrar VMs VMware para o Azure usando o método de migração sem agente. Os comandos do Azure Migrate PowerShell usados nesses scripts estão documentados aqui.

Limitações atuais

  • Esses scripts suportam a migração de VMs VMware com todos os seus discos. Você pode atualizar os scripts se quiser replicar seletivamente os discos conectados a uma VM VMware.
  • Os scripts suportam o uso de recomendações de avaliação. Se as recomendações de avaliação não forem usadas, todos os discos conectados à VM VMware serão migrados para o mesmo tipo de disco gerenciado (Standard ou Premium). Você pode atualizar os scripts se quiser usar vários tipos de discos gerenciados com a mesma VM.

Pré-requisitos

Instalar o módulo Azure Migrate PowerShell

O módulo Azure Migrate PowerShell está disponível na visualização. Você precisará instalar o módulo PowerShell usando o comando a seguir.

Install-Module -Name Az.Migrate 

Arquivo de entrada CSV

Depois de concluir todos os pré-requisitos, você precisa criar um arquivo CSV com dados de cada VM de origem que deseja migrar. Todos os scripts são projetados para funcionar no mesmo arquivo CSV. Um modelo CSV de exemplo está disponível na pasta scripts para sua referência. O arquivo csv é configurável para que você possa usar recomendações de avaliação e até mesmo especificar se determinadas operações não devem ser acionadas para uma VM específica.

Nota

O mesmo arquivo csv pode ser usado para migrar VMs em vários projetos do Azure Migrate.

Esquema de arquivo CSV

Cabeçalho da coluna Descrição
AZMIGRATEPROJECT_SUBSCRIPTION_ID Forneça a ID de assinatura do projeto Azure Migrate.
AZMIGRATEPROJECT_RESOURCE_GROUP_NAME Forneça o nome do grupo de recursos do Azure Migrate.
AZMIGRATEPROJECT_NAME Forneça o nome do projeto Azure Migrate no qual você deseja migrar servidores.
SOURCE_MACHINE_NAME Forneça um nome amigável (nome para exibição) para a VM descoberta no projeto Azure Migrate.
AZMIGRATEASSESSMENT_NAME Forneça o nome da avaliação que precisa ser aproveitada para a migração.
AZMIGRATEGROUP_NAME Forneça o nome do grupo que foi usado para a avaliação do Azure Migrate.
TARGET_RESOURCE_GROUP_NAME Forneça o nome do grupo de recursos do Azure para o qual a VM precisa ser migrada.
TARGET_VNET_NAME Forneça o nome da Rede Virtual do Azure que a VM migrada deve usar.
TARGET_SUBNET_NAME Forneça o nome da sub-rede na rede virtual de destino que a VM migrada deve usar. Se deixada em branco, a sub-rede "padrão" será usada.
TARGET_MACHINE_NAME Forneça o nome que a VM migrada deve usar no Azure. Se deixado em branco, o nome da máquina de origem será usado.
TARGET_MACHINE_SIZE Forneça a Unidade de Manutenção de Estoque (SKU) que a VM deve usar no Azure. Para migrar uma VM para D2_v2 VM no Azure, especifique o valor neste campo como "Standard_D2_v2". Se você usar uma avaliação, esse valor será derivado com base na recomendação de avaliação.
LICENSE_TYPE Especifique se deseja usar o Benefício Híbrido do Azure para VMs do Windows Server. Use o valor "WindowsServer" para aproveitar o Benefício Híbrido do Azure. Caso contrário, deixe-o em branco ou use "NoLicenseType".
OS_DISK_ID Forneça o ID de disco do sistema operacional para a VM a ser migrada. O ID do disco a ser usado é a propriedade identificador exclusivo (UUID) do disco recuperado usando o cmdlet Get-AzMigrateServer. O script usará o primeiro disco da VM como o disco do sistema operacional, caso nenhum valor seja fornecido.
TARGET_DISKTYPE Forneça o tipo de disco a ser usado para todos os discos da VM no Azure. Utilize "Premium_LRS" para discos geridos premium, "StandardSSD_LRS" para discos SSD padrão e "Standard_LRS" para utilizar discos HDD padrão. Se você optar por usar uma avaliação, o script priorizará o uso dos tipos de disco recomendados para cada disco da VM. Se não utilizar a avaliação ou especificar qualquer valor, o script utilizará discos HDD padrão por predefinição.
AVAILABILITYZONE_NUMBER Especifique o número da zona de disponibilidade a ser usado para a VM migrada. Você pode deixar isso em branco se não quiser usar zonas de disponibilidade.
AVAILABILITYSET_NAME Especifique o nome do conjunto de disponibilidade a ser usado para a VM migrada. Você pode deixar isso em branco se não quiser usar o conjunto de disponibilidade.
TURNOFF_SOURCESERVER Especifique 'Y' se quiser desativar a VM de origem no momento da migração. Use 'N' caso contrário. Se deixado em branco, o script assume o valor como 'N'.
TESTMIGRATE_VNET_NAME Especifique o nome da rede virtual a ser usada para a migração de teste.
UPDATED_TARGET_RESOURCE_GROUP_NAME Se você quiser atualizar o grupo de recursos a ser usado pela VM migrada no Azure, especifique o nome do grupo de recursos do Azure, caso contrário, deixe-o em branco.
UPDATED_TARGET_VNET_NAME Se você quiser atualizar a Rede Virtual a ser usada pela VM migrada no Azure, especifique o nome da Rede Virtual do Azure, caso contrário, deixe-a em branco.
UPDATED_TARGET_MACHINE_NAME Se você quiser atualizar o nome a ser usado pela VM migrada no Azure, especifique o novo nome a ser usado, caso contrário, deixe-o em branco.
UPDATED_TARGET_MACHINE_SIZE Se você quiser atualizar a SKU a ser usada pela VM migrada no Azure, especifique a nova SKU a ser usada, caso contrário, deixe-a em branco.
UPDATED_AVAILABILITYZONE_NUMBER Se você quiser atualizar a zona de disponibilidade a ser usada pela VM migrada no Azure, especifique a nova zona de disponibilidade a ser usada, caso contrário, deixe-a em branco.
UPDATED_AVAILABILITYSET_NAME Se você quiser atualizar o conjunto de disponibilidade a ser usado pela VM migrada no Azure, especifique o novo conjunto de disponibilidade a ser usado, caso contrário, deixe-o em branco.
UPDATE_NIC1_ID Especifique o ID da NIC a ser atualizada. Se deixado em branco, o script assume que o valor é a primeira NIC da VM descoberta. Se você não quiser atualizar a NIC da VM, deixe todos os campos que contêm o nome da NIC em branco.
UPDATED_TARGET_NIC1_SELECTIONTYPE Especifique o valor a ser usado para esta NIC. Use "Primário", "Secundário" ou "DoNotCreate" para especificar se essa NIC deve ser primária, secundária ou não deve ser criada na VM migrada. Apenas uma NIC pode ser especificada como a NIC primária para a VM. Deixe em branco se não quiser atualizar.
UPDATED_TARGET_NIC1_SUBNET_NAME Especifique o nome da sub-rede a ser usada para a NIC na VM migrada. Deixe em branco se não quiser atualizar.
UPDATED_TARGET_NIC1_IP Especifique o endereço IPv4 a ser usado pela NIC na VM migrada se desejar usar IP estático. Use "auto" se quiser atribuir automaticamente o IP. Deixe em branco se não quiser atualizar.
UPDATE_NIC2_ID Especifique o ID da NIC a ser atualizada. Se deixado em branco, o script assume que o valor é a segunda NIC da VM descoberta. Se você não quiser atualizar a NIC da VM, deixe todos os campos que contêm o nome da NIC em branco.
UPDATED_TARGET_NIC2_SELECTIONTYPE Especifique o valor a ser usado para esta NIC. Use "Primário", "Secundário" ou "DoNotCreate" para especificar se essa NIC deve ser primária, secundária ou não deve ser criada na VM migrada. Apenas uma NIC pode ser especificada como a NIC primária para a VM. Deixe em branco se não quiser atualizar.
UPDATED_TARGET_NIC2_SUBNET_NAME Especifique o nome da sub-rede a ser usada para a NIC na VM migrada. Deixe em branco se não quiser atualizar.
UPDATED_TARGET_NIC2_IP Especifique o endereço IPv4 a ser usado pela NIC na VM migrada se desejar usar IP estático. Use "auto" se quiser atribuir automaticamente o IP. Deixe em branco se não quiser atualizar.
OK_TO_UPDATE Use 'Y' para indicar se as propriedades da VM precisam ser atualizadas quando você executa o script AzMigrate_UpdateMachineProperties. Use 'N' ou deixe em branco caso contrário.
OK_TO_MIGRATE Use 'Y' para indicar se a VM deve ser migrada quando você executa o script AzMigrate_StartMigration. Use 'N' ou deixe em branco se não quiser migrar a VM.
OK_TO_USE_ASSESSMENT Use 'Y' para indicar se a VM deve iniciar a replicação usando recomendações de avaliação ao executar o script AzMigrate_StartReplication. Isso substituirá os valores TARGET_MACHINE_SIZE e TARGET_DISKTYPE no arquivo csv. Use 'N' ou deixe em branco se não quiser usar recomendações de avaliação.
OK_TO_TESTMIGRATE Use 'Y' para indicar se a VM deve ser migrada para teste quando você executa o script AzMigrate_StartTestMigration. Use 'N' ou deixe em branco se não quiser testar a migração da VM.
OK_TO_RETRIEVE_REPLICATIONSTATUS Use 'Y' para indicar se o status de replicação da VM deve ser atualizado quando você executa o script AzMigrate_ReplicationStatus. Use 'N' ou deixe em branco se não quiser atualizar o status da replicação.
OK_TO_CLEANUP Use 'Y' para indicar se a replicação para a VM deve ser limpa quando você executa o script AzMigrate_StopReplication. Use 'N' ou deixe em branco caso contrário.
OK_TO_TESTMIGRATE_CLEANUP Use 'Y' para indicar se a migração de teste para a VM deve ser limpa quando você executa o script AzMigrate_CleanUpTestMigration. Use 'N' ou deixe em branco caso contrário.

Execução de scripts

Quando o CSV estiver pronto, você poderá executar as etapas a seguir para migrar suas VMs VMware locais.

Passo # Nome do script Descrição
5 AzMigrate_StartReplication.ps1 Habilite a replicação para todas as VMs listadas no csv, o script cria uma saída CSV e um arquivo de log para solução de problemas.
2 AzMigrate_ReplicationStatus.ps1 Verifique o status da replicação, o script cria uma saída csv com o status de cada VM e um arquivo de log para solução de problemas.
3 AzMigrate_UpdateMachineProperties.ps1 Depois que as VMs tiverem concluído a replicação inicial, use esse script para atualizar as propriedades de destino da VM (propriedades de computação e rede). O script cria uma saída CSV com os detalhes do trabalho para cada VM.
4 AzMigrate_StartTestMigration.ps1 Inicie o failover de teste para todas as VMs listadas no csv configuradas para migração de teste. O script cria uma saída CSV com os detalhes do trabalho para cada VM.
5 AzMigrate_CleanUpTestMigration.ps1 Depois de validar manualmente as VMs que foram submetidas a failover de teste, use esse script para limpar as VMs de failover de teste para todas as VMs listadas no csv configuradas para limpeza de migração de teste. O script cria uma saída CSV com os detalhes do trabalho para cada VM.
6 AzMigrate_StartMigration.ps1 Inicie a migração para todas as VMs listadas no csv que estão configuradas para migração. O script cria uma saída CSV com os detalhes do trabalho para cada VM.
7 AzMigrate_StopReplication.ps1 Interrompe a replicação para a VM depois que ela tiver sido migrada com êxito ou se você quiser cancelar a replicação devido a outros motivos. O script cria uma saída CSV com os detalhes do trabalho para cada VM.

Os scripts a seguir são invocados por outros scripts para todas as operações do Azure Migrate, como habilitar a replicação, iniciar a migração de teste, atualizar as propriedades da VM e assim por diante. Certifique-se de que todos os scripts estão presentes na mesma pasta/caminho.

Passo # Nome do script Descrição
5 AzMigrate_Shared.ps1 Script comum contendo funções para recuperar propriedades de avaliação (por meio de API), VMs descobertas e replicar VMs.
2 AzMigrate_CSV_Processor.ps1 Script comum contendo funções usadas para operações de arquivo csv, incluindo carregamento, leitura e impressão de logs.
3 AzMigrate_Logger.ps1 Script comum invocado para gerar o arquivo de log para operações de automação do Azure Migrate. O arquivo de log será do formato log. Scriptname.Datetime.txt.

Além do acima, a pasta também contém AzMigrate_Template.ps1 que contém a estrutura esqueleto para criar scripts personalizados para diferentes operações do Azure Migrate.

Sintaxe de execução de script

Depois de ter baixado os scripts, eles podem ser executados da seguinte maneira.

Se desejar executar o script para iniciar a replicação para VMs usando o arquivo Input.csv, use a sintaxe a seguir.

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

Para saber mais sobre como usar o Azure PowerShell para migrar VMs VMware com o Azure Migrate, siga o tutorial.