Partilhar via


Mover uma VM especializada do local para o Azure Stack Hub

Você pode adicionar uma imagem de máquina virtual (VM) do seu ambiente local. Você pode criar sua imagem como um disco rígido virtual (VHD) e carregá-la em uma conta de armazenamento em sua instância do Azure Stack Hub. Em seguida, você pode criar uma VM a partir do VHD.

Uma imagem de disco especializada é uma cópia de um disco rígido virtual (VHD) de uma VM existente que contém as contas de usuário, aplicativos e outros dados de estado da VM original. Normalmente, esse é o formato no qual as VMs são migradas para o Azure Stack Hub. VHDs especializados são uma boa opção para quando você precisa migrar VMs do local para o Azure Stack Hub.

Como mover uma imagem

Encontre a seção específica para suas necessidades ao preparar seu VHD.

  • Siga as etapas em Preparar um VHD ou VHDX do Windows para carregar no Azure para preparar o VHD corretamente. Você deve usar um VHD para o Azure Stack Hub.

    Nota

    Não generalize a VM usando Sysprep.

  • Remova todas as ferramentas de virtualização convidada e agentes instalados na VM (como ferramentas VMware).
  • Verifique se a VM está configurada para obter o endereço IP e as configurações de DNS do DHCP. Isso garante que o servidor obtenha um endereço IP dentro da rede virtual quando ele for iniciado.
  • Certifique-se de que o RDP/SSH está ativado e que a firewall permite a comunicação.
  • Para implantar extensões de VM, verifique se o agente .msi de VM está disponível. Para obter orientação, consulte Visão geral do Agente de Máquina Virtual do Azure. Se o agente de VM não estiver presente no VHD, a implantação da extensão falhará. Não é necessário definir o perfil do SO durante o provisionamento ou definir $vm.OSProfile.AllowExtensionOperations = $trueo .

Verifique o VHD

Antes de carregar seu VHD, você deve validar se o VHD atende aos requisitos. Os VHDs que não atenderem aos requisitos não serão carregados no Azure Stack Hub.

  1. Você usará os módulos do PowerShell encontrados com o Hyper-V. A ativação do Hyper-V instala módulos de suporte ao PowerShell. Você pode verificar se tem o módulo abrindo o PowerShell com um prompt elevado e executando o seguinte cmdlet:

    Get-Command -Module hyper-v
    

    Se você não tiver os comandos do Hyper-V, consulte Trabalhando com o Hyper-V e o Windows PowerShell.

  2. Obtenha o caminho para o seu VHD na sua máquina. Execute o seguinte cmdlet:

    get-vhd <path-to-your-VHD>
    

    O cmdlet retornará o objeto VHD e exibirá os atributos, como:

    ComputerName            : YOURMACHINENAME
    Path                    : <path-to-your-VHD>
    VhdFormat               : VHD
    VhdType                 : Fixed
    FileSize                : 68719477248
    Size                    : 68719476736
    MinimumSize             : 32212254720
    LogicalSectorSize       : 512
    PhysicalSectorSize      : 512
    BlockSize               : 0
    ParentPath              :
    DiskIdentifier          : 3C084D21-652A-4C0E-B2D1-63A8E8E64C0C
    FragmentationPercentage : 0
    Alignment               : 1
    Attached                : False
    DiskNumber              :
    IsPMEMCompatible        : False
    AddressAbstractionType  : None
    Number                  :
    
  3. Com o objeto VHD, verifique se atende aos requisitos do Azure Stack Hub.

    Além disso, o Azure Stack Hub só suporta imagens de VMs de primeira (1) geração.

  4. Se o VHD não for compatível com o Azure Stack Hub, você precisará retornar à imagem de origem e ao Hyper-V, criar um VHD que atenda aos requisitos e carregar. Para minimizar possíveis danos no processo de upload, use AzCopy.

Como corrigir o VHD

Os requisitos a seguir devem ser atendidos para compatibilidade do seu VHD com o Azure Stack Hub.

VHD é de tipo fixo

Identificar: use get-vhd o cmdlet para obter o objeto VHD.
Correção: Você pode converter um arquivo VHDX em VHD, converter um disco de expansão dinâmica em um disco de tamanho fixo, mas não pode alterar a geração de uma VM. Use o Gerenciador do Hyper-V ou o PowerShell para converter o disco.

VHD tem tamanho virtual mínimo de pelo menos 20 MB

Identificar: use get-vhd o cmdlet para obter o objeto VHD.
Correção: Use o Gerenciador do Hyper-V ou o PowerShell para redimensionar o disco.

O VHD está alinhado

Identificar: use get-vhd o cmdlet para obter o objeto VHD.
Correção: O tamanho virtual deve ser um múltiplo de um (1) MB.

Os discos devem ter um tamanho virtual alinhado a 1 MiB. Se o VHD for uma fração de 1 MiB, você precisará redimensionar o disco para um múltiplo de 1 MiB. Discos que são frações de um MiB causam erros ao criar imagens a partir do VHD carregado. Para verificar o tamanho, você pode usar o cmdlet Get-VHD do PowerShell para mostrar "Size", que deve ser um múltiplo de 1 MiB no Azure, e "FileSize", que será igual a "Size" mais 512 bytes para o rodapé VHD.

Use o Gerenciador do Hyper-V ou o PowerShell para redimensionar o disco.

Comprimento do blob VHD

Identificar: use o get-vhd cmdlet para mostrar Size
Correção: O comprimento do blob VHD = tamanho virtual + comprimento do rodapé vhd (512). Um pequeno rodapé no final do blob descreve as propriedades do VHD. Size deve ser um múltiplo de 1 MiB no Azure e FileSize, que será igual a Size + 512 bytes para o rodapé VHD.

Use o Gerenciador do Hyper-V ou o PowerShell para redimensionar o disco.

VMs de primeira geração

Identificar: para confirmar se sua máquina virtual é da Geração 1, use o cmdlet Get-VM | Format-Table Name, Generation.
Correção: Você precisará recriar sua VM no hipervisor (Hyper-V).

Carregar para uma conta de armazenamento

Você pode carregar seu VHD com o portal, ou com o contêiner que você criou no portal, use AzCopy.

Portal para gerar URL SAS e carregar VHD

  1. Entre no portal do usuário do Azure Stack Hub.

  2. Selecione Contas de armazenamento e selecione uma conta de armazenamento existente ou crie uma nova conta de armazenamento.

  3. Selecione Blobs na folha da conta de armazenamento da sua conta de armazenamento. Selecione Contêiner para criar um novo contêiner.

  4. Digite o nome do contêiner e selecione Blob (acesso de leitura anônimo somente para blobs).

  5. Se você vai usar o AzCopy para carregar sua imagem em vez do portal, crie um token SAS. Selecione Assinatura de acesso compartilhado na conta de armazenamento e, em seguida, selecione Gerar SAS e cadeia de conexão. Copie e anote a URL SAS do serviço Blob. Irá utilizar este URL quando utilizar o AzCopy para carregar o seu VHD.

  6. Selecione seu contêiner e, em seguida, selecione Carregar. Carregue o seu VHD.

AzCopy VHD

Use o Gerenciador de Armazenamento do Azure ou o AzCopy para reduzir essa chance de seu VHD ser corrompido no processo de carregamento e seu carregamento será mais rápido. As etapas a seguir usam AzCopy em uma máquina Windows 10. O AzCopy é um utilitário da linha de comandos que pode utilizar para copiar blobs ou ficheiros de/para uma conta de armazenamento.

  1. Se você não tiver o AzCopy instalado, instale o AzCopy. Você encontra instruções para baixar e começar a usar o AzCopy no artigo Introdução ao AzCopy. Anote onde você armazena o binário. Você pode adicionar AzCopy ao seu caminho para usá-lo a partir da linha de comando do PowerShell.

  2. Abra o PowerShell para usar o AzCopy do shell.

  3. Use o AzCopy para carregar seu VHD no contêiner na conta de armazenamento.

    $env:AZCOPY_DEFAULT_SERVICE_API_VERSION = "2017-11-09"
    azcopy cp "/path/to/file.vhd" "https://[account].blob.core.windows.net/[container]/[path/to/blob]?[SAS] --blob-type=PageBlob
    

Nota

Carregue seu VHD usando sintaxe semelhante ao upload de um único arquivo para o diretório virtual. Adicione --blob-type=PageBlob para garantir que o VHD seja carregado como um Blob de Página, em vez de Bloquear por padrão.

Para obter mais informações sobre como usar o AzCopy e outras ferramentas de armazenamento, consulte Usar ferramentas de transferência de dados no Armazenamento do Azure Stack Hub.

Criar o disco no Azure Stack Hub

  1. Entre no portal do usuário do Azure Stack Hub.

    Se você for um operador de nuvem criando um disco de plataforma, siga as instruções em Adicionar uma imagem de plataforma para adicionar o VHD por meio do portal do administrador ou com os pontos de extremidade do administrador.

  2. No portal do usuário, selecione Adicionar todos os discos de> serviços.>

  3. Em Criar disco gerenciado:

    1. Digite o Nome da imagem.

    2. Selecione a sua Subscrição.

    3. Crie ou adicione a imagem a um grupo de Recursos.

    4. Selecione o Local, também conhecido como região, do seu ASDK.

    5. Selecione o Tipo de conta.

      • Os discos Premium (SSD) são apoiados por unidades de estado sólido e oferecem um desempenho consistente e de baixa latência. Eles fornecem o melhor equilíbrio entre preço e desempenho e são ideais para aplicações intensivas de E/S e cargas de trabalho de produção.
      • Os discos padrão (HDD) são apoiados por unidades magnéticas e são preferíveis para aplicações em que os dados são acedidos com pouca frequência. Os discos com redundância de zona são apoiados pelo armazenamento redundante de zona (ZRS) que replica seus dados em várias zonas e estão disponíveis mesmo se uma única zona estiver inativa.
    6. Selecione Blob de armazenamento do tipo de origem. Você criou um disco a partir de um blob em uma conta de armazenamento.

    7. Para a origem VHD, selecione:

      1. A assinatura de origem onde a conta de armazenamento está localizada.
      2. Selecione Procurar e navegue até sua conta de armazenamento, contêiner e VHD. Escolha Selecionar.
      3. Selecione o tipo de SO que corresponde ao VHD.
    8. Selecione um tamanho de disco (GiB) do tamanho ou maior do que o VHD.

    9. Selecione Criar.

  4. Depois que o disco for criado, você poderá usá-lo para criar uma nova VM.

Próximos passos

Visão geral de mover uma VM para o Azure Stack Hub