Converter entre tipos de hipervisor

1

Minha empresa precisa automatizar a criação de novas VMs com nossa solução proprietária. Para isso, gostaríamos de enviar o produto em um formato padronizado (o OVA parece ser o único "padrão" existente) ou ser capaz de converta da mesma máquina para vários tipos diferentes de Virtualização.

Até agora isso é feito manualmente, o que significa que, se um cliente quer uma VM HyperV, precisamos criá-lo em um servidor HyperV que temos em casa, VMWare em VMWare etc ... Nosso objetivo é ter isso automatizado.

Explicando melhor: O plano é ter um servidor KVM, provisionar a VM e, após o provisionamento, exportá-lo para um formato OVA e, possivelmente, como uma cortesia extra para nossos clientes em seu hipervisor de escolha.

Eu posso converter os discos muito bem com o "qemu-img convert", mas não consigo converter a definição da máquina (XML) para outros formatos conforme necessário por outros hipervisores.

Não consigo encontrar ferramentas adequadas para isso, sugestões?

Nota: nós não temos acesso ao hypervisor onde eles serão instalados, então precisamos exportá-lo como OVA / TAR etc ...

    
por Onitlikesonic 26.02.2018 / 19:42

1 resposta

1

Infelizmente, o OVA promete muito mais do que é capaz de fornecer. Na melhor das hipóteses, é um formato padrão para a distribuição de imagens de disco, mas faz pouco, ou nada, garantir que uma imagem de disco possa ser inicializada sem problemas em vários hipervisores. Todo hipervisor emula um conjunto diferente de hardware virtual, de modo que o sistema operacional convidado precisará de drivers diferentes instalados para cada hipervisor. Alguns sistemas operacionais como o Linux são razoavelmente bons, sendo capazes de inicializar com hardware arbitrário, autodetectando drivers para combinar com o que eles acham, mas mesmo assim é fácil desorganizá-los e fazê-lo quebrar. por exemplo, se o seu /etc/fstab listar "/" como estando no disco /dev/vda1 (para o driver de disco virtio-blk do QEMU) que não funcionará quando inicializado no VMWare com um disco SCSI que aparece como /dev/sda1 . O Windows é realmente difícil de se adaptar a diferentes harware, já que ele gosta de vincular drivers específicos a cada disco / NIC / etc.

Também há problema que todo hipervisor tem seu próprio formato de imagem de disco preferido - VMWare prefere vmdk, QEMU gosta raw ou qcow2 idealmente, o VirtualBox tem outro, etc, etc. O OVA não faz nada para resolver nenhum desses problemas difíceis.

Esse tipo de problema é a razão pela qual existem ferramentas como virt-v2v ( link ) que usam uma imagem de disco para um hipervisor e reconfigurar o sistema operacional convidado para trabalhar em um hypervisor diferente, alterando o formato do disco ao mesmo tempo.

Mesmo que, de alguma forma, você construa uma imagem de disco que você acha que funciona em todas elas, você ainda precisa passar por um ciclo completo de testes de controle de qualidade para garantir que funcione corretamente.

IMHO é mais fácil apenas criar uma imagem de disco dedicada para cada hipervisor.

    
por 27.02.2018 / 11:39