
Currently, neutron tunnel endpoints must be IPv4 addresses, i.e. $HOST_IP, although IPv6 endpoints are supported by most drivers. Create a TUNNEL_IP_VERSION variable to choose which host IP to use, either HOST_IP or HOST_IPV6, and configure it in the OVS and Linuxbridge agent driver files. The default is still IPv4, but it can be over-ridden by specifying TUNNEL_ENDPOINT_IP accordingly. This behaves similar to the SERVICE_IP_VERSION option, which can either be set to 4 or 6, but not 4+6 - the tunnel overhead should be consistent on all systems in order not to have MTU issues. Must set the ML2 overlay_ip_version config option to match else agent tunnel sync RPC will not work. Must set the OVN external_ids:ovn-encap-ip config option to the correct address. Updated 'devstack-ipv6-only' job definition and verification role that will set all services and tunnels to use IPv6 addresses. Closes-bug: #1619476 Change-Id: I6034278dfc17b55d7863bc4db541bbdaa983a686
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.
- The corresponding file name MUST be the same to plugin name
functions
lib/neutron-legacy
calls the following functions when the $Q_PLUGIN
is enabled
neutron_plugin_create_nova_conf
: optionally set options in nova_confneutron_plugin_install_agent_packages
: install packages that is specific to plugin agent e.g. install_package bridge-utilsneutron_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 1neutron_plugin_check_adv_test_requirements
: return 0 if requirements are satisfied otherwise return 1