Exportando libvirt + máquinas virtuais KVM para arquivos

5

Vou aposentar um antigo servidor libvirt + KVM, mas preciso preservar as VMs. Infelizmente, a rede está inativa e não consigo criar conexões com o sistema.

Existe alguma maneira de exportar as VMs usando virsh ou qualquer outro utilitário?

Esclarecimento: preciso de discos e tudo mais. Vou implantar máquinas em outro servidor.

    
por bayindirh 22.07.2015 / 08:41

3 respostas

11

Se você precisar fazer backup de sua configuração de vm usando o virsh, poderá usar o seguinte comando

virsh dumpxml vmname > vmname.xml 

Se você precisar mover seu vm para outro servidor, você pode despejar sua configuração vm e transferir o xml, se você estiver usando arquivos como armazenamento de backend para sua vm você pode copiar os arquivos para outro servidor usando scp ou rsync, quando você copiou os arquivos de disco da vm, você pode tentar iniciar a vm com virsh define /tmp/myvm.xml && virsh start myvm

    
por 22.07.2015 / 10:53
5

Você deve conseguir criar imagens de seus discos a partir de um instantâneo:

Primeiro, você precisa ter certeza de que o VM não está em execução:

virsh suspend vm

Agora você pode criar um snapshot e ajustar o tamanho 100M e o nome vm-root-snapshot para suas próprias necessidades.

lvcreate -L 100M -n vm-root-snapshot -s /dev/sysvg/vm-root

Depois disso, você pode iniciar a VM novamente.

virsh resume vm

Agora que você tem o instantâneo, pode criar a imagem e excluir o instantâneo:

dd if=/dev/mapper/sysvg-vm--root--snapshot of=/tmp/vm-root.img bs=1M
lvremove /dev/mapper/sysvg-vm--root--snapshot

A imagem pode ser copiada para o novo servidor e importada para o LVM no novo servidor com o dd

dd if=/tmp/vm-root.img of=/dev/mapper/sysvg-vm--root bs=1M

Também não se esqueça de importar seu arquivo XML.

virsh define /path/to/vm.xml
    
por 21.06.2016 / 11:12
1

Além de virsh dumpxml , que exportará as configurações da VM para um arquivo XML:

Copie as imagens de disco da VM, se elas forem esparsas ou em um volume de bloco, a maneira correta é usar qemu-img convert -O output_format source destination

Para importar, edite o XML para refletir o novo local das imagens de disco e execute virsh define path/to/dumpXML

    
por 23.07.2015 / 12:53