[openstack-dev] Is volume attachment to an LXC instance is broken?
David Kang
dkang at isi.edu
Tue Sep 4 18:00:21 UTC 2012
Is volume attachment to an LXC instance is broken?
I'm trying to run the following command:
$ euca-attach-volume vol-00000007 -i i-0000000b -d /dev/vdc
It fails and the nova-compute log is copied and pasted below.
The error message is :
"InvalidDevicePath: The supplied device path (/dev/a) is invalid."
The device name given is "/dev/vdc", but it looks like that get_device_name_for_instance()
changes it to '/dev/a'.
And it ends up the error of "InvalidDevicePath".
Is it bug or my mistake?
I pulled the nova from github on August 29th.
And the followings are configured in /etc/nova/nova.conf file.
use_cow_images=True
libvirt_type=lxc
Thanks,
David
------------- log of nova-compute ---------------
2012-09-04 13:37:46 DEBUG nova.utils [req-79250a0b-6c11-4afc-a0a4-75736d3853c5 admin admin] Got semaphore "f3fb4350-a72e-404f-a21f-10f333fe67e8" for method "do_reserve"... from (pid=13108) inner /usr/local/nova/nova/utils.py:712
2012-09-04 13:37:46 DEBUG nova.utils [req-79250a0b-6c11-4afc-a0a4-75736d3853c5 admin admin] Attempting to grab semaphore "compute_resources" for method "update_load_stats_for_instance"... from (pid=13108) inner /usr/local/nova/nova/utils.py:708
2012-09-04 13:37:46 DEBUG nova.utils [req-79250a0b-6c11-4afc-a0a4-75736d3853c5 admin admin] Got semaphore "compute_resources" for method "update_load_stats_for_instance"... from (pid=13108) inner /usr/local/nova/nova/utils.py:712
2012-09-04 13:37:46 ERROR nova.openstack.common.rpc.amqp [-] Exception during message handling
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/openstack/common/rpc/amqp.py", line 275, in _process_data
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp rval = self.proxy.dispatch(ctxt, version, method, **args)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/openstack/common/rpc/dispatcher.py", line 145, in dispatch
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp return getattr(proxyobj, method)(ctxt, **kwargs)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/exception.py", line 117, in wrapped
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp temp_level, payload)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/exception.py", line 92, in wrapped
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp return f(*args, **kw)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 211, in decorated_function
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp pass
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 204, in decorated_function
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 237, in decorated_function
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp instance_uuid, e, sys.exc_info())
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 226, in decorated_function
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 2057, in reserve_block_device_name
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp return do_reserve()
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/utils.py", line 733, in inner
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp retval = f(*args, **kwargs)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/manager.py", line 2051, in do_reserve
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp device)
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp File "/usr/local/nova/nova/compute/utils.py", line 56, in get_device_name_for_instance
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp raise exception.InvalidDevicePath(path=mappings['root'])
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp InvalidDevicePath: The supplied device path (/dev/a) is invalid.
2012-09-04 13:37:46 TRACE nova.openstack.common.rpc.amqp
2012-09-04 13:37:46 ERROR nova.openstack.common.rpc.common [-] Returning exception The supplied device path (/dev/a) is invalid. to caller
2012-09-04 13:37:46 ERROR nova.openstack.common.rpc.common [-] ['Traceback (most recent call last):\n', ' File "/usr/local/nova/nova/openstack/common/rpc/amqp.py", line 275, in _process_data\n rval = self.proxy.dispatch(ctxt, version, method, **args)\n', ' File "/usr/local/nova/nova/openstack/common/rpc/dispatcher.py", line 145, in dispatch\n return getattr(proxyobj, method)(ctxt, **kwargs)\n', ' File "/usr/local/nova/nova/exception.py", line 117, in wrapped\n temp_level, payload)\n', ' File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__\n self.gen.next()\n', ' File "/usr/local/nova/nova/exception.py", line 92, in wrapped\n return f(*args, **kw)\n', ' File "/usr/local/nova/nova/compute/manager.py", line 211, in decorated_function\n pass\n', ' File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__\n self.gen.next()\n', ' File "/usr/local/nova/nova/compute/manager.py", line 204, in decorated_function\n return function(self, context, *args, **kwargs)\n', ' File "/usr/local/nova/nova/compute/manager.py", line 237, in decorated_function\n instance_uuid, e, sys.exc_info())\n', ' File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__\n self.gen.next()\n', ' File "/usr/local/nova/nova/compute/manager.py", line 226, in decorated_function\n return function(self, context, *args, **kwargs)\n', ' File "/usr/local/nova/nova/compute/manager.py", line 2057, in reserve_block_device_name\n return do_reserve()\n', ' File "/usr/local/nova/nova/utils.py", line 733, in inner\n retval = f(*args, **kwargs)\n', ' File "/usr/local/nova/nova/compute/manager.py", line 2051, in do_reserve\n device)\n', ' File "/usr/local/nova/nova/compute/utils.py", line 56, in get_device_name_for_instance\n raise exception.InvalidDevicePath(path=mappings[\'root\'])\n', 'InvalidDevicePath: The supplied device path (/dev/a) is invalid.\n']
----------------------
Dr. Dong-In "David" Kang
Computer Scientist
USC/ISI
More information about the OpenStack-dev
mailing list