Eu estou olhando para criar um arquivo OVF durante um processo de compilação noturno. Eu atualmente tenho esse processo criando uma imagem qcow2, que eu converto para vmdk usando qemu.
qemu-img convert -f qcow2 ${image_name} -O vmdk ${image_name}.vmdk
O processo que pretendo substituir é aquele em que executo uma atualização em uma VM ESx com a imagem desejada e uso ovftool para exportar um ovf da imagem atualizada (isso me faz baixar o ovf, vmdk e mf). Em seguida, insiro informações de EULA no ovf, atualizo o manifesto (mf) que contém sha1sum do ovf e vmdk. Eu coloco o mvf, vmdk e mf em um óvulo que pode então ser entregue e importado para VMs e ESx. Este processo funciona.
Minha esperança aqui é que eu possa criar meu vmdk e gerar um arquivo ovf e mf que funcione com meu vmdk. No entanto, qualquer ov / ovf que eu tente criar acaba me dando um erro EOF quando tento carregá-lo no VirtualBox, que é colado abaixo.
Could not create the imported medium '/home/shayne/VirtualBox VMs/disk1.vmdk' (VERR_EOF).
Result Code:
VBOX_E_FILE_ERROR (0x80BB0004)
Component:
ApplianceWrap
Interface:
IAppliance {8398f026-4add-4474-5bc3-2f9f2140b23e}
Eu sou capaz de criar uma nova imagem no VirtualBox usando o vmdk que eu gero, então não suspeito que esse seja o problema. As únicas linhas que eu esperaria que eu precisaria mudar do meu ovf de trabalho que é gerado em uma VM carregada existente seriam as seguintes.
Atualize o campo ovf: size para ser o novo tamanho do vmdk
<File ovf:href="disk1.vmdk" ovf:id="file1" ovf:size="3144482816"/>
Atualize o campo ovf: format para ser monolítico esparso, que é o novo formato do meu vmdk.
<Disk ovf:capacity="8" ovf:capacityAllocationUnits="byte * 2^30" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized"/>
Qualquer ajuda seria muito apreciada em qualquer processo que eu possa usar para ir de qcow2 para óvulos.
Tags virtualization qcow2 ovf