Melhor maneira de clonar um sistema Linux ao vivo

14

Alguém sabe de uma maneira de clonar um sistema Linux ao vivo? Eu tenho uma instalação ao vivo executando um site de produção. O problema é que eu preciso cloná-lo (sem abaixá-lo) e movê-lo (restaurar) para uma máquina virtual. Estou basicamente migrando do hardware físico para o hardware virtual.

    
por drewrockshard 21.01.2011 / 18:45

7 respostas

11

Na máquina de origem:

dump -0 -f - / | ssh -c blowfish root@target_machine "cd /; restore -rf -"

Isto irá despejar o fs em sua máquina de origem, copiá-lo sobre o ssh e na máquina de destino ele irá restaurá-lo.

Claro que você precisa repetir isso para cada fs.

'blowfish' existe apenas para permitir compressão e descompressão mais rápidas.

    
por 22.01.2011 / 23:37
6

VMWare Converter pode fazer a maioria dos sistemas operacionais modernos sem desligar o servidor, mas como Dennis apontou, nós realmente precisamos para saber qual SO você está usando.

Você terminará com uma imagem virtual do seu servidor quando terminar, em vez de uma imagem de disco bruta, mas geralmente é bom o suficiente para a maioria dos trabalhos, dependendo do que você deseja fazer feito isso.

    
por 08.03.2011 / 12:15
1

Qual plataforma de VM você está migrando para? O VMWare tem um conversor para Linux . Vai converter uma máquina ligada.

    
por 21.01.2011 / 18:49
1

Dê uma olhada no conversor VMWare que, acredito, permita a clonagem de sistemas em tempo real.

    
por 21.01.2011 / 18:51
1

Geralmente, fazemos isso:

  • Inicialize o host virtual de destino em um cd (ou netboot)
  • Prepare os sistemas de arquivos no host virtual (ou seja, prepare o (s) disco (s), crie os sistemas de arquivos e monte-os).
  • Rincronize os arquivos do host físico para o host virtual
  • Instale o carregador de boot no host de destino

Isso funciona muito bem, desde que os dados sobre os quais você está copiando sejam relativamente sem estado. Se você está lidando, por exemplo, com um servidor de banco de dados, particularmente um com muita atividade, você precisa ter certeza de que o banco de dados está inativo antes de fazer a transição final ... então, algo assim, depois de tudo está pronto:

  • Pare o banco de dados
  • Executar um rsync final dos dados
  • Encerre o host físico
  • Iniciar o host virtual
por 21.01.2011 / 18:53
0

Veja o VMware Converter (é grátis se você tiver vCenter) ou Plate Spin (um de seus produtos é um conversor).

A Plate Spin fará a máquina funcionar, com o mínimo de tempo de inatividade para cortar.

Com o conversor VMware, ele fará uma máquina ativa (se houver um banco de dados que pode estar fora de sincronia), simplesmente não inicialize a VM quando terminar. Em seguida, desconecte o vNIC e, em seguida, inicialize a máquina, efetue login via console e altere os IPs, etc. Em seguida, reconecte o vNIC.

    
por 21.01.2011 / 22:11
0

É impossível obter um instantâneo consistente sem interromper todas as operações que podem alterar o estado do sistema.

A menos que o aplicativo tenha sido explicitamente projetado para acomodar esse tipo de operação (ou seja, todo o processamento tratado por mensagens passíveis de serem chamadas), será impossível obter um instantâneo consistente sem desativar o sistema (ou pelo menos desabilitar o componente transacional). / p>

No entanto, é possível reduzir significativamente a janela de tempo para tirar fotos do sistema (por exemplo, removendo um espelho de um conjunto RAID e, em seguida, remontando-o em outro lugar). E quanto menor o tempo necessário para gerar o instantâneo, menor a probabilidade de que as transações abranjam a operação.

E a maioria dos sistemas de arquivos / DBS suportará algum tipo de journalling que deve permitir que a maioria das operações quebradas seja recuperada ou revertida.

    
por 08.03.2011 / 12:26