Como adaptar VMs para execução no Google Cloud

Para funcionar corretamente no Google Cloud, talvez seja preciso alterar as configurações das VMs. O Migrate for Compute Engine processa algumas alterações na configuração automaticamente, mas também é possível criar configuração personalizada para o Windows e o Linux. Com as configurações personalizadas, uma VM e o sistema operacional (SO) dela podem ser executados no Google Cloud. Elas são conhecidas como adaptações. As seções a seguir descrevem como personalizar adaptações de VM e de SO.

Como personalizar adaptações de VM

O Migrate for Compute Engine processa muitas adaptações de VM automaticamente, mas é possível escrever configurações personalizadas para Linux conforme necessário. Por exemplo, é possível instalar drivers para inicializar a VM.

O Migrate for Compute Engine pode executar scripts durante a migração para ativar essas adaptações. Os scripts podem ser desenvolvidos por clientes ou fornecidos pelo Migrate for Compute Engine em um pacote de suporte.

Os scripts podem ser executados em três estados de máquina (para VMs do Windows) ou fases (para VMs do Linux):

Estado de máquina (VM do Windows) Fase (VM do Linux) Descrição
Origem origin No local
Migrate for Compute Engine velos Executado quando a VM está em execução no modo de cache
Detach detach Executado após a operação de remoção

Veja mais informações sobre adaptações em Adaptações do Linux ou em Adaptação do Windows.

Adaptações de sistema operacional

Esta seção descreve as adaptações de sistema operacional realizadas pelo Migrate for Compute Engine, bem como as modificações feitas nas VMs do Windows e do Linux para operações de execução em nuvem e desanexação.

Alterações de VM realizadas automaticamente

O Migrate for Compute Engine prepara as VMs do Linux para inicializar no Google Cloud usando um pacote instalado automaticamente. As alterações são ativadas somente quando uma operação de execução em nuvem é detectada. O pacote pode permanecer instalado mesmo depois que a VM tiver sido migrada. Se o pacote for desinstalado, todas as alterações serão revertidas.

Este é o conjunto de alterações feitas no sistema:

  • Ativação da inicialização no Google Cloud
  • Ativação do console serial
  • Alterações específicas da nuvem para o canal de armazenamento do Migrate for Compute Engine
  • Adaptações específicas de hardware para migração para a nuvem

Modificações para execução em nuvem em VMs do Windows

Antes de migrar a VM do Windows para o Google Cloud, o Migrate for Compute Engine encerra a VM e produz um snapshot. Em seguida, o Migrate for Compute Engine modifica os drivers de rede e de armazenamento para permitir que a VM seja inicializada na nuvem.

  • Instalar o driver NETKVM para o Migrate for Compute Engine.
  • Alterar a configuração de rede.
  • Ajustar o sistema para acesso a iSCSI e MPIO.
  • Alterar a licença/edição.
  • Desativar as ferramentas da VMware.
  • Alterar o local do arquivo de página.
  • Verificar se a hibernação está desativada.
  • Alterar as opções de recuperação.
  • Ativar o RDP.
  • Implantar o framework do Migrate for Compute Engine que permite executar ações personalizadas.

Modificações para remover uma VM do Windows

Além das alterações feitas na operação de execução na nuvem, durante a remoção de uma VM do Windows, o Migrate for Compute Engine instala o agente de nuvem do Google Cloud.

Modificações para execução em nuvem em VMs do Linux

O pacote do Migrate for Compute Engine é necessário antes da migração.

Quando você migra uma VM que tem ferramentas da VMware instaladas, o Migrate for Compute Engine encerra a VM normalmente e cria um snapshot dela. Em seguida, o Migrate for Compute Engine modifica os drivers de rede e armazenamento, permitindo a inicialização da VM no Google Cloud. Essas modificações incluem as seguintes etapas:

  • Alterar a sequência de inicialização (initrd).
  • Ativar o console serial.
  • Aplicar dinamicamente as seguintes modificações na nuvem:
    • Mover pontos de montagem com a opção _netdev para encerrar corretamente.
    • Remapear arquivos de troca.
    • Iniciar o serviço de sinal de atividade do Migrate for Compute Engine.
    • Realizar otimizações de disco.
    • Instalar pacotes de ambiente convidado do Linux para Compute Engine.
    • Remover discos não migrados de /etc/fstab.
    • Alterar configurações de rede, como:
      • Ativar sshd com a autenticação baseada em chave.
      • Remover rotas e IPs estáticos. O pacote do Migrate for Compute Engine remove todas as configurações estáticas.
      • Reconfigurar a interface de rede padrão (eth0) para usar o DHCP.
      • Atualizar o endereço IP principal do nome do host em /etc/hosts. Alguns aplicativos dependem de /etc/hosts para extrair o endereço IP local. O pacote atualiza o arquivo /etc/hosts com o novo endereço IP para preservar a compatibilidade.
      • Atualizar a configuração NTP para metadata.google.internal.
      • Redefinir MTU para 1460, se necessário.
      • Remover configurações de endereço MAC permanentes, por exemplo: rm -f /etc/udev/rules.d/70-persistent-net.rules.
  • Fazer alterações específicas no Google Cloud, conforme necessário.

Alterações feitas em cada inicialização durante o streaming no Compute Engine

  • Remontar volumes com _netdev ativado.
  • Mover arquivos de troca para volumes efêmeros.
  • Iniciar o serviço de sinal de atividade do Migrate for Compute Engine.
  • Cortar (desmarcar) espaço em disco não utilizado.
  • Remover rotas e IPs estáticos.
  • Atualizar o IP principal do nome do host em /etc/hosts.

Modificações para desanexar uma VM do Linux

Além das modificações feitas para a operação de execução em nuvem, o pacote ajusta a configuração de rede após a desanexação.

  • Remover rotas, máscaras de rede e IPs estáticos.
  • Remover placas de rede (NICs, na sigla em inglês) inativas.
  • Remover anexos de hardware da NIC.
  • Aplicar DHCP em eth0.
  • Aplicar GW padrão.
  • Configurar servidor DNS personalizado.
  • Configurar intervalos de IP do alias.
  • Remover o Azure ou o agente convidado da AWS.

Próximas etapas