7811e2a7c3
This plugin supports multiple plugins at same time. This plugin is for L3 connectivility between networks which are realized by different plugins. This plugin add new attribute 'flavor:id'. flavor:id correspond to specific plugin. flavor-plugin mapping could be configureable by plugin_list config. This plugin also support extensions. We can map extension to plugin by using extension_map config. Implements blueprint metaplugin Change-Id: Ia94d2349fb3ce9f121bbd2505324ae6f0c34247a |
||
---|---|---|
.. | ||
agent | ||
common | ||
tests | ||
__init__.py | ||
meta_db_v2.py | ||
meta_models_v2.py | ||
meta_quantum_plugin.py | ||
proxy_quantum_plugin.py | ||
README | ||
run_tests.py |
# -- Background This plugin support multiple plugin at same time. This plugin is for L3 connectivility between networks which are realized by different plugins.This plugin add new attribute 'flavor:id'. flavor:id correspond to specific plugin ( flavor-plugin mapping could be configureable by plugin_list config. This plugin also support extensions. We can map extension to plugin by using extension_map config. [DATABASE] # This line MUST be changed to actually run the plugin. # Example: # sql_connection = mysql://root:nova@127.0.0.1:3306/ovs_quantum # Replace 127.0.0.1 above with the IP address of the database used by the # main quantum server. (Leave it as is if the database runs on this host.) sql_connection = mysql://root:password@localhost/quantum_metaplugin?charset=utf8 # Database reconnection retry times - in event connectivity is lost # set to -1 implgies an infinite retry count # sql_max_retries = 10 # Database reconnection interval in seconds - in event connectivity is lost reconnect_interval = 2 [META] ## This is list of flavor:quantum_plugins # extension method is used in the order of this list plugin_list= 'openvswitch:quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2,linuxbridge:quantum.plugins.linuxbridge.lb_quantum_plugin.LinuxBridgePluginV2' # Default value of flavor default_flavor = 'openvswitch' # supported extentions supported_extension_aliases = 'providernet' # specific method map for each flavor to extensions extension_map = 'get_port_stats:nvp' # -- BridgeDriver Configration # In order to use metaplugin, you should use MetaDriver. Following configation is needed. [DEFAULT] # Meta Plugin # Mapping between flavor and driver meta_flavor_driver_mappings = openvswitch:quantum.agent.linux.interface.OVSInterfaceDriver, linuxbridge:quantum.agent.linux.interface.BridgeInterfaceDriver # interface driver for MetaPlugin interface_driver = quantum.agent.linux.interface.MetaInterfaceDriver # -- Agent Agents for Metaplugin are in quantum/plugins/metaplugin/agent linuxbridge_quantum_agent and ovs_quantum_agent is available. # -- Extensions - flavor MetaPlugin supports flavor and provider net extension. Metaplugin select plugin_list using flavor. One plugin may use multiple flavor value. If the plugin support flavor, it may provide multiple flavor of network. - Attribute extension Each plugin can use attribute extension such as provider_net, if you specify that in supported_extension_aliases. - providernet Vlan ID range of each plugin should be different, since Metaplugin dose not manage that. #- limitations Basically, All plugin should inherit QuantumDBPluginV2. Metaplugin assumes all plugin share same Database expecially for IPAM part in QuantumV2 API. You can use another plugin if you use ProxyPluginV2, which proxies request to the another quantum server. Example flavor configration for ProxyPluginV2 meta_flavor_driver_mappings = "openvswitch:quantum.agent.linux.interface.OVSInterfaceDriver,proxy:quantum.plugins.metaplugin.proxy_quantum_plugin.ProxyPluginV2" [Proxy] auth_url = http://10.0.0.1:35357/v2.0 auth_region = RegionOne admin_tenant_name = service admin_user = quantum admin_password = password