libvirt: slow live-migration to ensure network is ready
In Neutron, commit b7c303ee0a16a05c1fdb476dc7f4c7ca623a3f58 introduced
events sent during a live migration when the VIFs are plugged on
destination node.
The Linux bridge agent mechanism driver is detecting new networks on
the destination host only when the TAP devices are created, and these
tap devices are only created when libvirt starts the migration. As a
result, we must actually start the migration and then slow it as we
wait for the neutron events.
NOTE(lyarwood): The driver.py conflict is due to additional QEMU and
LIBVIRT version constants being present in Queens. The test_driver.py
conflict being the result of our need to assert byte strings in Pike as
also seen by I9b545ca8aa6dd7b41ddea2d333190c9fbed19bc1 and resolved by
I85cd9a903fba310b5ae7bedeed118ca4ea98dff6 in Queens.
Reviewed: https:/ /review. openstack. org/559032 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=ff747792b8f 5aefe1bebb01bdf 49dacc01353348
Committed: https:/
Submitter: Zuul
Branch: stable/pike
commit ff747792b8f5aef e1bebb01bdf49da cc01353348
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Thu Aug 24 09:13:09 2017 -0400
libvirt: slow live-migration to ensure network is ready
In Neutron, commit b7c303ee0a16a05 c1fdb476dc7f4c7 ca623a3f58 introduced
events sent during a live migration when the VIFs are plugged on
destination node.
The Linux bridge agent mechanism driver is detecting new networks on
the destination host only when the TAP devices are created, and these
tap devices are only created when libvirt starts the migration. As a
result, we must actually start the migration and then slow it as we
wait for the neutron events.
This change ensures we wait for these events.
Depends-On: Icb039ae2d465e3 822ab07ae4f9bc4 05c1362afba
Conflicts:
nova/ tests/unit/ virt/libvirt/ test_driver. py
nova/ virt/libvirt/ driver. py
NOTE(lyarwood): The driver.py conflict is due to additional QEMU and b41ddea2d333190 c9fbed19bc1 and resolved by ba310b5ae7bedee d118ca4ea98dff6 in Queens.
LIBVIRT version constants being present in Queens. The test_driver.py
conflict being the result of our need to assert byte strings in Pike as
also seen by I9b545ca8aa6dd7
I85cd9a903f
Closes-Bug: #1414559 4795762aa32575b a72d3a46fe8 b68b43c62e7f6d7 db2771a1f4) e051cf4dc821eb5 49e8b36ff2)
Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
Change-Id: I407034374fe17c
(cherry picked from commit 8e6d5d404cf49e5
(cherry picked from commit 224ac25cb1cca60