[Openstack] Cannot boot from volume with 2 devices

Vishvananda Ishaya vishvananda at gmail.com
Tue Nov 1 19:49:43 UTC 2011


Sounds like we can work around this pretty easily by sorting the disks before we pass them into the xml template.

Vish

On Nov 1, 2011, at 9:52 AM, Gaurav Gupta wrote:

> Hi all, I asked a question on Launchpad. but haven't heard back anything yet. Trying this forum to see if someone has any idea how to resolve this issue:
> https://answers.launchpad.net/nova/+question/176938
> 
> To summarize:
> ----------------------
> 
> Say I had 2 disks, disk1 and disk2 (represented by 2 volumes). disk1 has the root-file-system and disk2 has some data. I boot an instances using the boot-from-volumes extension, and specify the 2 disks such as disk1 should be attached to /dev/vda and disk2 to /dev/vdb. When the instance is launched it fails to boot, because it tries to find the root-filesystem on disk2 instead. 
> 
> The underlying problem is with virsh/libvirt. Boot fails because in the libvirt.xml file created by Openstack, disk2 (/dev/vdb) is listed before disk1 (/dev/vda). So, what happens is that the hypervisor attaches disk2 first (since its listed first in the XML). Therefore when these disks are attached on the guest, disk2 appears as /dev/vda and disk1 as /dev/vdb, which causes the boot failure. Later the kernel tries to find the root filesystem on '/dev/vda' (because thats' what is selected as the root) and it fails for obvious reason. I think it's a virsh bug. It should be smart about it and attach the devices in the right order. _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20111101/195a392f/attachment.html>


More information about the Openstack mailing list