Reviewed: https://review.opendev.org/c/openstack/neutron/+/938393 Committed: https://opendev.org/openstack/neutron/commit/1dabdf118d514e95cc54c02aedf1bf653c62c8f0 Submitter: "Zuul (22348)" Branch: master
commit 1dabdf118d514e95cc54c02aedf1bf653c62c8f0 Author: Rodolfo Alonso Hernandez <[email protected]> Date: Fri Jan 3 11:19:39 2025 +0000 [eventlet-removal] Use non-eventlet metadata proxy in OVN metadata agent The new metadata proxy server implementation, used in the OVN agent, is now used in the OVN metadata agent. The same limitation applies: it is only possible to create a server inside a thread, running in the same process (same as with metadata_workers=0). The configuration variable metadata_workers no longer applies. Closes-Bug: #2087941 Change-Id: If5d74d6e21a22e4f4dbed27ed9be828adad857e8 ** 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/2087941 Title: [eventlet-removal] Remove the usage of eventlet in the OVN metadata agent Status in neutron: Fix Released Bug description: References: * https://etherpad.opendev.org/p/oct2024-ptg-neutron * https://etherpad.opendev.org/p/neutron-eventlet-deprecation Remove the import and usage of the eventlet library in the OVN metadata agent. ============================================================ It doesn’t use RPC for communication with the Neutron API. It is not spawned using ``oslo_service.launch``. ``oslo.service`` is a framework library used by Neutron to run the agent processes. Imports ``ovsdbapp`` to create IDL connections. This library and ``ovs`` (imported by ``ovsdbapp``) work with ``eventlet`` and normal threads. The metadata driver (``MetadataDriver``) service is executed inside a ``UnixDomainWSGIServer``, that inherits from ``neutron.api.wsgi.Server``. This is the base class to create a WSGI server based on ``eventlet``. * When metadata_workers=0, the WSGI server creates a ``WorkerService`` to run the application (proxy handler). The ``WorkerService`` spawns the application inside a greenpool (``eventlet`` dependant). * When metadata_workers>0, a set of instances is spawned, based on the same ``WorkerService`` class. Each instance is created using ``oslo_service.service.ProcessLauncher``, also based on ``eventlet``. Patch testing this agent without without patching the system modules (metadata_workers=2 (cpu/2)): * [eventlet] Remove eventlet from the OVN metadata agent: https://review.opendev.org/c/openstack/neutron/+/922329 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/2087941/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

