![Itsuro Oda](/assets/img/avatar_default.png)
Multiple plugins under metaplugin become 'q-plugin' topic consumers and a request from an agent is handled by one of them randomly. Fortunatly most of RPC callbacks are common for plugins but a problem occurs if an RPC is not supported by the received plugin. This is one of risks when using metaplugin. Fundamental fix of this problem (such as RPC delegation handling of metaplugin) is difficult since each plugin needs to modify. But when only one plugin has plugin specific RPCs and other RPCs are independet of plugins, if the plugin can be selected for RPC handling, the problem does not happen. Typical use case of metaplugin such as combination of an agent-based plugin and a controller-based plugin often applies to this condition. This patch adds 'rpc_flavor' configuration parameter to select an RPC handling plugin. If 'rpc_flavor' is specified, only the specified plugin becomes 'q-plugin' topic consumer. If 'rpc_flavor' is not specified, the behavior is same as previous one. Change-Id: If133b054bba53829cebe63c1e0ebe6099eb1fd95 Closes-bug: #1267330 DocImpact
22 lines
931 B
INI
22 lines
931 B
INI
|
|
[meta]
|
|
## This is list of flavor:neutron_plugins
|
|
# extension method is used in the order of this list
|
|
# If you use a router service plugin, set 'l3_plugin_list' blank.
|
|
# If 'l3_plugin_list' is not blank, must not specify a router service
|
|
# plugin in 'service_plugins' of neutron.conf.
|
|
plugin_list= 'openvswitch:neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2,linuxbridge:neutron.plugins.linuxbridge.lb_neutron_plugin.LinuxBridgePluginV2'
|
|
l3_plugin_list= 'openvswitch:neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2,linuxbridge:neutron.plugins.linuxbridge.lb_neutron_plugin.LinuxBridgePluginV2'
|
|
|
|
# Default value of flavor
|
|
default_flavor = 'openvswitch'
|
|
default_l3_flavor = 'openvswitch'
|
|
|
|
# supported extensions
|
|
supported_extension_aliases = 'providernet'
|
|
# specific method map for each flavor to extensions
|
|
extension_map = 'get_port_stats:nvp'
|
|
|
|
# flavor of which plugin handles RPC
|
|
rpc_flavor =
|