← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2087941] [NEW] [eventlet-deprecation] Remove the usage of eventlet in the OVN metadata agent

 

Public bug reported:

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

** Affects: neutron
     Importance: Undecided
         Status: New

-- 
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-deprecation] Remove the usage of eventlet in the OVN
  metadata agent

Status in neutron:
  New

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