Merge "Add scale out TCs with availability zone support"
[yardstick.git] / samples / vnf_samples / nsut / prox / tc_prox_heat_context_l2fwd-scale-up.yaml
1 # Copyright (c) 2016-2018 Intel Corporation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 {% set vports = vports or 2 %}
16 {% set underscore = '_' if type %}
17 {% set type = type or '' %} # type: {'', 'multiflow', 'pktTouch'}
18 {% set mem = mem or 20480 %}
19 {% set vcpus = vcpus or 10 %}
20 {% set disk = disk or 6 %}
21 {% set duration = duration or 300 %}
22 ---
23 schema: "yardstick:task:0.1"
24
25 scenarios:
26 -
27   type: NSPerf
28   traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
29   extra_args:
30     vports: {{ vports }}
31   topology: prox-tg-topology-scale-up.yaml
32
33   nodes:
34     tg__0: tg_0.yardstick
35     vnf__0: vnf_0.yardstick
36
37   options:
38     vnf__0:
39       prox_path: /opt/nsb_bin/prox
40       prox_config: "configs/handle_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
41       prox_args:
42         "-t": ""
43
44     tg__0:
45       prox_path: /opt/nsb_bin/prox
46       prox_config: "configs/gen_l2fwd{{ underscore }}{{ type }}-{{ vports }}.cfg"
47       prox_args:
48         "-e": ""
49         "-t": ""
50
51   runner:
52     type: Duration
53     # we kill after duration, independent of test duration, so set this high
54     duration: {{ duration }}
55
56 context:
57   name: yardstick
58   image: yardstick-samplevnfs
59   user: ubuntu
60   flavor:
61     vcpus: {{ vcpus }}
62     ram: {{ mem }}
63     disk: {{ disk }}
64     extra_specs:
65       hw:cpu_sockets: 1
66       hw:cpu_cores: {{ vcpus }}
67       hw:cpu_threads: 1
68   placement_groups:
69     pgrp1:
70       policy: "availability"
71
72   servers:
73     vnf_0:
74       floating_ip: true
75       placement: "pgrp1"
76     tg_0:
77       floating_ip: true
78       placement: "pgrp1"
79
80   networks:
81     mgmt:
82       cidr: '10.0.1.0/24'
83     uplink_0:
84       cidr: '10.0.2.0/24'
85       gateway_ip: 'null'
86       port_security_enabled: False
87       enable_dhcp: 'false'
88 {% for vport in range(vports-1|int) %}
89     downlink_{{ vport }}:
90       cidr: '10.0.{{ vport+3 }}.0/24'
91       gateway_ip: 'null'
92       port_security_enabled: False
93       enable_dhcp: 'false'
94 {% endfor %}