Change Neutron's default ML2 driver to OVN

As part of the Victoria PTG the Neutron community [0] agreed on changing
the default backend driver from ML2/OVS to ML2/OVN in DevStack. A lot of
changes have been submitted towards this goal including but not limted
to:

* Moving the OVN module to DevStack:
  https://review.opendev.org/c/openstack/devstack/+/734621

* Updating the OVN module to use distro packages instead of compiling
  OVN from source: https://review.opendev.org/c/openstack/devstack/+/763402o

And now this patch is changing the the actual Q_AGENT,
Q_ML2_TENANT_NETWORK_TYPE and Q_ML2_PLUGIN_MECHANISM_DRIVERS values in
devstack to what is expected by OVN as well as updating the Zuul
templates to enable the OVN services.

[0] https://etherpad.opendev.org/p/neutron-victoria-ptg

Change-Id: I92054ce9d2ab7a42746ed5dececef583b0f8a833
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
This commit is contained in:
Lucas Alvares Gomes 2020-06-11 11:00:56 +01:00
parent 166c88b610
commit 5c304d8176
2 changed files with 30 additions and 11 deletions

View File

@ -468,6 +468,10 @@
SWIFT_HASH: 1234123412341234
DEBUG_LIBVIRT_COREDUMPS: true
NOVA_VNC_ENABLED: true
OVN_L3_CREATE_PUBLIC_NETWORK: true
OVN_DBS_LOG_LEVEL: dbg
ENABLE_CHASSIS_AS_GW: true
Q_USE_PROVIDERNET_FOR_PUBLIC: true
devstack_local_conf:
post-config:
$NEUTRON_CONF:
@ -477,7 +481,11 @@
# Core services enabled for this branch.
# This list replaces the test-matrix.
# Shared services
dstat: true
#
# NOTE(lucasagomes): disable dstat until bug
# https://bugs.launchpad.net/ubuntu/+source/dstat/+bug/1866619 is
# fixed. Also see: https://bugs.launchpad.net/neutron/+bug/1898863
dstat: false
etcd3: true
memory_tracker: true
mysql: true
@ -496,13 +504,14 @@
n-sch: true
# Placement service
placement-api: true
# OVN services
ovn-controller: true
ovn-northd: true
ovs-vswitchd: true
ovsdb-server: true
# Neutron services
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
q-svc: true
q-ovn-metadata-agent: true
# Swift services
s-account: true
s-container: true
@ -527,15 +536,24 @@
# Core services enabled for this branch.
# This list replaces the test-matrix.
# Shared services
dstat: true
#
# NOTE(lucasagomes): disable dstat until bug
# https://bugs.launchpad.net/ubuntu/+source/dstat/+bug/1866619 is
# fixed. Also see: https://bugs.launchpad.net/neutron/+bug/1898863
dstat: false
memory_tracker: true
tls-proxy: true
# Nova services
n-cpu: true
# Placement services
placement-client: true
# OVN services
ovn-controller: true
ovn-northd: false
ovs-vswitchd: true
ovsdb-server: true
# Neutron services
q-agt: true
q-ovn-metadata-agent: true
# Cinder services
c-bak: true
c-vol: true
@ -549,6 +567,7 @@
# integrated gate, so specifying the services has not effect.
# ceilometer-*: false
devstack_localrc:
ENABLE_CHASSIS_AS_GW: false
# Subnode specific settings
GLANCE_HOSTPORT: "{{ hostvars['controller']['nodepool']['private_ipv4'] }}:9292"
Q_HOST: "{{ hostvars['controller']['nodepool']['private_ipv4'] }}"

View File

@ -8,14 +8,14 @@ _XTRACE_NEUTRON_ML2=$(set +o | grep xtrace)
set +o xtrace
# Default openvswitch L2 agent
Q_AGENT=${Q_AGENT:-openvswitch}
Q_AGENT=${Q_AGENT:-ovn}
if [ -f $TOP_DIR/lib/neutron_plugins/${Q_AGENT}_agent ]; then
source $TOP_DIR/lib/neutron_plugins/${Q_AGENT}_agent
fi
# Enable this to simply and quickly enable tunneling with ML2.
# Select either 'gre', 'vxlan', or 'gre,vxlan'
Q_ML2_TENANT_NETWORK_TYPE=${Q_ML2_TENANT_NETWORK_TYPE:-"vxlan"}
Q_ML2_TENANT_NETWORK_TYPE=${Q_ML2_TENANT_NETWORK_TYPE:-"geneve"}
# This has to be set here since the agent will set this in the config file
if [[ "$Q_ML2_TENANT_NETWORK_TYPE" == "gre" || "$Q_ML2_TENANT_NETWORK_TYPE" == "vxlan" ]]; then
Q_TUNNEL_TYPES=$Q_ML2_TENANT_NETWORK_TYPE
@ -24,7 +24,7 @@ elif [[ "$ENABLE_TENANT_TUNNELS" == "True" ]]; then
fi
# List of MechanismDrivers to load
Q_ML2_PLUGIN_MECHANISM_DRIVERS=${Q_ML2_PLUGIN_MECHANISM_DRIVERS:-openvswitch,linuxbridge}
Q_ML2_PLUGIN_MECHANISM_DRIVERS=${Q_ML2_PLUGIN_MECHANISM_DRIVERS:-ovn}
# Default GRE TypeDriver options
Q_ML2_PLUGIN_GRE_TYPE_OPTIONS=${Q_ML2_PLUGIN_GRE_TYPE_OPTIONS:-tunnel_id_ranges=$TENANT_TUNNEL_RANGES}
# Default VXLAN TypeDriver options