One should be able to set up different mtus for different physnets
external_mtu may differ from tenant_net_mtu
This patchset fixes that issue
Customer-Found
Change-Id: I1eeb6cffd5e8d940ddced41e4a94c7b973f67c2e
diff --git a/README.rst b/README.rst
index 416f93b..ef03151 100644
--- a/README.rst
+++ b/README.rst
@@ -287,6 +287,21 @@
external_access: false
+Specify different mtu values for different physnets
+---------------------------------------------------
+
+Neutron Server
+
+.. code-block:: yaml
+
+ neutron:
+ server:
+ version: mitaka
+ backend:
+ external_mtu: 1500
+ tenant_net_mtu: 9000
+ ironic_net_mtu: 9000
+
Neutron VXLAN tenant networks with Network Nodes (non DVR)
----------------------------------------------------------
diff --git a/neutron/files/mitaka/ml2_conf.ini b/neutron/files/mitaka/ml2_conf.ini
index 2b8dab3..afd6bf4 100644
--- a/neutron/files/mitaka/ml2_conf.ini
+++ b/neutron/files/mitaka/ml2_conf.ini
@@ -123,10 +123,10 @@
{%- do physical_network_mtus.append(['physnet1',server.backend.get('external_mtu', '1500')]|join(":")) %}
{%- endif %}
{%- if "vlan" in server.backend.tenant_network_types %}
-{%- do physical_network_mtus.append(['physnet2',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet2',server.backend.get('tenant_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
{%- if server.get('ironic_enabled', False) %}
-{%- do physical_network_mtus.append(['physnet3',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet3',server.backend.get('ironic_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
physical_network_mtus = {{ ','.join(physical_network_mtus) }}
diff --git a/neutron/files/newton/ml2_conf.ini b/neutron/files/newton/ml2_conf.ini
index 2b8dab3..afd6bf4 100644
--- a/neutron/files/newton/ml2_conf.ini
+++ b/neutron/files/newton/ml2_conf.ini
@@ -123,10 +123,10 @@
{%- do physical_network_mtus.append(['physnet1',server.backend.get('external_mtu', '1500')]|join(":")) %}
{%- endif %}
{%- if "vlan" in server.backend.tenant_network_types %}
-{%- do physical_network_mtus.append(['physnet2',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet2',server.backend.get('tenant_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
{%- if server.get('ironic_enabled', False) %}
-{%- do physical_network_mtus.append(['physnet3',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet3',server.backend.get('ironic_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
physical_network_mtus = {{ ','.join(physical_network_mtus) }}
diff --git a/neutron/files/ocata/ml2_conf.ini b/neutron/files/ocata/ml2_conf.ini
index b61e313..95d4771 100644
--- a/neutron/files/ocata/ml2_conf.ini
+++ b/neutron/files/ocata/ml2_conf.ini
@@ -170,10 +170,10 @@
{%- do physical_network_mtus.append(['physnet1',server.backend.get('external_mtu', '1500')]|join(":")) %}
{%- endif %}
{%- if "vlan" in server.backend.tenant_network_types %}
-{%- do physical_network_mtus.append(['physnet2',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet2',server.backend.get('tenant_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
{%- if server.get('ironic_enabled', False) %}
-{%- do physical_network_mtus.append(['physnet3',server.backend.get('external_mtu', '1500')]|join(":")) %}
+{%- do physical_network_mtus.append(['physnet3',server.backend.get('ironic_net_mtu', server.backend.get('external_mtu', '1500'))]|join(":")) %}
{%- endif %}
physical_network_mtus = {{ ','.join(physical_network_mtus) }}
diff --git a/tests/pillar/control_single.sls b/tests/pillar/control_single.sls
index 2eb905e..d59669b 100644
--- a/tests/pillar/control_single.sls
+++ b/tests/pillar/control_single.sls
@@ -2,6 +2,9 @@
server:
enabled: true
backend:
+ external_mtu: 1500
+ tenant_net_mtu: 9000
+ ironic_net_mtu: 9000
engine: contrail
#contrail_discovery_host
host: 127.0.0.1