devstack/lib/neutron_plugins
Jakub Libosvar a99ab7002c neutron: Use openvswitch firewall driver by default
openvswitch firewall has been in Neutron tree since Newton and has gone
through lots of improvements since including simple upgrade path from
the iptables hybrid driver.

We have a tempest job running in Neutron tree with openvswitch firewall
that's been voting and stable for a while. For neutron_tempest_plugin,
we have had the openvswitch firewall in use since the beginning.

This patch proposes openvswitch firewall driver to become a default
driver for openvswitch agent deployments.

Change-Id: If26d0180e459210511f25f1faa83dd8ccea25ff4
2018-05-14 16:16:08 +02:00
..
services Allow public router external net to use a non-flat provider network. 2018-01-18 10:59:51 -05:00
bigswitch_floodlight Removed neutron_plugin_configure_debug_command functions 2017-02-10 06:39:04 +00:00
brocade Don't set external_network_bridge by default 2017-02-10 06:39:04 +00:00
cisco Removed neutron_plugin_configure_debug_command functions 2017-02-10 06:39:04 +00:00
embrane Namespace XTRACE commands 2015-11-27 15:36:04 +11:00
linuxbridge_agent Merge "Skips enabling kernel bridge firewall in container" 2017-03-03 16:20:20 +00:00
ml2 Merge "Remove duplicate entry for flat_networks" 2017-01-08 17:38:26 +00:00
nuage Removed neutron_plugin_configure_debug_command functions 2017-02-10 06:39:04 +00:00
openvswitch Namespace XTRACE commands 2015-11-27 15:36:04 +11:00
openvswitch_agent Remove XenServer specific ovs agent config 2017-03-21 20:56:58 -07:00
ovs_base neutron: Use openvswitch firewall driver by default 2018-05-14 16:16:08 +02:00
README.md Removed neutron_plugin_configure_debug_command functions 2017-02-10 06:39:04 +00:00

Neutron plugin specific files

Neutron plugins require plugin specific behavior. The files under the directory, lib/neutron_plugins/, will be used when their service is enabled. Each plugin has lib/neutron_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/neutron-legacy calls the following functions when the $Q_PLUGIN is enabled

  • neutron_plugin_create_nova_conf : optionally set options in nova_conf
  • neutron_plugin_install_agent_packages : install packages that is specific to plugin agent e.g. install_package bridge-utils
  • neutron_plugin_configure_common : set plugin-specific variables, Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_PLUGIN_CLASS
  • neutron_plugin_configure_dhcp_agent
  • neutron_plugin_configure_l3_agent
  • neutron_plugin_configure_plugin_agent
  • neutron_plugin_configure_service
  • neutron_plugin_setup_interface_driver
  • has_neutron_plugin_security_group: return 0 if the plugin support neutron security group otherwise return 1
  • neutron_plugin_check_adv_test_requirements: return 0 if requirements are satisfied otherwise return 1