Merge "Start using project_network_types for neutron ML2"

This commit is contained in:
Zuul
2026-03-04 21:02:09 +00:00
committed by Gerrit Code Review
5 changed files with 22 additions and 22 deletions

View File

@@ -201,35 +201,35 @@ fi
# --------------------------------
# The following variables control the Neutron ML2 plugins' allocation
# of tenant networks and availability of provider networks. If these
# are not configured in ``localrc``, tenant networks will be local to
# of project networks and availability of provider networks. If these
# are not configured in ``localrc``, project networks will be local to
# the host (with no remote connectivity), and no physical resources
# will be available for the allocation of provider networks.
# To disable tunnels (GRE or VXLAN) for tenant networks,
# To disable tunnels (GRE or VXLAN) for project networks,
# set to False in ``local.conf``.
# GRE tunnels are only supported by the openvswitch.
ENABLE_TENANT_TUNNELS=${ENABLE_TENANT_TUNNELS:-True}
# If using GRE, VXLAN or GENEVE tunnels for tenant networks,
# specify the range of IDs from which tenant networks are
# If using GRE, VXLAN or GENEVE tunnels for project networks,
# specify the range of IDs from which project networks are
# allocated. Can be overridden in ``localrc`` if necessary.
TENANT_TUNNEL_RANGES=${TENANT_TUNNEL_RANGES:-1:1000}
# To use VLANs for tenant networks, set to True in localrc. VLANs
# To use VLANs for project networks, set to True in localrc. VLANs
# are supported by the ML2 plugins, requiring additional configuration
# described below.
ENABLE_TENANT_VLANS=${ENABLE_TENANT_VLANS:-False}
# If using VLANs for tenant networks, set in ``localrc`` to specify
# the range of VLAN VIDs from which tenant networks are
# If using VLANs for project networks, set in ``localrc`` to specify
# the range of VLAN VIDs from which project networks are
# allocated. An external network switch must be configured to
# trunk these VLANs between hosts for multi-host connectivity.
#
# Example: ``TENANT_VLAN_RANGE=1000:1999``
TENANT_VLAN_RANGE=${TENANT_VLAN_RANGE:-}
# If using VLANs for tenant networks, or if using flat or VLAN
# If using VLANs for project networks, or if using flat or VLAN
# provider networks, set in ``localrc`` to the name of the physical
# network, and also configure ``OVS_PHYSICAL_BRIDGE`` for the
# openvswitch agent, as described below.
@@ -237,7 +237,7 @@ TENANT_VLAN_RANGE=${TENANT_VLAN_RANGE:-}
# Example: ``PHYSICAL_NETWORK=default``
PHYSICAL_NETWORK=${PHYSICAL_NETWORK:-public}
# With the openvswitch agent, if using VLANs for tenant networks,
# With the openvswitch agent, if using VLANs for project networks,
# or if using flat or VLAN provider networks, set in ``localrc`` to
# the name of the OVS bridge to use for the physical network. The
# bridge will be created if it does not already exist, but a

View File

@@ -72,16 +72,16 @@ function neutron_plugin_configure_common {
function neutron_plugin_configure_service {
if [[ "$Q_ML2_TENANT_NETWORK_TYPE" != "local" ]]; then
Q_SRV_EXTRA_OPTS+=(tenant_network_types=$Q_ML2_TENANT_NETWORK_TYPE)
Q_SRV_EXTRA_OPTS+=(project_network_types=$Q_ML2_TENANT_NETWORK_TYPE)
elif [[ "$ENABLE_TENANT_TUNNELS" == "True" ]]; then
# This assumes you want a simple configuration, and will overwrite
# Q_SRV_EXTRA_OPTS if set in addition to ENABLE_TENANT_TUNNELS.
Q_SRV_EXTRA_OPTS+=(tenant_network_types=gre)
Q_SRV_EXTRA_OPTS+=(project_network_types=gre)
Q_ML2_PLUGIN_GRE_TYPE_OPTIONS=(tunnel_id_ranges=$TENANT_TUNNEL_RANGES)
elif [[ "$ENABLE_TENANT_VLANS" == "True" ]]; then
Q_SRV_EXTRA_OPTS+=(tenant_network_types=vlan)
Q_SRV_EXTRA_OPTS+=(project_network_types=vlan)
else
echo "WARNING - The ml2 plugin is using local tenant networks, with no connectivity between hosts."
echo "WARNING - The ml2 plugin is using local project networks, with no connectivity between hosts."
fi
# Allow for overrding VLAN configuration (for example, to configure provider

View File

@@ -20,12 +20,12 @@ function neutron_plugin_configure_common {
function neutron_plugin_configure_service {
if [[ "$ENABLE_TENANT_TUNNELS" == "True" ]]; then
iniset /$Q_PLUGIN_CONF_FILE ovs tenant_network_type gre
iniset /$Q_PLUGIN_CONF_FILE ovs project_network_type gre
iniset /$Q_PLUGIN_CONF_FILE ovs tunnel_id_ranges $TENANT_TUNNEL_RANGES
elif [[ "$ENABLE_TENANT_VLANS" == "True" ]]; then
iniset /$Q_PLUGIN_CONF_FILE ovs tenant_network_type vlan
iniset /$Q_PLUGIN_CONF_FILE ovs project_network_type vlan
else
echo "WARNING - The openvswitch plugin is using local tenant networks, with no connectivity between hosts."
echo "WARNING - The openvswitch plugin is using local project networks, with no connectivity between hosts."
fi
# Override ``OVS_VLAN_RANGES`` and ``OVS_BRIDGE_MAPPINGS`` in ``localrc``

View File

@@ -35,7 +35,7 @@ Q_PUBLIC_VETH_INT=${Q_PUBLIC_VETH_INT:-veth-pub-int}
# The next variable is configured by plugin
# e.g. _configure_neutron_l3_agent or lib/neutron_plugins/*
#
# L3 routers exist per tenant
# L3 routers exist per project
Q_L3_ROUTER_PER_TENANT=${Q_L3_ROUTER_PER_TENANT:-True}
@@ -216,7 +216,7 @@ function create_neutron_initial_network {
if is_networking_extension_supported "router" && is_networking_extension_supported "external-net"; then
# Create a router, and add the private subnet as one of its interfaces
if [[ "$Q_L3_ROUTER_PER_TENANT" == "True" ]]; then
# create a tenant-owned router.
# create a project-owned router.
ROUTER_ID=$(openstack --os-cloud devstack --os-region "$REGION_NAME" router create $Q_ROUTER_NAME -f value -c id)
die_if_not_set $LINENO ROUTER_ID "Failure creating router $Q_ROUTER_NAME"
else
@@ -387,7 +387,7 @@ function _neutron_configure_router_v6 {
# Override global IPV6_ROUTER_GW_IP with the true value from neutron
# NOTE(slaweq): when enforce scopes is enabled in Neutron, router's
# gateway ports aren't visible in API because such ports don't belongs
# to any tenant. Because of that, at least temporary we need to find
# to any project. Because of that, at least temporary we need to find
# IPv6 address of the router's gateway in a bit different way.
# It can be reverted when bug
# https://bugs.launchpad.net/neutron/+bug/1959332 will be fixed

View File

@@ -21,7 +21,7 @@ set -o pipefail
TOP_DIR=$(cd $(dirname "$0")/.. && pwd)
# This *must* be run as the admin tenant
# This *must* be run as the admin project
source $TOP_DIR/openrc admin admin
function usage {
@@ -29,7 +29,7 @@ function usage {
ping_neutron.sh <net_name> [ping args]
This provides a wrapper to ping neutron guests that are on isolated
tenant networks that the caller can't normally reach. It does so by
project networks that the caller can't normally reach. It does so by
using either the DHCP or Metadata network namespace to support both
ML2/OVS and OVN.