As melhores opções para migrações de VM do KVM / qemu / libvirt sem armazenamento compartilhado

2

Recentemente, minha equipe foi encarregada de melhorar a infraestrutura de virtualização na empresa e uma coisa que estamos fazendo é acelerar as migrações. Usamos armazenamento local apenas em todos os hosts da VM. Um desafio é que temos milhares de hosts rodando versões diferentes (triste) do CentOS, KVM, libvirt e qemu. Todos os hóspedes são CentOS também. As versões mais baixas que estamos executando são:

  • CentOS 5.6
  • Kernel 2.6.18
  • libvirt 1.0.0
  • qemu 1.1.0

A ferramenta atual usada para fazer migrações essencialmente usa o netcat para enviar os arquivos de imagem de disco e executa os comandos virsh apropriados para trazer o convidado para o novo host (além de alguns ajustes de gerenciamento de configuração).

Estamos tentando encontrar maneiras de reduzir o tempo de inatividade dos convidados e / ou acelerar a transferência por qualquer meio criativo necessário. Passamos vários dias devorando informações de vários cantos das interwebs, mas estamos curiosos para saber se os bons habitantes do Serverfault podem compartilhar algum conhecimento. Podemos usar o armazenamento compartilhado temporariamente como intermediário, se necessário, mas além de alterar hypervisores ou implementar armazenamento compartilhado para todos os hosts, tudo é um jogo justo.

Algumas ideias de trabalho atuais que temos que explorar:

  • Capture o convidado, copie a imagem de base para o novo host, encerre o convidado, copie o instantâneo para o novo host, confirme o instantâneo no novo host, exclua o instantâneo, inicie
  • Explore o uso do armazenamento compartilhado de alguma forma como intermediário temporariamente. Incerto neste momento em detalhes, usando algo como compartilhamentos glusterfs temporariamente montados é uma idéia.
  • Copiando os arquivos de imagem do disco enquanto a VM está ativa, desligando o guest e, em seguida, usando o rsync para copiar os bits alterados.

Estamos abertos a ter métodos / ferramentas diferentes que suportem apenas versões mais recentes do kvm / qemu / libvirt, mas gostaríamos de poder mover as coisas mais antigas da melhor maneira possível.

Esperando que algumas pessoas possam compartilhar alguns exemplos do que fizeram! Obrigado.

    
por irlrobot 18.08.2015 / 23:31

1 resposta

1

Você pode esperar um pouco mais para que o oVirt ofereça suporte à virtualização hiperconvergente e migre por cima. Você terá um sistema de virtualização baseado em KVM opensource gratuito, com armazenamento local como volumes gluster e gerenciamento central para todos. Um pouco de yum-updatesd ou puppet / ansible / whatever, e o controle de versão sobre os hosts também é estabelecido.

    
por 19.08.2015 / 16:16