Documentation:
https://wiki.openstack.org/wiki/LibvirtCustomHardware
http://openstack.10931.n7.nabble.com/Nove-Launch-an-instance-with-IDE-disk-type-instead-of-virtio-disk-type-td19582.html
Which is: “Kernel panic – not syncing: Attempted to kill init!”
Basically this is a result of not being able to mount the root disk. The image holds LVM groups… and these are not available.
Now something about OpenStack – by default it uses the highest-performance disk bus drivers: VirtIO.
You probably heard of other options like “IDE” (the oldest, slower, most compatible).
If you take a look at your manifest file (cdr-20131111083629.ovf), you will find:
<StorageController name="IDE Controller" type="PIIX4" PortCount="2" useHostIOCache="true" Bootable="tr
<StorageController name="SATA Controller" type="AHCI" PortCount="1" useHostIOCache="true" Bootable="tr
That means it is expecting IDE controller.
Now, there is a way to force OpenStack to use IDE bus controller, read this: https://wiki.openstack.org/wiki/LibvirtCustomHardware
So I issued:
glance image-update {image_id} --property hw_disk_bus=ide
Now… simply rebuilding the instance will not work, because the bus driver will not be changed. You need to terminate instance and create a new one.
There is one more thing – if this image is really dumb, you will also have problem with networking – it uses VirtIO drivers by default too. While most recent Linux distributions include VirtIO drivers for disk/net, this one might not have it. If that’s the case, you can use the guide above to figure out that the following command will make the image force nova to use different network driver:
glance image-update {image_id} --property hw_vif_model=e1000
(if e1000 is still too good, the last option is rtl8139).