*** This bug is a duplicate of bug 1386511 *** https://bugs.launchpad.net/bugs/1386511
This is duplicate of https://bugs.launchpad.net/nova/+bug/1386511 which is already fixed ** Changed in: nova Importance: High => Undecided ** Changed in: nova Status: Confirmed => Invalid ** This bug has been marked a duplicate of bug 1386511 VMWare: attach a iscsi volume to a VirtualIDEController -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1383100 Title: Vmware: attach an iscsi volume to instance failed Status in OpenStack Compute (nova): Invalid Bug description: When I try to attach an iscsi volume which created by cinder lvm iscsi driver to an instance. I discovered the following two problems: 1. In current code base,When attaching an iscsi volume, it choose the adapter type the same way as the attachment of a VMDK volume : def _attach_volume_iscsi(self, connection_info, instance, mountpoint): ...... (vmdk_file_path, adapter_type, disk_type) = vm_util.get_vmdk_path_and_adapter_type(hardware_devices) self.attach_disk_to_vm(vm_ref, instance, adapter_type, 'rdmp', device_name=device_name) Indeed, the adapter type should always be "lsiLogicsas". It is easy to appear an odd scenario that an iscsi volume is attached on an IDE adapter. 2. The current code always choose to rescan the first host's HBA of a cluster. eg. You have two hosts in a cluster of a vcenter : host01 and host 02. If you want to attach an iscsi volume to an instance spawned in host02. The attach code should rescan the host02's HBA and discover the target. But, In fact the code is always rescan the host01's HBA: def _iscsi_rescan_hba(self, target_portal): """Rescan the iSCSI HBA to discover iSCSI targets.""" host_mor = vm_util.get_host_ref(self._session, self._cluster) The "host_mor" always represent the first host. The following error may be produced: 2014-10-20 10:50:07.917 21540 ERROR oslo.messaging.rpc.dispatcher [req-bdf00be9-194f-474d-a61b-5c998c36bdea ] Exception during message handling: The virtual disk is either corrupted or not a supported format. 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher Traceback (most recent call last): 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/messaging/rpc/dispatcher.py", line 134, in _dispatch_and_reply 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher incoming.message)) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/messaging/rpc/dispatcher.py", line 177, in _dispatch 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/messaging/rpc/dispatcher.py", line 123, in _do_dispatch 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher result = getattr(endpoint, method)(ctxt, **new_args) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 418, in decorated_function 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return function(self, context, *args, **kwargs) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/exception.py", line 88, in wrapped 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher payload) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/exception.py", line 71, in wrapped 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return f(self, context, *args, **kw) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 302, in decorated_function 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher pass 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 288, in decorated_function 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return function(self, context, *args, **kwargs) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 330, in decorated_function 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher kwargs['instance'], e, sys.exc_info()) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 318, in decorated_function 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return function(self, context, *args, **kwargs) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4550, in attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher do_attach_volume(context, instance, driver_bdm) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 272, in inner 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return f(*args, **kwargs) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4548, in do_attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher bdm.destroy(context) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4545, in do_attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return self._attach_volume(context, instance, driver_bdm) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4568, in _attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher self.volume_api.unreserve_volume(context, bdm.volume_id) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 4560, in _attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher do_check_attach=False, do_driver_attach=True) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/block_device.py", line 46, in wrapped 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher ret_val = method(obj, context, *args, **kwargs) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/block_device.py", line 261, in attach 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher connector) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/openstack/common/excutils.py", line 82, in __exit__ 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/block_device.py", line 252, in attach 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher device_type=self['device_type'], encryption=encryption) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/driver.py", line 455, in attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher mountpoint) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/volumeops.py", line 401, in attach_volume 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher self._attach_volume_iscsi(connection_info, instance, mountpoint) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/volumeops.py", line 387, in _attach_volume_iscsi 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher device_name=device_name) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/volumeops.py", line 73, in attach_disk_to_vm 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher vm_util.reconfigure_vm(self._session, vm_ref, vmdk_attach_config_spec) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/vm_util.py", line 1334, in reconfigure_vm 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher session._wait_for_task(reconfig_task) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/nova/virt/vmwareapi/driver.py", line 676, in _wait_for_task 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return self.wait_for_task(task_ref) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/vmware/api.py", line 382, in wait_for_task 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return evt.wait() 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/eventlet/event.py", line 121, in wait 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return hubs.get_hub().switch() 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/eventlet/hubs/hub.py", line 293, in switch 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher return self.greenlet.switch() 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/vmware/common/loopingcall.py", line 76, in _inner 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher self.f(*self.args, **self.kw) 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher File "/usr/lib/python2.6/site-packages/oslo/vmware/api.py", line 423, in _poll_task 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher raise task_ex 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher VMwareDriverException: The virtual disk is either corrupted or not a supported format. 2014-10-20 10:50:07.917 21540 TRACE oslo.messaging.rpc.dispatcher To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1383100/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp