- dpdk
- openstack_ha
- networks
+ - networking_gw
virtual:
nodes:
- cfg01
--- /dev/null
+#!/bin/bash -e
+##############################################################################
+# Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x
+
+salt -I 'neutron:gateway' cmd.run 'ifup --force --ignore-errors br-ex'
--- /dev/null
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+: Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+:
+: All rights reserved. This program and the accompanying materials
+: are made available under the terms of the Apache License, Version 2.0
+: which accompanies this distribution, and is available at
+: http://www.apache.org/licenses/LICENSE-2.0
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+From: Michael Polenchuk <mpolenchuk@mirantis.com>
+Date: Mon, 22 Jan 2018 15:22:47 +0400
+Subject: [PATCH] [dpdk] Support ovs bridge tagging
+
+Bring in "tag" option for dpdk/ovs bridges
+to support vlan-tagged vxlan mode.
+
+Change-Id: I7f1f88233694f2c8b968a6cf55584f32879ec042
+
+diff --git a/linux/network/dpdk.sls b/linux/network/dpdk.sls
+index 1ac9e25..05fe05f 100644
+--- a/linux/network/dpdk.sls
++++ b/linux/network/dpdk.sls
+@@ -110,7 +110,7 @@ linux_network_dpdk_bond_mode_{{ interface_name }}:
+
+ linux_network_dpdk_bridge_interface_{{ interface_name }}:
+ cmd.run:
+- - name: "ovs-vsctl add-br {{ interface_name }} -- set bridge {{ interface_name }} datapath_type=netdev"
++ - name: "ovs-vsctl add-br {{ interface_name }} -- set bridge {{ interface_name }} datapath_type=netdev{% if interface.tag is defined %} -- set port {{ interface_name }} tag={{ interface.tag }}{% endif %}"
+ - unless: "ovs-vsctl show | grep {{ interface_name }}"
+
+ {# OVS dpdk needs ip address for vxlan termination on bridge br-prv #}
/usr/share/salt-formulas/env: 0010-maas-region-allow-timeout-override.patch
/usr/share/salt-formulas/env: 0011-system.repo-Debian-Add-keyserver-proxy-support.patch
/usr/share/salt-formulas/env: 0012-linux.storage.lvm-Disable-filter.patch
+/usr/share/salt-formulas/env: 0013-dpdk-Support-ovs-bridge-tagging.patch
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
+{%- if conf.idf is defined and conf.idf.net_config is defined -%}
+ {%- set vlan_private = conf['idf']['net_config']['private']['vlan'] -%}
+{%- else -%}
+ {%- set vlan_private = '1000' -%}
+{%- endif -%}
---
classes:
- cluster.baremetal-mcp-pike-common-ha.openstack_compute
libvirt_bin: /etc/default/libvirtd
linux:
network:
- dpdk_pkgs:
- - dpdk
- - dpdk-dev
- - dpdk-igb-uio-dkms
- - dpdk-rte-kni-dkms
interface:
dpdk0:
name: ${_param:dpdk0_name}
br-prv:
enabled: true
type: dpdk_ovs_bridge
+ address: ${_param:tenant_address}
+ netmask: 255.255.255.0
+ {%- if vlan_private and vlan_private != 'native' %}
+ tag: {{ vlan_private }}
+ {%- endif %}
- cluster.baremetal-mcp-pike-common-ha.openstack_init
parameters:
_param:
- neutron_tenant_network_types: "flat,vlan"
+ neutron_tenant_network_types: "flat,vxlan"
neutron_tenant_vlan_range: "1000:1030"
nova_cpu_pinning: "5-7,13-15"
compute_hugepages_size: 2M
tenant_network_types: ${_param:neutron_tenant_network_types}
linux:
network:
- dpdk_pkgs:
- - dpdk
- - dpdk-dev
- - dpdk-igb-uio-dkms
- - dpdk-rte-kni-dkms
interface:
dpdk0:
name: ${_param:dpdk0_name}