[Troubleshooting] VM com “Configuration Error” ao fazer Quick ou Live Migration

Imagine o seguinte cenário : Você tem um cluster de Hyper-V baseado na versão R1 ou R2 e ao tentar fazer o Quick ou Live Migration de uma máquina virtual de um Nó para outro do Cluster você recebe uma mensagem de erro que impede a movimentação ou a máquina é movida porém a conectividade de rede é perdida, ao clicar nas propriedades da VM pelo Hyper-V Manager você nota que nas configurações de rede aparece a mensagem “Configuration Error” conforme figura abaixo :

Refresh03

Mesmo que você altere a configuração da placa de rede ao movimentá-la novamente o erro continua. Antes de mostrar como evitar este problema é bom você saber que o Hyper-V Manager NÃO É CLUSTER AWARE nativo, isso significa que se você fizer alguma alteração na máquina virtual como a placa de rede ou uma VLAN ID em um NÓ está mudança não é replicada para outro nó do cluster dinâmicamente (magicamente) é por isso que o problema ocorre, o arquivo .XML que é afetado no primeiro nó é diferente do segundo, como as configurações são divergentes o erro acima ocorre.

Mas acredite, a solução disso é mais simples que possa imaginar, você só precisa mudar a forma de administrar as máquinas virtuais quando elas estão em um Failover Clustering.

Na primeira vesão do Hyper-V conhecida como 1.0 ou R1, você só pode fazer o Quick Migration o Live Migration não existe nessa versão, e a console do Failover Manger e do Hyper-V Manager não são integradas, ou seja uma mudança que você faz na VM pelo Hyper-V Manager o Cluster não fica ciente da alteração, você precisará fazer o “REFRESH” da máquina virtual pela console do Failover Cluster sempre que uma mudança na VM ocorrer ou sempre que você for fazer o Quick Migration, assim o Cluster atualiza suas informações e replica para ambos os Nós, para isso basta, expandir o nome do Cluster, Services and Application, selecionar o nome da máquina virtual que está como recurso no Cluster com o botão direito e selecionar “Refresh virtual machine configuration”. Em seguida pode fazer o Quick Migration tranquilamente.

Refresh01

Figura 1 – Refresh virtual machine configuration

No Hyper-V R2 a console do Failover Clustering e do Hyper-V Manager são integradas, na prática você pode criar uma VM e colocada em alta disponibilidade em um único passo, diferente da versão R1 que a VM precisa ser criada primeiro e em uma segunda etapa colocá-la como recurso do Cluster.

Você também precisa seguir esta regra de administração no Hyper-V R2, mas há uma exceção : quando você administra as máquinas virtuais pela console do Failover Clustering ao invés do Hyper-V Manager, neste caso, você não precisa fazer o “Refresh” pois as atualializações são feitas automaticamente e o Cluster fica ciente de todas as mudanças.

Refresh02

Figura 2 – Refresh virtual machine configuration

Então a regra é a seguinte

  • no Hyper-V R1 você sempre precisa fazer o “Refresh” antes do Quick Migration
  • no Hyper-V R2 você só precisa fazer o “Refresh” se você administra a VM pelo Hyper-V Manager ao invés do Failvoer Cluster Manager.
  • no Hyper-V R2 você pode escolher entre Quick e Live Migration
  • na dúvida sempre realize o “Refresh” antes de movimentar qualquer máquina virtual, lembre-se que este “Refresh” é individual para cada VM.