[Openstack] [GLANCE] Proposal: Combine the "container_format" and "disk_format" fields in 2.0 Images API

Jay Pipes jaypipes at gmail.com
Thu Dec 1 15:52:33 UTC 2011


Hey all,

OK, so I'm almost done with Draft 3 of the OpenStack Images API 2.0
Proposal. While doing this, however, I have come to the conclusion
that the container_format we added in the Cactus timeframe just makes
things more confusing and should probably be removed.

We have two fields in the current API that store information about the
disk file format and any container/package format for an image.

http://glance.openstack.org/formats.html

The disk_format field currently allows the following:

    raw - This is an unstructured disk image format
    vhd - This is the VHD disk format, a common disk format used by
virtual machine monitors from VMWare, Xen, Microsoft, VirtualBox, and
others
    vmdk - Another common disk format supported by many common virtual
machine monitors
    vdi - A disk format supported by VirtualBox virtual machine
monitor and the QEMU emulator
    iso - An archive format for the data contents of an optical disc
(e.g. CDROM).
    qcow2 - A disk format supported by the QEMU emulator that can
expand dynamically and supports Copy on Write
    aki - This indicates what is stored in Glance is an Amazon kernel image
    ari - This indicates what is stored in Glance is an Amazon ramdisk image
   ami - This indicates what is stored in Glance is an Amazon machine image

For container formats, we currently allow:

    ovf - This is the OVF container format
    bare - This indicates there is no container or metadata envelope
for the image
    aki - This indicates what is stored in Glance is an Amazon kernel image
    ari - This indicates what is stored in Glance is an Amazon ramdisk image
    ami - This indicates what is stored in Glance is an Amazon machine image

The problem I see is that really OVF is the only real "container
format" and I'm just not sure it's useful to have users set a
container format. The goal was to allow Glance to report that the
image file stored in Glance is an OVA file and not an image file
itself. An OVA file is a single file that contains the OVF directory
structure tar'd up. However, I think this can be more easily
accomplished by consolidating the disk and container formats in the
2.0 API to just a single format field with the possible values:

    ova - This indicates the data stored in Glance is an OVF container
that may actually contain multiple virtual appliances that has been
tar'd into the single-file OVA format
    raw - This is an unstructured disk image format
    vhd - This is the VHD disk format, a common disk format used by
virtual machine monitors from VMWare, Xen, Microsoft, VirtualBox, and
others
    vmdk - Another common disk format supported by many common virtual
machine monitors
    vdi - A disk format supported by VirtualBox virtual machine
monitor and the QEMU emulator
    iso - An archive format for the data contents of an optical disc
(e.g. CDROM).
    qcow2 - A disk format supported by the QEMU emulator that can
expand dynamically and supports Copy on Write
    aki - This indicates what is stored in Glance is an Amazon kernel image
    ari - This indicates what is stored in Glance is an Amazon ramdisk image
    ami - This indicates what is stored in Glance is an Amazon machine image

What do people think of this proposal to combine the two into a single
"format" field?

Thanks in advance for your feedback,
-jay




More information about the Openstack mailing list