Make container_interface optional for provider network

As Neutron agents move to bare metal by default, the container_interface
attribute for a Neutron provider network (e.g. br-vlan, br-vxlan, etc) is
unnecessary and confusing. This patch aims to change it from a required
attribute to an optional one.

Change-Id: I52692f5a36e7064c3a6ac6ccafc2420549685a66
This commit is contained in:
James Denton 2019-01-15 12:47:07 +00:00
parent 06e28ec5d2
commit 8d9c0336ec
4 changed files with 14 additions and 3 deletions

View File

@ -45,7 +45,9 @@ add a new block underneath the ``provider_networks`` section:
The ``container_bridge`` setting defines the physical network bridge used
to connect the veth pair from the physical host to the container.
Inside the container, the ``container_interface`` setting defines the name
at which the physical network will be made available.
at which the physical network will be made available. The
``container_interface`` setting is not required when Neutron agents are
deployed on bare metal.
Make sure that both settings are uniquely defined across their provider
networks and that the network interface is correctly configured inside your
operating system.

View File

@ -140,7 +140,10 @@
#
# Option: container_interface (required, string)
# Name of unique interface in containers to use for this network.
# Typical values include 'eth1', 'eth2', etc.
# Typical values include 'eth1', 'eth2', etc. This option is OPTIONAL
# for Neutron provider network definitions when Neutron agents are
# deployed on bare metal (default), but REQUIRED when agents are
# deployed in containers and for all other non-Neutron use-cases.
# NOTE: Container interface is different from host interfaces.
#
# Option: container_type (required, string)

View File

@ -736,7 +736,7 @@ def container_skel_load(container_skel, inventory, config):
ip_q=ip_from_q,
q_name=q_name,
netmask=netmask,
interface=p_net['container_interface'],
interface=p_net.get('container_interface'),
bridge=p_net['container_bridge'],
net_type=p_net.get('container_type'),
net_mtu=p_net.get('container_mtu'),

View File

@ -0,0 +1,6 @@
---
features:
- |
The ``container_interface`` provider network option is no longer required
for Neutron provider network definitions when related agents or OVN
controllers are deployed on bare metal.