PROX: [WIP] Added scale up TCs. 79/52979/3
authorMytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
Fri, 2 Mar 2018 09:38:13 +0000 (09:38 +0000)
committerMytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
Mon, 5 Mar 2018 13:09:26 +0000 (13:09 +0000)
These scale-up TCs replace PROX static TCs which will be removed
by separate commit once those new TCs are merged.

Change-Id: I892a81c4bfd199782fb561faccc11e70a49675ae
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-l3fwd-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-scale-up.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-scale-up.yaml [new file with mode: 0644]

diff --git a/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml b/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml
new file mode 100644 (file)
index 0000000..74c48ba
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright (c) 2018 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 vports = get(extra_args, 'vports', 2) %}
+nsd:nsd-catalog:
+    nsd:
+    -   id: prox-tg-topology
+        name: prox-tg-topology
+        short-name: prox-tg-topology
+        description: prox-tg-topology
+        constituent-vnfd:
+        -   member-vnf-index: '1'
+            vnfd-id-ref: tg__0
+            VNF model: ../../vnf_descriptors/tg_prox_tpl.yaml
+        -   member-vnf-index: '2'
+            vnfd-id-ref: vnf__0
+            VNF model: ../../vnf_descriptors/prox_vnf.yaml
+        vld:
+        -   id: uplink_0
+            name: tg__0 to vnf__0 link 1
+            type: ELAN
+            vnfd-connection-point-ref:
+            -   member-vnf-index-ref: '1'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: tg__0
+            -   member-vnf-index-ref: '2'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: vnf__0
+{% for vport in range(vports-1|int) %}
+        -   id: downlink_{{ vport }}
+            name: vnf__0 to tg__0 link {{ vport+2 }}
+            type: ELAN
+            vnfd-connection-point-ref:
+            -   member-vnf-index-ref: '1'
+                vnfd-connection-point-ref: xe{{ vport+1 }}
+                vnfd-id-ref: vnf__0
+            -   member-vnf-index-ref: '2'
+                vnfd-connection-point-ref: xe{{ vport+1 }}
+                vnfd-id-ref: tg__0
+{% else %}
+        -   id: downlink_0
+            name: vnf__0 to tg__0 link 1
+            type: ELAN
+            vnfd-connection-point-ref:
+            -   member-vnf-index-ref: '1'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: vnf__0
+            -   member-vnf-index-ref: '2'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: tg__0
+{% endfor %}
\ No newline at end of file
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-scale-up.yaml
new file mode 100644 (file)
index 0000000..b6b2285
--- /dev/null
@@ -0,0 +1,65 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  #
+  # In case where we know that all the packets generated by the generator
+  # will bw received. Then use prox_binsearch.
+  #
+  # In the case where some or all the packets generated by the generator may
+  # not be received. Please use prox_acl .. (This generates packets at
+  # a specific rate and does not change rate.
+  #
+  traffic_profile: ../../traffic_profiles/prox_acl.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_acl-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+      prox_files:
+        "configs/acl_rules-2.lua": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_acl-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  type: Node
+  name: yardstick
+  nfvi_type: baremetal
+  file: prox-baremetal-{{ vports }}.yaml
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-scale-up.yaml
new file mode 100644 (file)
index 0000000..a346ae4
--- /dev/null
@@ -0,0 +1,57 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set underscore = '_' if type %}
+{% set type = type or '' %} # type: {'', 'multiflow', 'pktTouch'}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  type: Node
+  name: yardstick
+  nfvi_type: baremetal
+  file: prox-baremetal-{{ vports }}.yaml
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-scale-up.yaml
new file mode 100644 (file)
index 0000000..e1062d1
--- /dev/null
@@ -0,0 +1,57 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+      prox_files:
+        "configs/ipv4.lua" : ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  type: Node
+  name: yardstick
+  nfvi_type: baremetal
+  file: prox-baremetal-{{ vports }}.yaml
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-scale-up.yaml
new file mode 100644 (file)
index 0000000..f45b6e9
--- /dev/null
@@ -0,0 +1,55 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set duration = duration or 400 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_mpls_tag_untag-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_mpls_tag_untag-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  type: Node
+  name: yardstick
+  nfvi_type: baremetal
+  file: prox-baremetal-{{ vports }}.yaml
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-scale-up.yaml
new file mode 100644 (file)
index 0000000..5e4ced1
--- /dev/null
@@ -0,0 +1,103 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set mem = mem or 20480 %}
+{% set vcpus = vcpus or 10 %}
+{% set disk = disk or 6 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  #
+  # In case where we know that all the packets generated by the generator
+  # will bw received. Then use prox_binsearch.
+  #
+  # In the case where some or all the packets generated by the generator may
+  # not be received. Please use prox_heat_acl .. (This generates packets at
+  # a specific rate and does not change rate.
+  #
+  traffic_profile: ../../traffic_profiles/prox_heat_acl.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_acl-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+      prox_files:
+        "configs/acl_rules-2.lua" : ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_acl-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  name: yardstick
+  image: yardstick-samplevnfs
+  user: ubuntu
+  flavor:
+    vcpus: {{ vcpus }}
+    ram: {{ mem }}
+    disk: {{ disk }}
+    extra_specs:
+      hw:cpu_sockets: 1
+      hw:cpu_cores: {{ vcpus }}
+      hw:cpu_threads: 1
+  placement_groups:
+    pgrp1:
+      policy: "availability"
+
+  servers:
+    vnf_0:
+      floating_ip: true
+      placement: "pgrp1"
+    tg_0:
+      floating_ip: true
+      placement: "pgrp1"
+
+  networks:
+    mgmt:
+      cidr: '10.0.1.0/24'
+    uplink_0:
+      cidr: '10.0.2.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% for vport in range(vports-1|int) %}
+    downlink_{{ vport }}:
+      cidr: '10.0.{{ vport+3 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% endfor %}
+
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-l3fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-l3fwd-scale-up.yaml
new file mode 100644 (file)
index 0000000..af2ab15
--- /dev/null
@@ -0,0 +1,128 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set mem = mem or 20480 %}
+{% set vcpus = vcpus or 10 %}
+{% set disk = disk or 6 %}
+{% set timeout = timeout or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l2fwd-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l2fwd-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Search
+    # we kill after duration, independent of test duration, so set this high
+    interval: 5
+    timeout: {{ timeout }}
+
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+      prox_files:
+        "configs/ipv4.lua" : ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Search
+    # we kill after duration, independent of test duration, so set this high
+    interval: 5
+    timeout: {{ timeout }}
+
+context:
+  name: yardstick
+  image: yardstick-samplevnfs
+  user: ubuntu
+  flavor:
+    vcpus: {{ vcpus }}
+    ram: {{ mem }}
+    disk: {{ disk }}
+    extra_specs:
+      hw:cpu_sockets: 1
+      hw:cpu_cores: {{ vcpus }}
+      hw:cpu_threads: 1
+
+  placement_groups:
+    pgrp1:
+      policy: "availability"
+
+  servers:
+    vnf_0:
+      floating_ip: true
+      placement: "pgrp1"
+    tg_0:
+      floating_ip: true
+      placement: "pgrp1"
+
+  networks:
+    mgmt:
+      cidr: '10.0.1.0/24'
+{% for vport in range(1,vports,2|int) %}
+    uplink_{{ loop.index0 }}:
+      cidr: '10.0.{{ vport+1 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+
+    downlink_{{ loop.index0 }}:
+      cidr: '10.0.{{ vport+2 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% endfor %}
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-scale-up.yaml
new file mode 100644 (file)
index 0000000..4463729
--- /dev/null
@@ -0,0 +1,94 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set underscore = '_' if type %}
+{% set type = type or '' %} # type: {'', 'multiflow', 'pktTouch'}
+{% set mem = mem or 20480 %}
+{% set vcpus = vcpus or 10 %}
+{% set disk = disk or 6 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  name: yardstick
+  image: yardstick-samplevnfs
+  user: ubuntu
+  flavor:
+    vcpus: {{ vcpus }}
+    ram: {{ mem }}
+    disk: {{ disk }}
+    extra_specs:
+      hw:cpu_sockets: 1
+      hw:cpu_cores: {{ vcpus }}
+      hw:cpu_threads: 1
+  placement_groups:
+    pgrp1:
+      policy: "availability"
+
+  servers:
+    vnf_0:
+      floating_ip: true
+      placement: "pgrp1"
+    tg_0:
+      floating_ip: true
+      placement: "pgrp1"
+
+  networks:
+    mgmt:
+      cidr: '10.0.1.0/24'
+    uplink_0:
+      cidr: '10.0.2.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% for vport in range(vports-1|int) %}
+    downlink_{{ vport }}:
+      cidr: '10.0.{{ vport+3 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% endfor %}
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-scale-up.yaml
new file mode 100644 (file)
index 0000000..3462d28
--- /dev/null
@@ -0,0 +1,96 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set mem = mem or 20480 %}
+{% set vcpus = vcpus or 10 %}
+{% set disk = disk or 6 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+      prox_files:
+        "configs/ipv4.lua" : ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_l3fwd-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  name: yardstick
+  image: yardstick-samplevnfs
+  user: ubuntu
+  flavor:
+    vcpus: {{ vcpus }}
+    ram: {{ mem }}
+    disk: {{ disk }}
+    extra_specs:
+      hw:cpu_sockets: 1
+      hw:cpu_cores: {{ vcpus }}
+      hw:cpu_threads: 1
+
+  placement_groups:
+    pgrp1:
+      policy: "availability"
+
+  servers:
+    vnf_0:
+      floating_ip: true
+      placement: "pgrp1"
+    tg_0:
+      floating_ip: true
+      placement: "pgrp1"
+
+  networks:
+    mgmt:
+      cidr: '10.0.1.0/24'
+    uplink_0:
+      cidr: '10.0.2.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% for vport in range(vports-1|int) %}
+    downlink_{{ vport }}:
+      cidr: '10.0.{{ vport+3 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% endfor %}
+
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-scale-up.yaml
new file mode 100644 (file)
index 0000000..ef28946
--- /dev/null
@@ -0,0 +1,93 @@
+# Copyright (c) 2016-2018 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 vports = vports or 2 %}
+{% set mem = mem or 20480 %}
+{% set vcpus = vcpus or 10 %}
+{% set disk = disk or 6 %}
+{% set duration = duration or 300 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+  type: NSPerf
+  traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml
+  extra_args:
+    vports: {{ vports }}
+  topology: prox-tg-topology-scale-up.yaml
+
+  nodes:
+    tg__0: tg_0.yardstick
+    vnf__0: vnf_0.yardstick
+
+  options:
+    vnf__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/handle_mpls_tag_untag-{{ vports }}.cfg"
+      prox_args:
+        "-t": ""
+
+    tg__0:
+      prox_path: /opt/nsb_bin/prox
+      prox_config: "configs/gen_mpls_tag_untag-{{ vports }}.cfg"
+      prox_args:
+        "-e": ""
+        "-t": ""
+
+  runner:
+    type: Duration
+    # we kill after duration, independent of test duration, so set this high
+    duration: {{ duration }}
+
+context:
+  name: yardstick
+  image: yardstick-samplevnfs
+  user: ubuntu
+  flavor:
+    vcpus: {{ vcpus }}
+    ram: {{ mem }}
+    disk: {{ disk }}
+    extra_specs:
+      hw:cpu_sockets: 1
+      hw:cpu_cores: {{ vcpus }}
+      hw:cpu_threads: 1
+
+  placement_groups:
+    pgrp1:
+      policy: "availability"
+
+  servers:
+    vnf_0:
+      floating_ip: true
+      placement: "pgrp1"
+    tg_0:
+      floating_ip: true
+      placement: "pgrp1"
+
+  networks:
+    mgmt:
+      cidr: '10.0.1.0/24'
+    uplink_0:
+      cidr: '10.0.2.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% for vport in range(vports-1|int) %}
+    downlink_{{ vport }}:
+      cidr: '10.0.{{ vport+3 }}.0/24'
+      gateway_ip: 'null'
+      port_security_enabled: False
+      enable_dhcp: 'false'
+{% endfor %}