o VMotion permite migrar uma VM ao vivo de um servidor físico para outro. Isso significa que você não precisa de nenhum tempo de inatividade para realizar a manutenção do host do vSphere e também é possível, sem nenhum tempo de inatividade, equilibrar as VMs em um cluster sem a necessidade de desligar nenhuma das VMs.
VMware também suporta vMotion de longa distância e cross-vCenter vMotion, que permite migrar cargas de trabalho para outro data center ou a nuvem. Isso permite evitar desastres quando uma ameaça é iminente, executar cargas de trabalho em um fuso horário específico e usar o cloud bursting se você começar a ficar sem recursos.
Antes de implementar o vMotion, certifique-se de ter memória e largura de banda de rede suficientes para suportar o processo de migração, suas VMs são otimizadas para migração ao vivo e você sabe como o recurso funciona em toda a infraestrutura.
VMotion Live migration requirements
quase todas as edições do vSphere contêm vMotion; apenas o vSphere Essentials kit não suporta o recurso. VMotion é um processo entre dois hosts ESXi, mas é iniciado por meio do vCenter, portanto, requer uma licença do vCenter.
o restante dos Requisitos-como bandwith de rede e RAM-não são muito exigentes. A migração é feita entre dois hosts ESXi que devem ter uma interface VMkernel com o recurso vMotion ativado e podem se alcançar por meio de conexão de rede.
para as VMs que você decide migrar, o requisito é que elas permaneçam na mesma rede de camada 2. Há um requisito mínimo de largura de banda de 250 Mbps por migração do vMotion, mas é melhor ter mais largura de banda disponível.
a largura de banda mais disponível significa que você pode realizar migrações mais rapidamente, o que é o mais importante com VMs com grandes quantidades de RAM.
Como o vMotion obras
Para mover a máquina virtual para outro computador físico, você deve mover o conteúdo da memória e mudar qualquer processamento de fluxos de trabalho para outro computador. O VCenter inicia o vMotion e inicia a migração após uma verificação de compatibilidade com o host ESXi de origem e destino.
o processo começa com uma cópia inicial da memória através da rede habilitada para vMotion. A imagem abaixo mostra onde você deve copiar 16 GB de RAM para uma VM com essa quantidade de memória necessária.
idealmente, esta etapa seria instantânea. Mas leva vários segundos para copiar 16 GB e, durante esse processo, algumas páginas de memória na memória de origem mudam. O VMkernel rastreia quais páginas foram alteradas e as copia para o host de destino.
considere que este seria outro gigabyte de RAM. Enquanto você copia esse 16 GB, a memória muda novamente. Isso se torna um processo iterativo, como mostrado na imagem abaixo.
após várias iterações, você deve ter copiado a maioria da memória e há uma quantidade restante que pode ser copiada em menos de 500 milissegundos. Se você puder chegar a esse ponto por causa da ram de origem em rápida mudança, a VM diminuirá a velocidade na fonte com atordoamento durante o envio da página para tornar possível copiar toda a memória.
largura de banda suficiente é o requisito mais importante para grandes VMs. Por exemplo, copiar uma VM de 768 GB em um link de 1 Gbps leva muito tempo para chegar a um ponto de comutação estável.
é uma boa ideia ter uma rede vMotion dedicada com 10 Gbps ou mais e vários adaptadores de rede. Várias portas VMkernel também são recomendadas se você executar muitas migrações simultaneamente ou migrar VMs grandes.
depois de copiar a memória, o processamento de instruções pára no host ESXi de origem e continua no host ESXi de destino. Do ponto de vista do sistema operacional convidado, nada aconteceu porque todas as instruções são processadas, mas em outro host.
você precisa de ação na rede porque o tráfego de rede deve ser enviado para o host ESXi de destino-não o host ESXi de origem. O host ESXi de destino envia um pacote de Protocolo de resolução de endereço invertido para o switch físico, que aciona o processo de aprendizado do MAC para listar o endereço MAC da VM na porta de saída onde você conecta o host ESXi.
agora a carga de trabalho é migrada sem problemas e você pode dizer com segurança que pode mover qualquer aplicativo habilitado para TCP sem interrupção.
melhorias e considerações
ao longo dos anos, a maioria das melhorias no vMotion foram implementadas devido ao aumento constante das especificações da VM. É o caso do vSphere 7, onde na atualização 2 você pode configurar uma VM com no máximo 896 vCPUs e 24 TB de RAM.
VMware fez melhorias importantes no vSphere 7 U1 para como o VMkernel inicia o processo que rastreia quais páginas de memória mudam durante o processo de cópia de memória.
o recurso de instalação de rastreamento de página solta elimina a necessidade de parar todos os vCPUs quando você insere um traçador de página. Ele dedica um vCPU para executar este processo para que todos os outros vCPUs possam continuar a executar instruções do sistema operacional convidado.
outra melhoria é que o processo de VM já está ligado antes de mover toda a memória para o seu destino. A memória no outro host é marcada como remota e é buscada posteriormente.
se você projetar e dimensionar corretamente seus hosts e componentes de rede, não haverá grandes desvantagens para o vMotion.