← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1871355] Re: OVN octavia provider driver should spawn long-living process in driver agent

 

Reviewed:  https://review.opendev.org/718203
Committed: https://git.openstack.org/cgit/openstack/ovn-octavia-provider/commit/?id=c6cee9207349a12e499cbc81fe0e5d4d5bfa015c
Submitter: Zuul
Branch:    master

commit c6cee9207349a12e499cbc81fe0e5d4d5bfa015c
Author: Brian Haley <bhaley@xxxxxxxxxx>
Date:   Tue Apr 7 15:54:57 2020 -0400

    Spawn long-running processes in the driver agent
    
    The OVN Octavia provider driver in the OvnProviderHelper
    class caches these attributes:
    
        ovn_nbdb_api_for_events
        ovn_nb_idl_for_events
        ovn_nbdb_api
    
    to not re-create things each time OVN IDL that is used for
    handling events is called.
    
    We should be using the Octavia Driver Provider Agent framework
    instead to not have those long-running IDLs in the API process.
    
    This change:
    - Creates driver provider agent and registers its entry point
    - While setting up the driver agent instance, start IDL that
      will handle events
    - Stop caching ovn_nbdb_api, ovn_nb_idl_for_events and
      ovn_nbdb_api_for_events in the OvnProviderHelper class
    
    Change-Id: I0034a48997bd6b95e1b51bfcbd56e8372b35e62f
    Closes-bug: #1871355


** 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/1871355

Title:
  OVN octavia provider driver should spawn long-living process in driver
  agent

Status in neutron:
  Fix Released

Bug description:
  The OVN Octavia provider driver in OvnProviderHelper caches attributes
  [1]:

  ovn_nbdb_api_for_events = None
  ovn_nb_idl_for_events = None
  ovn_nbdb_api = None

  
  to not re-create each time OVN IDL that is used for handling events.

  Now we are able to use Octavia Driver Agent [2] instead to not have
  those long-living IDLs in API process.

  TODO:
  - create driver agent and register its entry point
  - While setting up the driver agent instance start IDL that will handle events:
  https://opendev.org/openstack/ovn-octavia-provider/src/branch/master/ovn_octavia_provider/driver.py#L279
  - stop caching ovn_nbdb_api, ovn_nb_idl_for_events and ovn_nbdb_api_for_events in the OvnProviderHelper.

  
  [1] https://opendev.org/openstack/ovn-octavia-provider/src/branch/master/ovn_octavia_provider/driver.py#L273
  [2] https://docs.openstack.org/octavia/latest/contributor/guides/providers.html#provider-agent-method-invocation

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1871355/+subscriptions


References