devstack/lib/quantum_plugins
Kyle Mestery ebfac64d2a Add support for setting extra networking configuration options.
Add support for generically setting arguments for OpenStack Networking
for both the server and agent. This is done using Q_SRV_EXTRA_OPTS for the
server, which let you place settings in the "OVS" or "LINUX_BRIDGE"
sections of the plugin configuration file. For the agent, two variables
are defined: Q_AGENT_EXTRA_AGENT_OPTS lets you set items in the "AGENT"
section of the plugin configuration file, and Q_AGENT_EXTRA_SRV_OPTS
lets you set things in the "OVS" or "LINUX_BRIDGE" sections of the
plugin configuration file.

Implements blueprint devstack-quantum-config.

Change-Id: I9ba44b21231f88cda1bcc5e3389c7875f03d8145
2013-06-07 14:45:22 +00:00
..
services Add configurable use of veths with Quantum+OVS. 2013-04-30 05:57:25 +00:00
bigswitch_floodlight Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
brocade Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
linuxbridge Add support for setting extra networking configuration options. 2013-06-07 14:45:22 +00:00
linuxbridge_agent Add support for setting extra networking configuration options. 2013-06-07 14:45:22 +00:00
ml2 Support for the ml2 quantum plugin. 2013-06-06 23:26:00 -04:00
nec Merge "add firewall driver if we use quantum security group" 2013-05-31 16:28:23 +00:00
nicira Changes to NVP plugin configuration file 2013-05-28 14:08:28 -07:00
openvswitch Add support for setting extra networking configuration options. 2013-06-07 14:45:22 +00:00
openvswitch_agent Add support for setting extra networking configuration options. 2013-06-07 14:45:22 +00:00
ovs_base On unstack : clean up network namespaces created by quantum 2013-05-22 10:00:30 +02:00
plumgrid Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
README.md Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
ryu Merge "add firewall driver if we use quantum security group" 2013-05-31 16:28:23 +00:00

Quantum plugin specific files

Quantum plugins require plugin specific behavior. The files under the directory, lib/quantum_plugins/, will be used when their service is enabled. Each plugin has lib/quantum_plugins/$Q_PLUGIN and define the following functions. Plugin specific configuration variables should be in this file.

  • filename: $Q_PLUGIN
    • The corresponding file name MUST be the same to plugin name $Q_PLUGIN. Plugin specific configuration variables should be in this file.

functions

lib/quantum calls the following functions when the $Q_PLUGIN is enabled

  • quantum_plugin_create_nova_conf : set NOVA_VIF_DRIVER and optionally set options in nova_conf e.g. NOVA_VIF_DRIVER=${NOVA_VIF_DRIVER:-"nova.virt.libvirt.vif.LibvirtGenericVIFDriver"}
  • quantum_plugin_install_agent_packages : install packages that is specific to plugin agent e.g. install_package bridge-utils
  • quantum_plugin_configure_common : set plugin-specific variables, Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_DB_NAME, Q_PLUGIN_CLASS
  • quantum_plugin_configure_debug_command
  • quantum_plugin_configure_dhcp_agent
  • quantum_plugin_configure_l3_agent
  • quantum_plugin_configure_plugin_agent
  • quantum_plugin_configure_service
  • quantum_plugin_setup_interface_driver
  • has_quantum_plugin_security_group: return 0 if the plugin support quantum security group otherwise return 1
  • quantum_plugin_check_adv_test_requirements: return 0 if requirements are satisfied otherwise return 1