インスタンスに 1 つ以上の iSCSI マルチパスの cinder-volumes があると nova evacuate が常に失敗する

Solution Verified - Updated -

Issue

  • インスタンスに 1 つ以上の iSCSI マルチパスの cinder-volumes があると "nova evacuate" が常に失敗します。

    サンプルログは以下のようになります。

    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 6391, in _error_out_instance_on_exception
      yield
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2700, in rebuild_instance
      bdms, recreate, on_shared_storage, preserve_ephemeral)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2739, in _do_rebuild_instance_with_claim
      self._do_rebuild_instance(*args, **kwargs)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2847, in _do_rebuild_instance
      self._rebuild_default_impl(**kwargs)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2600, in _rebuild_default_impl
      detach_block_devices(context, bdms)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2824, in detach_block_devices
      destroy_bdm=False)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 4734, in _detach_volume
      connection_info = self._driver_detach_volume(context, instance, bdm)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 4687, in _driver_detach_volume
      self.volume_api.roll_detaching(context, volume_id)
    File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 204, in __exit__
      six.reraise(self.type_, self.value, self.tb)
    File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 4675, in _driver_detach_volume
      encryption=encryption)
    File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 1272, in detach_volume
      self._disconnect_volume(connection_info, disk_dev)
    File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 1069, in _disconnect_volume
      driver.disconnect_volume(connection_info, disk_dev)
    File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/volume/iscsi.py", line 93, in disconnect_volume
      self.connector.disconnect_volume(connection_info['data'], None)
    File "/usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py", line 254, in inner
      return f(*args, **kwargs)
    File "/usr/lib/python2.7/site-packages/os_brick/initiator/connector.py", line 565, in disconnect_volume
      raise exception.VolumeDeviceNotFound(device=host_devices)
    

Environment

  • Red Hat Openstack Platform (RHOSP) 7 以前
  • openstack-nova-12.0.4-7.el7ost より以前の Red Hat Openstack Platform (RHOSP) 8
  • openstack-nova
  • cinder のバックエンド

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In