Separate base nodes and vcp nodes in lab03_ovs_dpdk
Change-Id: I31207d2eb50a42c1812bb6bafefd82a250ac901c
Reviewed-on: https://review.gerrithub.io/374039
Reviewed-by: Dennis Dmitriev <dis.xcom@gmail.com>
Tested-by: Dennis Dmitriev <dis.xcom@gmail.com>
diff --git a/tcp_tests/environment/lab03_ovs_dpdk/nodes.yml b/tcp_tests/environment/lab03_ovs_dpdk/nodes.yml
new file mode 100644
index 0000000..971b6b9
--- /dev/null
+++ b/tcp_tests/environment/lab03_ovs_dpdk/nodes.yml
@@ -0,0 +1,557 @@
+parameters:
+ # Simulate escape sequence to not interpolate some values,
+ # so these values may get into the node yamls as ${_param:...}
+ _param:
+ _esc: $
+
+ reclass:
+ storage:
+ node:
+ infra_kvm_node01:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ proto: manual
+ slaves: enp3s0f1
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp3s0f1
+ require_interfaces:
+ - enp3s0f1
+ bond0.2416:
+ enabled: true
+ proto: manual
+ type: vlan
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0
+ require_interfaces:
+ - bond0
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ enabled: true
+ netmask: 255.255.255.0
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0.2416
+ require_interfaces:
+ - bond0.2416
+ br_mgm:
+ address: ${_param:_esc}{_param:deploy_address}
+ enabled: true
+ gateway: 172.16.49.1
+ name_servers:
+ - 8.8.8.8
+ - 8.8.4.4
+ netmask: 255.255.255.192
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp3s0f0
+ require_interfaces:
+ - enp3s0f0
+ eth1:
+ enabled: true
+ master: bond0
+ name: enp3s0f1
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ eth2:
+ enabled: true
+ name: enp3s0f0
+ proto: manual
+ type: eth
+ ipflush_onchange: true
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ infra_kvm_node02:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ proto: manual
+ slaves: eno2
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - eno2
+ require_interfaces:
+ - eno2
+ bond0.2416:
+ enabled: true
+ proto: manual
+ type: vlan
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0
+ require_interfaces:
+ - bond0
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ enabled: true
+ netmask: 255.255.255.0
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0.2416
+ require_interfaces:
+ - bond0.2416
+ br_mgm:
+ address: ${_param:_esc}{_param:deploy_address}
+ enabled: true
+ gateway: 172.16.49.1
+ name_servers:
+ - 8.8.8.8
+ - 8.8.4.4
+ netmask: 255.255.255.192
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - eno1
+ require_interfaces:
+ - eno1
+ eth1:
+ enabled: true
+ master: bond0
+ name: eno2
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ eth2:
+ enabled: true
+ name: eno1
+ proto: manual
+ type: eth
+ ipflush_onchange: true
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ infra_kvm_node03:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ proto: manual
+ slaves: eno2
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - eno2
+ require_interfaces:
+ - eno2
+ bond0.2416:
+ enabled: true
+ proto: manual
+ type: vlan
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0
+ require_interfaces:
+ - bond0
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ enabled: true
+ netmask: 255.255.255.0
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0.2416
+ require_interfaces:
+ - bond0.2416
+ br_mgm:
+ address: ${_param:_esc}{_param:deploy_address}
+ enabled: true
+ gateway: 172.16.49.1
+ name_servers:
+ - 8.8.8.8
+ - 8.8.4.4
+ netmask: 255.255.255.192
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - eno1
+ require_interfaces:
+ - eno1
+ eth1:
+ enabled: true
+ master: bond0
+ name: eno2
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ eth2:
+ enabled: true
+ name: eno1
+ proto: manual
+ type: eth
+ ipflush_onchange: true
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ openstack_compute_node01:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ iface1:
+ enabled: true
+ master: bond0
+ name: enp3s0f1
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ iface2:
+ enabled: true
+ master: bond0
+ name: enp5s0f0
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ bond0:
+ enabled: true
+ mode: active-backup
+ ovs_bridge: br-floating
+ ovs_type: OVSPort
+ proto: manual
+ slaves: enp3s0f1 enp5s0f0
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp3s0f1
+ - enp5s0f0
+ require_interfaces:
+ - enp3s0f1
+ - enp5s0f0
+ bond0.2416:
+ enabled: true
+ proto: manual
+ type: vlan
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0
+ require_interfaces:
+ - bond0
+ br-prv:
+ address: ${_param:_esc}{_param:tenant_address}
+ enabled: true
+ netmask: 255.255.255.0
+ type: dpdk_ovs_bridge
+ br_ctl:
+ address: ${_param:_esc}{_param:control_address}
+ enabled: true
+ netmask: 255.255.255.0
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0.2416
+ require_interfaces:
+ - bond0.2416
+ dpdk0:
+ bond: dpdkbond1
+ driver: igb_uio
+ enabled: true
+ n_rxq: 2
+ name: enp5s0f1
+ pci: '0000:05:00.1'
+ type: dpdk_ovs_port
+ dpdk1:
+ bond: dpdkbond1
+ driver: igb_uio
+ enabled: true
+ n_rxq: 2
+ name: enp5s0f2
+ pci: '0000:05:00.2'
+ type: dpdk_ovs_port
+ dpdkbond1:
+ bridge: br-prv
+ enabled: true
+ mode: active-backup
+ type: dpdk_ovs_bond
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ openstack_compute_node02:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ eth1:
+ enabled: true
+ master: bond0
+ name: eth0
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+# eth2:
+# enabled: true
+# master: bond0
+# name: eth3
+# proto: manual
+# type: slave
+# ipflush_onchange: true
+ bond0:
+ enabled: true
+ mode: active-backup
+ ovs_bridge: br-floating
+ ovs_type: OVSPort
+ proto: manual
+# slaves: eth0 eth3
+ slaves: eth0
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - eth0
+# - eth3
+ require_interfaces:
+ - eth0
+# - eth3
+ bond0.2416:
+ enabled: true
+ proto: manual
+ type: vlan
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0
+ require_interfaces:
+ - bond0
+ br-prv:
+ address: ${_param:_esc}{_param:tenant_address}
+ enabled: true
+ netmask: 255.255.255.0
+ type: dpdk_ovs_bridge
+ br_ctl:
+ address: ${_param:_esc}{_param:control_address}
+ enabled: true
+ netmask: 255.255.255.0
+ proto: static
+ type: bridge
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - bond0.2416
+ require_interfaces:
+ - bond0.2416
+ dpdk0:
+ bond: dpdkbond1
+ driver: igb_uio
+ enabled: true
+ n_rxq: 2
+ name: eth2
+ pci: '0000:05:00.1'
+ type: dpdk_ovs_port
+ dpdk1:
+ bond: dpdkbond1
+ driver: igb_uio
+ enabled: true
+ n_rxq: 2
+ name: eth4
+ pci: 0000:0b:00.0
+ type: dpdk_ovs_port
+ dpdkbond1:
+ bridge: br-prv
+ enabled: true
+ mode: active-backup
+ type: dpdk_ovs_bond
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ openstack_gateway_node01:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ ovs_bridge: br-floating
+ ovs_type: OVSPort
+ proto: manual
+ slaves: enp2s0f1
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp2s0f1
+ require_interfaces:
+ - enp2s0f1
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ br-prv:
+ enabled: true
+ type: ovs_bridge
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ bridge: br-floating
+ enabled: true
+ netmask: 255.255.255.0
+ ovs_options: tag=2416
+ proto: static
+ type: ovs_port
+ floating-to-prv:
+ bridge: br-floating
+ enabled: true
+ peer: prv-to-floating
+ port_type: patch
+ type: ovs_port
+ primary_first_nic:
+ enabled: true
+ master: bond0
+ name: enp2s0f1
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ prv-to-floating:
+ bridge: br-prv
+ enabled: true
+ peer: floating-to-prv
+ port_type: patch
+ type: ovs_port
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ openstack_gateway_node02:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ ovs_bridge: br-floating
+ ovs_type: OVSPort
+ proto: manual
+ slaves: enp2s0f1
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp2s0f1
+ require_interfaces:
+ - enp2s0f1
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ br-prv:
+ enabled: true
+ type: ovs_bridge
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ bridge: br-floating
+ enabled: true
+ netmask: 255.255.255.0
+ ovs_options: tag=2416
+ proto: static
+ type: ovs_port
+ floating-to-prv:
+ bridge: br-floating
+ enabled: true
+ peer: prv-to-floating
+ port_type: patch
+ type: ovs_port
+ primary_first_nic:
+ enabled: true
+ master: bond0
+ name: enp2s0f1
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ prv-to-floating:
+ bridge: br-prv
+ enabled: true
+ peer: floating-to-prv
+ port_type: patch
+ type: ovs_port
+
+ classes:
+ - environment.lab03_ovs_dpdk.common
+
+ openstack_gateway_node03:
+ params:
+ # Use interfaces configuration from the context file,
+ # or generate your own 'linux.network.interface' object using
+ # additional inventory.
+ # For example, you can take the 'inventory_node_name' and find it's config
+ # in an additional dict inventory[inventory_node_name] loaded from custom_inventory.yaml,
+ # or skip the original context from 'cookiecutter' object and iterate only custom inventory.
+ linux_network_interfaces:
+ bond0:
+ enabled: true
+ mode: active-backup
+ ovs_bridge: br-floating
+ ovs_type: OVSPort
+ proto: manual
+ slaves: enp2s0f1
+ type: bond
+ use_interfaces: # Remove 'use_interfaces' after https://gerrit.mcp.mirantis.net/#/c/8344
+ - enp2s0f1
+ require_interfaces:
+ - enp2s0f1
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ br-prv:
+ enabled: true
+ type: ovs_bridge
+ br_ctl:
+ address: ${_param:_esc}{_param:single_address}
+ bridge: br-floating
+ enabled: true
+ netmask: 255.255.255.0
+ ovs_options: tag=2416
+ proto: static
+ type: ovs_port
+ floating-to-prv:
+ bridge: br-floating
+ enabled: true
+ peer: prv-to-floating
+ port_type: patch
+ type: ovs_port
+ primary_first_nic:
+ enabled: true
+ master: bond0
+ name: enp2s0f1
+ proto: manual
+ type: slave
+ ipflush_onchange: true
+ prv-to-floating:
+ bridge: br-prv
+ enabled: true
+ peer: floating-to-prv
+ port_type: patch
+ type: ovs_port
+
+ classes:
+ - environment.lab03_ovs_dpdk.common