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.