yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #86443
[Bug 1927977] Re: OVN IDLs not initialized for all worker types
Reviewed: https://review.opendev.org/c/openstack/neutron/+/795781
Committed: https://opendev.org/openstack/neutron/commit/66ac943b6435901c163c3050ad41dfcaf36ac11d
Submitter: "Zuul (22348)"
Branch: master
commit 66ac943b6435901c163c3050ad41dfcaf36ac11d
Author: Bodo Petermann <b.petermann@xxxxxxxxxxxx>
Date: Thu Jun 10 15:10:59 2021 +0200
Config option to enable OVN IDL on other workers
Add a configuration option to ovn group:
additional_worker_classes_with_ovn_idl
to optionally enable OVN IDL connections on additional workers.
By default the IDL connections are only initialized on API and
maintenance workers as other worker types normally don't need them.
But some plugins or extensions might still require IDL connections on
other workers and now may enable them via configuration, by adding the
worker class (or its alias from neutron.worker_classes) to
additional_worker_classes_with_ovn_idl.
Closes-Bug: #1927977
Change-Id: Ia0d882220cd281e3c91648e3f32a842d61a5f57d
** Changed in: neutron
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1927977
Title:
OVN IDLs not initialized for all worker types
Status in neutron:
Fix Released
Bug description:
Since neutron commit "Rely on worker count for HashRing caching"
(https://opendev.org/openstack/neutron/commit/c4007b0833111a25d24f597161d39ee9ccd37189)
post_fork_initialize is only executed for API and maintenance workers.
This means for other worker types the OVN IDLs are not initialized
anymore.
I'm working on an implementation of VPNaaS for OVN (https://bugs.launchpad.net/neutron/+bug/1905391) and plan to add an OVN VPN agent whose liveness is checked in a similar way to the OVN metadata agent. A PeriodicWorker regularly checks the agent list to find dead agents. But to have the get_agents method include the OVN agents the PeriodicWorker needs the OVN IDLs and the AgentCache. Both were set up in post_fork_initialize, but now they are not.
Secondly our proposed implementation of OVN VPN agent will still make use of rabbitmq RPCs to sync the VPN service settings. The controller implements some RPC methods that may also need access to the AgentCache. So also the RpcWorker might need post_fork_initialize to set up the OVN IDLs and AgentCache.
If I did not overlook something it could be fine to go back to run
post_fork_initialize for all worker types. The main intention of the
"Rely on worker count for HashRing caching" commit was to only add the
API worker to the hash ring and that's still the case because of a
respective "if" in post_fork_initialize.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1927977/+subscriptions
References