summaryrefslogtreecommitdiffstats
path: root/ansible
diff options
context:
space:
mode:
authorDeepak S <deepak.s@linux.intel.com>2017-10-15 16:52:09 -0700
committerRoss Brattain <ross.b.brattain@intel.com>2017-10-18 17:07:19 -0700
commite20df163b4551be03b80287e1cb96e6b9c99e0e8 (patch)
treeb99190b344380df1c10b23c483508cf4a75fe516 /ansible
parent16d26a8595bba2eb0a4b7d7642904727e9e1b37f (diff)
Adding sample multi-port ansible script
- trex - ixia - ixia correlated Change-Id: I7d1414227c27c2bb03454eac94592e07c434f070 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Diffstat (limited to 'ansible')
-rw-r--r--ansible/multi_port_baremetal_ixia_correlated_test.yaml133
-rw-r--r--ansible/multi_port_baremetal_ixia_correlated_test_templates.yml56
-rw-r--r--ansible/multi_port_baremetal_ixia_test.yaml104
-rw-r--r--ansible/multi_port_baremetal_ixia_test_templates.yml60
-rw-r--r--ansible/multi_port_baremetal_test.yaml95
-rw-r--r--ansible/multi_port_baremetal_test_templates.yml60
6 files changed, 508 insertions, 0 deletions
diff --git a/ansible/multi_port_baremetal_ixia_correlated_test.yaml b/ansible/multi_port_baremetal_ixia_correlated_test.yaml
new file mode 100644
index 000000000..ba92b5cd3
--- /dev/null
+++ b/ansible/multi_port_baremetal_ixia_correlated_test.yaml
@@ -0,0 +1,133 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- hosts: localhost
+ connection: local
+ vars:
+ scale_out:
+ - 1
+ - 2
+ flow:
+ traffic_type: 4
+ pkt_size:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ count: 10
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf_config:
+ lb_config: 'SW'
+ lb_count: 1
+ worker_config: '1C/1T'
+ worker_threads: 1
+
+ # Environment variables
+ gen:
+ user: ""
+ password: ""
+ key_filename: ~
+ tg_config:
+ ixchassis: "1.1.1.127" #ixia chassis ip
+ tcl_port: "8009" # tcl server port
+ lib_path: "/opt/ixia/ixos-api/8.01.0.2/lib/ixTcl1.0"
+ root_dir: "/opt/ixia/ixos-api/8.01.0.2/"
+ py_bin_path: "/opt/ixia/ixload/8.01.106.3/bin/"
+ py_lib_path: "/opt/ixia/ixnetwork/8.01.1029.14/lib/PythonApi"
+ dut_result_dir: "/mnt/results"
+ version: "8.01.106.3"
+ pcis:
+ uplink:
+ - "2:5" #Card:port
+ - "2:3" #Card:port
+ downlink:
+ - "2:6" #Card:port
+ - "2:5" #Card:port
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.20/24'
+ - '172.16.100.20/24'
+ downlink:
+ - '152.16.40.20/24'
+ - '172.16.40.20/24'
+ mac:
+ uplink:
+ - '00:98:10:64:14:00'
+ - '00:ac:10:64:14:0'
+ downlink:
+ - '00:98:10:28:14:00'
+ - '00:ac:10:28:14:00'
+
+ # Environment variables
+ gen_1:
+ user: ""
+ password: ""
+ key_filename: ~
+ pcis:
+ uplink:
+ - "0000:05:00.0"
+ - "0000:05:00.2"
+ downlink:
+ - "0000:05:00.1"
+ - "0000:05:00.3"
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.20/24'
+ - '172.16.100.20/24'
+ downlink:
+ - '152.16.40.20/24'
+ - '172.16.40.20/24'
+ mac:
+ uplink:
+ - '00:00:00:9e:00:f8'
+ - '00:00:00:9e:00:fa'
+ downlink:
+ - '00:00:00:9e:00:f9'
+ - '00:00:00:9e:00:fb'
+
+ vnf:
+ ip: "192.168.100.101/24"
+ user: root
+ password: ""
+ key_filename: /root/.ssh/id_rsa
+ pcis:
+ uplink:
+ - "0000:05:00.0"
+ - "0000:05:00.2"
+ downlink:
+ - "0000:05:00.1"
+ - "0000:05:00.3"
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.10/24'
+ - '172.16.100.10/24'
+ downlink:
+ - '152.16.40.10/24'
+ - '172.16.40.10/24'
+ mac:
+ uplink:
+ - '00:00:00:9e:00:f8'
+ - '00:00:00:9e:00:fa'
+ downlink:
+ - '00:00:00:9e:00:f9'
+ - '00:00:00:9e:00:fb'
+
+ tasks:
+ - include: multi_port_baremetal_ixia_correlated_test_templates.yml
+ with_items: "{{ scale_out }}"
+
diff --git a/ansible/multi_port_baremetal_ixia_correlated_test_templates.yml b/ansible/multi_port_baremetal_ixia_correlated_test_templates.yml
new file mode 100644
index 000000000..6f73d8c01
--- /dev/null
+++ b/ansible/multi_port_baremetal_ixia_correlated_test_templates.yml
@@ -0,0 +1,56 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+
+- set_fact:
+ num_vnfs: "{{ item }}"
+
+- debug:
+ var: num_vnfs
+ verbosity: 2
+
+- template:
+ src: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-ixia-correlated-scale-out.yaml
+ dest: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-ixia-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/ixia_template.yaml
+ dest: /etc/yardstick/nodes/ixia_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/pod_bm_vnf.yaml
+ dest: /etc/yardstick/nodes/pod_bm_vnf_{{num_vnfs}}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_udp_ixia_correlated_multi_port_template.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_udp_ixia_correlated_multi_port_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-ixia-correlated-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-ixia-correlated-multi-port-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/tc_baremetal_acl_udp_ixia_correlated_multi_port_template.yaml
+ dest: ../samples/vnf_samples/nsut/acl/tc_baremetal_acl_udp_ixia_correlated_multi_port_{{num_vnfs}}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/acl-tg-topology-ixia-correlated-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/acl/acl-tg-topology-ixia-correlated-multi-port-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_cgnapt_udp_ixia_correlated_multi_port_template.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_cgnapt_udp_ixia_correlated_multi_port_{{num_vnfs}}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-ixia-correlated-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-ixia-correlated-multi-port-{{ num_vnfs }}.yaml
diff --git a/ansible/multi_port_baremetal_ixia_test.yaml b/ansible/multi_port_baremetal_ixia_test.yaml
new file mode 100644
index 000000000..52bc40b43
--- /dev/null
+++ b/ansible/multi_port_baremetal_ixia_test.yaml
@@ -0,0 +1,104 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- hosts: localhost
+ connection: local
+ vars:
+ scale_out:
+ - 1
+ - 2
+ flow:
+ traffic_type: 4
+ pkt_size:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ count: 10
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf_config:
+ lb_config: 'SW'
+ lb_count: 1
+ worker_config: '1C/1T'
+ worker_threads: 1
+
+ # Environment variables
+ gen:
+ user: ""
+ password: ""
+ key_filename: ~
+ tg_config:
+ ixchassis: "1.1.1.127" #ixia chassis ip
+ tcl_port: "8009" # tcl server port
+ lib_path: "/opt/ixia/ixos-api/8.01.0.2/lib/ixTcl1.0"
+ root_dir: "/opt/ixia/ixos-api/8.01.0.2/"
+ py_bin_path: "/opt/ixia/ixload/8.01.106.3/bin/"
+ py_lib_path: "/opt/ixia/ixnetwork/8.01.1029.14/lib/PythonApi"
+ dut_result_dir: "/mnt/results"
+ version: "8.01.106.3"
+ pcis:
+ uplink:
+ - "2:5" #Card:port
+ - "2:3" #Card:port
+ downlink:
+ - "2:6" #Card:port
+ - "2:5" #Card:port
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.20/24'
+ - '172.16.100.20/24'
+ downlink:
+ - '152.16.40.20/24'
+ - '172.16.40.20/24'
+ mac:
+ uplink:
+ - '00:98:10:64:14:00'
+ - '00:ac:10:64:14:0'
+ downlink:
+ - '00:98:10:28:14:00'
+ - '00:ac:10:28:14:00'
+
+ vnf:
+ ip: "192.168.100.101/24"
+ user: root
+ password: ""
+ key_filename: /root/.ssh/id_rsa
+ pcis:
+ uplink:
+ - "0000:05:00.0"
+ - "0000:05:00.2"
+ downlink:
+ - "0000:05:00.1"
+ - "0000:05:00.3"
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.10/24'
+ - '172.16.100.10/24'
+ downlink:
+ - '152.16.40.10/24'
+ - '172.16.40.10/24'
+ mac:
+ uplink:
+ - '00:00:00:9e:00:f8'
+ - '00:00:00:9e:00:fa'
+ downlink:
+ - '00:00:00:9e:00:f9'
+ - '00:00:00:9e:00:fb'
+
+ tasks:
+ - include: multi_port_baremetal_ixia_test_templates.yml
+ with_items: "{{ scale_out }}"
+
diff --git a/ansible/multi_port_baremetal_ixia_test_templates.yml b/ansible/multi_port_baremetal_ixia_test_templates.yml
new file mode 100644
index 000000000..f2e04a2d1
--- /dev/null
+++ b/ansible/multi_port_baremetal_ixia_test_templates.yml
@@ -0,0 +1,60 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+
+- set_fact:
+ num_vnfs: "{{ item }}"
+
+- debug:
+ var: num_vnfs
+ verbosity: 2
+
+- template:
+ src: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-out.yaml
+ dest: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/ixia_template.yaml
+ dest: /etc/yardstick/nodes/ixia_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/pod_bm_vnf.yaml
+ dest: /etc/yardstick/nodes/pod_bm_vnf_{{num_vnfs}}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_rfc2544_template.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_rfc2544_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-ixia-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-ixia-multi-port-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/tc_baremetal_acl_rfc2544_ixia_template.yaml
+ dest: ../samples/vnf_samples/nsut/acl/tc_baremetal_acl_rfc2544_ixia_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/acl-tg-topology-ixia-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/acl/acl-tg-topology-multi-port-ixia-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-cgnapt-scale-out.yaml
+ dest: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-cgnapt-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_cgnapt_rfc2544_ixia_template.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_cgnapt_rfc2544_ixia_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-ixia-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-multi-port-ixia-{{ num_vnfs }}.yaml
diff --git a/ansible/multi_port_baremetal_test.yaml b/ansible/multi_port_baremetal_test.yaml
new file mode 100644
index 000000000..fb12b1c64
--- /dev/null
+++ b/ansible/multi_port_baremetal_test.yaml
@@ -0,0 +1,95 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- hosts: localhost
+ connection: local
+ vars:
+ scale_out:
+ - 1
+ - 2
+ flow:
+ traffic_type: 4
+ pkt_size:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ count: 10
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf_config:
+ lb_config: 'SW'
+ lb_count: 1
+ worker_config: '1C/1T'
+ worker_threads: 1
+
+ # Environment variables
+ gen:
+ user: root
+ password: ""
+ key_filename: /root/.ssh/id_rsa
+ pcis:
+ uplink:
+ - "0000:05:00.0"
+ - "0000:05:00.2"
+ downlink:
+ - "0000:05:00.1"
+ - "0000:05:00.3"
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.20/24'
+ - '172.16.100.20/24'
+ downlink:
+ - '152.16.40.20/24'
+ - '172.16.40.20/24'
+ mac:
+ uplink:
+ - '00:00:00:9e:00:f8'
+ - '00:00:00:9e:00:fa'
+ downlink:
+ - '00:00:00:9e:00:f9'
+ - '00:00:00:9e:00:fb'
+
+ vnf:
+ ip: "192.168.100.101/24"
+ user: root
+ password: ""
+ key_filename: /root/.ssh/id_rsa
+ pcis:
+ uplink:
+ - "0000:05:00.0"
+ - "0000:05:00.2"
+ downlink:
+ - "0000:05:00.1"
+ - "0000:05:00.3"
+ ip:
+ mgmt:
+ - '1.2.1.6/24'
+ uplink:
+ - '152.16.100.10/24'
+ - '172.16.100.10/24'
+ downlink:
+ - '152.16.40.10/24'
+ - '172.16.40.10/24'
+ mac:
+ uplink:
+ - '00:00:00:9e:00:f8'
+ - '00:00:00:9e:00:fa'
+ downlink:
+ - '00:00:00:9e:00:f9'
+ - '00:00:00:9e:00:fb'
+
+ tasks:
+ - include: multi_port_baremetal_test_templates.yml
+ with_items: "{{ scale_out }}"
+
diff --git a/ansible/multi_port_baremetal_test_templates.yml b/ansible/multi_port_baremetal_test_templates.yml
new file mode 100644
index 000000000..4b905f8c7
--- /dev/null
+++ b/ansible/multi_port_baremetal_test_templates.yml
@@ -0,0 +1,60 @@
+# Copyright (c) 2017 Intel Corporation. #
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+
+- set_fact:
+ num_vnfs: "{{ item }}"
+
+- debug:
+ var: num_vnfs
+ verbosity: 2
+
+- template:
+ src: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-out.yaml
+ dest: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/baremetal_trex.yaml
+ dest: /etc/yardstick/nodes/baremetal_trex_{{num_vnfs}}.yaml
+
+- template:
+ src: ../etc/yardstick/nodes/standalone/pod_bm_vnf.yaml
+ dest: /etc/yardstick/nodes/pod_bm_vnf_{{num_vnfs}}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_rfc2544_template.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/tc_baremetal_vfw_rfc2544_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/vfw/vfw-tg-topology-multi-port-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/tc_baremetal_vfw_rfc2544_template.yaml
+ dest: ../samples/vnf_samples/nsut/acl/tc_baremetal_vfw_rfc2544_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/acl/acl-tg-topology-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/acl/acl-tg-topology-multi-port-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-cgnapt-scale-out.yaml
+ dest: ../samples/vnf_samples/traffic_profiles/ipv4_throughput-cgnapt-{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_vfw_rfc2544_template.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/tc_baremetal_vfw_rfc2544_{{ num_vnfs }}.yaml
+
+- template:
+ src: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-multi-port.yaml
+ dest: ../samples/vnf_samples/nsut/cgnapt/cgnapt-tg-topology-multi-port-{{ num_vnfs }}.yaml