[Openstack] Can't boot from reattached rbd volume

Daniel Snider Daniel.Snider at hypert.com
Wed Jul 2 20:52:11 UTC 2014


Hi,

I detached my root volume from my instance (which is in an rbd store) so I could extend it with cinder, then I reattached it. When I go to start the instance it's like nova has forgotten or doesn't know the volume is in an rbd store and NOT at "/var/lib/nova/instances/d1338984-4402-4af4-819e-64f312c5149b/disk". I'd really like to boot this instance rather than creating a new one. Can I make nova use the rbd volume correctly?


Error caused by starting instance with a reattached and extended rbd volume:
2014-07-02 15:53:05.546 4039504 ERROR nova.openstack.common.rpc.amqp [req-96a0463b-3d83-4691-8acb-de9dc0490557 daec025b753740c5a2b0cffd51b6c698 6343e9dce46843d18435ccf29a33bfa9] Exception during message handling
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/amqp.py", line 461, in _process_data
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     **args)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/dispatcher.py", line 172, in dispatch
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     result = getattr(proxyobj, method)(ctxt, **kwargs)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 353, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 90, in wrapped
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     payload)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 73, in wrapped
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     return f(self, context, *args, **kw)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 243, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     pass
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 229, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 294, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     function(self, context, *args, **kwargs)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 271, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     e, sys.exc_info())
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 258, in decorated_function
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1849, in start_instance
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     self._power_on(context, instance)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1836, in _power_on
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     block_device_info)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 1969, in power_on
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     self._hard_reboot(context, instance, network_info, block_device_info)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 1924, in _hard_reboot
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     block_device_info)
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4380, in get_instance_disk_info
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     dk_size = int(os.path.getsize(path))
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/genericpath.py", line 49, in getsize
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp     return os.stat(filename).st_size
2014-07-02 15:53:05.546 4039504 TRACE nova.openstack.common.rpc.amqp OSError: [Errno 2] No such file or directory: '/var/lib/nova/instances/d1338984-4402-4af4-819e-64f312c5149b/disk'

I should add that the rbd volume was initially attached on /dev/vda but after resizing it I attached it to /dev/vdb because of this error:
# nova volume-attach 9c1b7f98-81dc-49be-83ac-ffdcadde5729 957ee433-47bc-4c4a-a12b-1b93b7ecfa8d /dev/vda
ERROR: The supplied device path (/dev/vda) is in use. (HTTP 409) (Request-ID: req-14d572ea-e31f-4454-b22c-ffa88207499d)

Any ideas? This has been plaguing me all day.

Thanks a lot!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20140702/a50c49a9/attachment.html>


More information about the Openstack mailing list