Merge "[ha] Add fabric to maas admin subnet"
[fuel.git] / mcp / patches / 0015-Set-ovs-bridges-as-L3-interfaces.patch
index e2396de..a7b366b 100644 (file)
@@ -14,28 +14,38 @@ Change-Id: I1e83129cc184cf481bea21d7aa452bf60d9e0499
 
 diff --git a/linux/files/ovs_bridge b/linux/files/ovs_bridge
 new file mode 100644
-index 0000000..575d38f
+index 0000000..c609e45
 --- /dev/null
 +++ b/linux/files/ovs_bridge
-@@ -0,0 +1,12 @@
+@@ -0,0 +1,19 @@
 +auto {{ bridge_name }}
 +allow-ovs {{ bridge_name }}
 +iface {{ bridge_name }} inet static
 +  ovs_type OVSBridge
 +  address {{ bridge.address }}
 +  netmask {{ bridge.netmask }}
++  mtu {{ bridge.get('mtu', '1500') }}
++  {%- if bridge.use_interfaces is defined %}
++  ovs_ports {{ bridge.use_interfaces|join(' ') }}
++  {%- endif %}
++  {%- if bridge.datapath_type is defined %}
++  ovs_extra set Bridge ${IFACE} datapath_type={{ bridge.datapath_type }}
++  {%- endif %}
 +  {%- if bridge.gateway is defined %}
 +  gateway {{ bridge.gateway }}
 +  {%- endif %}
-+  {%- if bridge.ovs_options is defined %}
-+  ovs_options {{ bridge.ovs_options }}
++  {%- if bridge.name_servers is defined %}
++  dns-nameservers {{ bridge.name_servers | join(' ') }}
 +  {%- endif %}
 diff --git a/linux/files/ovs_port b/linux/files/ovs_port
 index 222ca8e..efb0307 100644
 --- a/linux/files/ovs_port
 +++ b/linux/files/ovs_port
-@@ -1,6 +1,9 @@
- auto {{ port_name }}
+@@ -1,6 +1,11 @@
++# With systemd, adding OVS bridges as 'auto' can cause race conditions
++# https://github.com/openvswitch/ovs/blob/master/debian/openvswitch-switch.README.Debian
++# auto {{ port_name }}
+-auto {{ port_name }}
  allow-{{ port.bridge }} {{ port_name }}
  iface {{ port_name }} inet {{ port.get('proto', 'manual') }}
 +{%- if '.' in port_name %}
@@ -45,10 +55,10 @@ index 222ca8e..efb0307 100644
  mtu {{ port.get('mtu', '1500') }}
  ovs_bridge {{ port.bridge }}
 diff --git a/linux/network/interface.sls b/linux/network/interface.sls
-index 3e79847..dc7180a 100644
+index 180f912..dcb295b 100644
 --- a/linux/network/interface.sls
 +++ b/linux/network/interface.sls
-@@ -72,6 +72,34 @@ remove_cloud_init_file:
+@@ -91,6 +91,34 @@ add_int_{{ int_name }}_to_ovs_dpdk_bridge_{{ interface_name }}:
  ovs_bridge_{{ interface_name }}:
    openvswitch_bridge.present:
    - name: {{ interface_name }}