[os-brick] Fix multipathd support when 'find_multipaths' is set to 'yes'
There is an issue in os-brick related to multipath support for iSCSI connector. Basically when multipathd is configured with feature 'find_multipaths' set to 'yes' #1815844 [0]. In this situation, multipathd automatically generate multipath device when it discovers: - There are at least two non-blacklisted paths with the same WWID. - The user manually forces the creation of the device by specifying a device with the multipath command. - A path has the same WWID as a multipath device that was previously created (even if that multipath device does not currently exist). Whenever a multipath device is created, multipath remembers the WWID of the device so that it will automatically create the device again as soon as it sees a path with that WWID. This situation happens as described in bug #1815844 [0] when we attach a volume, detach it and then re-attach it again. openstack volume create pure2 --size 10 --type pure openstack server add volume T1 pure2 openstack server remove volume T1 pure2 openstack server add volume T1 pure2 A patch has been proposed to fix the support [1]. Since we have workaround when 'find_multipaths' is set to 'no'. The question is: do we want to fix it? If not, I suggest to document it, that this feature from multipathd should be disabled. Probably a side-note in the config option 'volume_use_multipath' can help. We could also add a log warning in os-brick when we detect the issue. Thanks, s. [0] https://bugs.launchpad.net/charm-nova-compute/+bug/1815844 [1] https://review.openstack.org/#/c/638639/ [2] https://docs.openstack.org/nova/rocky/configuration/config.html#libvirt.volu...
On 08/03, Sahid Orentino Ferdjaoui wrote:
There is an issue in os-brick related to multipath support for iSCSI connector. Basically when multipathd is configured with feature 'find_multipaths' set to 'yes' #1815844 [0].
In this situation, multipathd automatically generate multipath device when it discovers:
- There are at least two non-blacklisted paths with the same WWID. - The user manually forces the creation of the device by specifying a device with the multipath command. - A path has the same WWID as a multipath device that was previously created (even if that multipath device does not currently exist). Whenever a multipath device is created, multipath remembers the WWID of the device so that it will automatically create the device again as soon as it sees a path with that WWID.
This situation happens as described in bug #1815844 [0] when we attach a volume, detach it and then re-attach it again.
openstack volume create pure2 --size 10 --type pure openstack server add volume T1 pure2 openstack server remove volume T1 pure2 openstack server add volume T1 pure2
A patch has been proposed to fix the support [1].
Since we have workaround when 'find_multipaths' is set to 'no'. The question is: do we want to fix it?
If not, I suggest to document it, that this feature from multipathd should be disabled. Probably a side-note in the config option 'volume_use_multipath' can help. We could also add a log warning in os-brick when we detect the issue.
Hi, I believe the assessment of the bug is not correct. In all the testings I've done while refactoring the iSCSI connector using multipathing I always used the less favorable conditions, which include setting find_multipaths to yes, and there was never an incidence of the multipath not being found because the multipath had already been added before. It is true that I never tried the Pure backend, but I have tested other backends such as XtremIO, Kaminario, QNAP, and 3PAR. Even though I don't have access to a Pure storage, I'll try to do a proper RCA and update the bug and the patch. Cheers, Gorka.
Thanks, s.
[0] https://bugs.launchpad.net/charm-nova-compute/+bug/1815844 [1] https://review.openstack.org/#/c/638639/ [2] https://docs.openstack.org/nova/rocky/configuration/config.html#libvirt.volu...
participants (2)
-
Gorka Eguileor
-
Sahid Orentino Ferdjaoui