commit 587092c909e15e983f7aef31d7bc0862271a32c7
Author: Anthony Lee <email address hidden>
Date: Thu Jul 16 13:02:00 2015 -0700
Fix live-migrations usage of the wrong connector information
During the post_live_migration step for the Nova libvirt driver
an incorrect assumption is being made about the connector
information being sent to _disconnect_volume. It is assumed that
the connection information on the source and destination is the
same but that is not always the case. The BDM, where the
connector information is being retrieved from only contains the
connection information for the destination. This will not work
when trying to disconnect volumes from the source during live
migration as the properties such as the target_lun and
initiator_target_map could be different. This ends up leaving
behind dangling LUNs and possibly removing the incorrect
volume's LUNs.
The solution proposed here utilizes the connection_info that
can be retrieved for a host from Cinder's initialize_connection
API. This connection information contains the correct data for
the source host and allows volume LUNs to be removed properly.
--
NOTE(sahid): The TODO comment in the original change on master is
omitted here since os-brick wasn't used by nova in kilo so leaving
it in the backport would be confusing.
Reviewed: https:/ /review. openstack. org/211051 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=587092c909e 15e983f7aef31d7 bc0862271a32c7
Committed: https:/
Submitter: Jenkins
Branch: stable/kilo
commit 587092c909e15e9 83f7aef31d7bc08 62271a32c7
Author: Anthony Lee <email address hidden>
Date: Thu Jul 16 13:02:00 2015 -0700
Fix live-migrations usage of the wrong connector information
During the post_live_migration step for the Nova libvirt driver target_ map could be different. This ends up leaving
an incorrect assumption is being made about the connector
information being sent to _disconnect_volume. It is assumed that
the connection information on the source and destination is the
same but that is not always the case. The BDM, where the
connector information is being retrieved from only contains the
connection information for the destination. This will not work
when trying to disconnect volumes from the source during live
migration as the properties such as the target_lun and
initiator_
behind dangling LUNs and possibly removing the incorrect
volume's LUNs.
The solution proposed here utilizes the connection_info that connection
can be retrieved for a host from Cinder's initialize_
API. This connection information contains the correct data for
the source host and allows volume LUNs to be removed properly.
--
NOTE(sahid): The TODO comment in the original change on master is
omitted here since os-brick wasn't used by nova in kilo so leaving
it in the backport would be confusing.
Change-Id: I3dfb75eb58dfbc 66b218bcee473af 4c2ac282eb6
Closes-Bug: #1475411
Closes-Bug: #1288039
Closes-Bug: #1423772