Public bug reported:
This is hard to explain so here goes.....
When a compute node is making a lot of multipath calls eg. due to bug 1277316
sometimes it can fail to retrieve a multipath device.
When this happens it falls back to using the raw iscsi device.
Example code:
host_device = ("/dev/disk/by-path/ip-%s-iscsi-%s-lun-%s" %
(iscsi_properties['target_portal'],
iscsi_properties['target_iqn'],
iscsi_properties.get('target_lun', 0)))
if libvirt_iscsi_use_multipath:
multipath_device = self._get_multipath_device_name(host_device)
if multipath_device is not None:
host_device = multipath_device
.....
This still actually works for the attach but if you then detach this
volume nova is expecting a multpath device and in the end it ends up
disconnecting an iscsi connection which affects all volumes on the
compute node.
In my mind two things need to happen.
1. If it can't find the multipath device it should fail, not fall back to iscsi
device
2. Need some retry logic in get_multipath_device_name
** Affects: nova
Importance: Undecided
Status: New
--
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/1290681
Title:
get_multipath_device_name can fail and lead to broken volumes
Status in OpenStack Compute (Nova):
New
Bug description:
This is hard to explain so here goes.....
When a compute node is making a lot of multipath calls eg. due to bug 1277316
sometimes it can fail to retrieve a multipath device.
When this happens it falls back to using the raw iscsi device.
Example code:
host_device = ("/dev/disk/by-path/ip-%s-iscsi-%s-lun-%s" %
(iscsi_properties['target_portal'],
iscsi_properties['target_iqn'],
iscsi_properties.get('target_lun', 0)))
if libvirt_iscsi_use_multipath:
multipath_device = self._get_multipath_device_name(host_device)
if multipath_device is not None:
host_device = multipath_device
.....
This still actually works for the attach but if you then detach this
volume nova is expecting a multpath device and in the end it ends up
disconnecting an iscsi connection which affects all volumes on the
compute node.
In my mind two things need to happen.
1. If it can't find the multipath device it should fail, not fall back to
iscsi device
2. Need some retry logic in get_multipath_device_name
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1290681/+subscriptions
--
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp