yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #88207
[Bug 1952003] Re: Revert resize (on different host) + ovs network backend with iptables security group firewall driver (aka hybrid plug) is broken
Reviewed: https://review.opendev.org/c/openstack/nova/+/819494
Committed: https://opendev.org/openstack/nova/commit/0b0f40d1b308b29da537859b72080488560c23d4
Submitter: "Zuul (22348)"
Branch: master
commit 0b0f40d1b308b29da537859b72080488560c23d4
Author: Artom Lifshitz <alifshit@xxxxxxxxxx>
Date: Fri Nov 26 14:36:09 2021 -0500
Revert "Revert resize: wait for events according to hybrid plug"
This reverts commit 7a7a223602ca5aa0aca8f65a6ab143f1d8f8ec1b.
That commit was added because - tl'dr - upon revert resize, Neutron
with the OVS backend and the iptables security group driver would send
us the network-vif-plugged event as soon as we updated the port
binding.
That behaviour has changed with commit 66c7f00e1d9. With that commit,
we started unplugging the vifs on the source compute host when doing a
resize. When reverting the resize, the vifs had to be re-plugged again,
regarldess of the networking backend in use. This renders commit
7a7a223602ca5aa0aca8f65a6ab143f1d8f8ec1b. pointless, and it can be
reverted.
Conflicts - most have to do with context around this commit's code:
nova/compute/manager.py
a2984b647a4 added provider_mappings to
_finish_revert_resize_network_migrate_finish()'s signature
750aef54b19 started using
_finish_revert_resize_network_migrate_finish() in
_finish_revert_snapshot_based_resize_at_source()
nova/network/model.py
8b33ac06445 added get_live_migration_plug_time_events() and
has_live_migration_plug_time_event()
7da94440db1 added has_port_with_allocation()
nova/objects/migration.py
f203da38387 added is_resize() and is_live_migration()
nova/tests/unit/compute/test_compute.py
a0e60feb3ec added request_spec to the test
nova/tests/unit/compute/test_compute_mgr.py
be278006a58 added unit tests below ours
nova/tests/unit/network/test_network_info.py
7da94440db1 (again) added tests for has_port_with_allocation()
nova/tests/unit/virt/libvirt/test_driver.py and
nova/virt/libvirt/driver.py are different in that attempting to
identify individual conflicts is a pointless exercise, as so much has
changed (mdev, vtmp, the recent wait for events during hard reboot
workaround config option, etc). They can be treated as
manual removal of any code that had to do with the bind-time events
logic (though guided by the conflict markers in git).
TODO(artom) There was a follow up commit,
78a08d44ea68b31e27ce344f452756886ad309bd, that added the migration
parameter to finish_revert_migration(). This is no longer needed, as
the migration was only used to obtain plug-time events. We'll have to
undo that as well.
Closes-bug: 1952003
Change-Id: I3cb39a9ec2c260f422b3c48122b9db512cdd799b
** Changed in: nova
Status: In Progress => Fix Released
--
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/1952003
Title:
Revert resize (on different host) + ovs network backend with iptables
security group firewall driver (aka hybrid plug) is broken
Status in OpenStack Compute (nova):
Fix Released
Bug description:
$subject
First noticed in internal Red Hat CI of OSP 17 (based on
stable/wallaby), reproduced in upstream DNM patch [2].
tl;dr is - Nova waits for a "bind-time" external event from Neutron
when it updates the port binding back to the original host during the
resize revert, but Neutron never sends it. Nova times out, and the
resize revert fails.
[1] https://bugzilla.redhat.com/show_bug.cgi?id=2011433
[2] https://review.opendev.org/c/openstack/nova/+/817303
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1952003/+subscriptions
References