Instead of each individual driver setting up the RPC server (and setting
the _rpc_backend attribute on the TrunkPlugin) we now check in the
TrunkPlugin if any driver requires the RPC backend to be started.
Additionally, we only start it when this is requested by Neutron via
start_rpc_listeners(). This is required when running neutron-server and
neutron-rpc-server separately to run RPC only in neutron-rpc-server.
As we still need the notifiers of ServerSideRpcBackend to be
created/started, we separate TrunkSkeleton (which is the RPC server
implementation) and ServerSideRpcBackend (which is essentially only a
notifier). In case RPC is required by a driver, we always start the
notifier, but the RPC server only when requested via
start_rpc_listeners().
Reviewed: https:/ /review. opendev. org/c/openstack /neutron/ +/916112 /opendev. org/openstack/ neutron/ commit/ ffcaeda32adf323 88c322cfc6f7a89 33ef94d2a9
Committed: https:/
Submitter: "Zuul (22348)"
Branch: master
commit ffcaeda32adf323 88c322cfc6f7a89 33ef94d2a9
Author: Sebastian Lohff <email address hidden>
Date: Mon Apr 15 16:14:50 2024 +0200
Start trunk plugin RPC via service framework
Instead of each individual driver setting up the RPC server (and setting rpc_listeners( ). This is required when running neutron-server and rpc-server separately to run RPC only in neutron-rpc-server.
the _rpc_backend attribute on the TrunkPlugin) we now check in the
TrunkPlugin if any driver requires the RPC backend to be started.
Additionally, we only start it when this is requested by Neutron via
start_
neutron-
As we still need the notifiers of ServerSideRpcBa ckend to be started, we separate TrunkSkeleton (which is the RPC server ckend (which is essentially only a rpc_listeners( ).
created/
implementation) and ServerSideRpcBa
notifier). In case RPC is required by a driver, we always start the
notifier, but the RPC server only when requested via
start_
Change-Id: I2c6362b3320e53 4a6e65bd7701b5a c2feca42a49
Closes-Bug: #2015275
Closes-Bug: #2062009