Como é possível clonar uma VM em execução de forma consistente?

5

Temos um sysadmin que está clonando um dos nossos servidores de produção, que é uma VM do VMWare. O tempo total para clonar parece ser de cerca de 2 horas. O servidor ainda está em execução (servindo aplicativos da web) enquanto ele faz o clone.

Obviamente, as coisas estão mudando no disco rígido do servidor e na memória durante essas duas horas. Como podemos acabar com uma cópia consistente da máquina? Ou deveríamos acabar com uma cópia inconsistente? Acabaremos com uma VM que lembra parcialmente a VM original às 7:00 da manhã, outra parte dela reflete como era o original às 8:00, etc?

Estamos executando o VMWare vCenter Server 4.1, se isso for importante.

    
por LarsH 17.08.2012 / 16:02

2 respostas

6

O que você está falando é chamado de "hot-cloning", e fazer tal clone resultará em algum nível de inconsistência entre as duas cópias. Todas as maneiras que conheço, incluindo as implementações comerciais e nativas de hot-cloning, envolvem fazer um instantâneo (de uma forma ou de outra) e, em seguida, clonar isso. Isso congela o disco em um determinado ponto no tempo, de modo que seu disco é consistente, mas resulta em ter um clone de um ponto no passado.

    
por 17.08.2012 / 16:32
11

Por direito, o processo completo seria:

  1. Crie um instantâneo do computador de corrida; isso libera os arquivos de disco subjacentes e faz com que novas alterações de dados sejam gravadas em arquivos delta
  2. Copie os arquivos do disco principal para a nova máquina
  3. Crie outro instantâneo do computador de corrida; isso libera os arquivos delta e faz com que novas alterações de dados sejam gravadas em novos arquivos delta
  4. Copie os arquivos delta antigos para a nova máquina
  5. Repita até que os arquivos delta sejam pequenos o suficiente para copiar, pois o tempo gasto representa alterações insignificantes no servidor de origem
  6. Edite o arquivo de configuração do clone para que esteja ciente dos arquivos delta copiados
  7. Mesclar os arquivos delta do clone de volta ao arquivo de disco principal do clone

Dependendo da ferramenta usada para fazer o clone, ele pode não fazer o loop do arquivo delta, então você acabaria com um clone baseado no modo como o servidor olhava para o início do primeiro snapshot.

Mesmo que ele faça o delta loop, você ainda vai tecnicamente acabar com um clone que está momentaneamente por trás do servidor de origem.

Realmente, a única maneira de fazer um clone que seja uma correspondência exata do servidor de origem é tirar a cópia enquanto a VM de origem é desligada.

    
por 17.08.2012 / 16:41