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.peterm...@syseleven.de> 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 -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp