5c884f2e0ae25106be95790e072a4e45ed81dd4c
[yardstick.git] / samples / vnf_samples / nsut / cgnapt / tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_out.yaml
1 # Copyright (c) 2016-2017 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 ---
16 schema: yardstick:task:0.1
17 scenarios:
18   - type: NSPerf
19     traffic_profile: ../../traffic_profiles/ipv4_throughput_cgnapt-{{ num_vnfs }}.yaml
20     topology: cgnapt-vnf-topology-3node-{{ num_vnfs }}.yaml
21     nodes:
22       tg__0: tg_0.yardstick
23       tg__1: tg_1.yardstick
24 {% for vnf_num in range(num_vnfs|int) %}
25       vnf__{{ vnf_num }}: vnf_{{ vnf_num }}.yardstick
26 {% endfor %}
27     options:
28       framesize:
29         uplink: {64B: 100}
30         downlink: {64B: 100}
31       flow:
32         src_ip:
33 {% for vnf_num in range(num_vnfs|int) %}
34           - {'tg__0': 'xe{{ vnf_num }}'}
35 {% endfor %}
36         dst_ip:
37 {% for vnf_num in range(num_vnfs|int) %}
38           - {'tg__1': 'xe{{ vnf_num }}'}
39 {% endfor %}
40         count: 1
41       traffic_type: 4
42       rfc2544:
43         allowed_drop_rate: 0.0001 - 0.0001
44         correlated_traffic: true
45 {% for vnf_num in range(num_vnfs|int) %}
46       vnf__{{ vnf_num }}:
47         vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1}
48         napt: 'dynamic'
49 {% endfor %}
50     runner:
51       type: Iteration
52       iterations: 10
53       interval: 35
54 context:
55   name: yardstick
56   image: yardstick-samplevnfs
57   flavor:
58     vcpus: 10
59     ram: 10240
60     disk: 6
61     extra_specs:
62       hw:cpu_sockets: 1
63       hw:cpu_cores: 10
64       hw:cpu_threads: 1
65   user: ubuntu
66   placement_groups:
67     pgrp1:
68       policy: "availability"
69   servers:
70     tg_0:
71       floating_ip: true
72       placement: "pgrp1"
73       network_ports:
74         mgmt:
75           - mgmt
76 {% for vnf_num in range(num_vnfs|int) %}
77         uplink_{{ vnf_num }}:
78           - xe{{ vnf_num }}
79 {% endfor %}
80     tg_1:
81       floating_ip: true
82       placement: "pgrp1"
83       network_ports:
84         mgmt:
85           - mgmt
86 {% for vnf_num in range(num_vnfs|int) %}
87         downlink_{{ vnf_num }}:
88           - xe{{ vnf_num }}
89 {% endfor %}
90 {% for vnf_num in range(num_vnfs|int) %}
91     vnf_{{ vnf_num }}:
92       floating_ip: true
93       placement: "pgrp1"
94       network_ports:
95         mgmt:
96           - mgmt
97         uplink_{{ vnf_num }}:
98           - xe0
99         downlink_{{ vnf_num }}:
100           - xe1
101 {% endfor %}
102   networks:
103     mgmt:
104       cidr: '10.0.1.0/24'
105 {% for vnf_num in range(num_vnfs|int) %}
106     uplink_{{ vnf_num }}:
107       cidr: '10.{{ vnf_num + 1 }}.0.0/24'
108       gateway_ip: 'null'
109       port_security_enabled: False
110       enable_dhcp: 'false'
111     downlink_{{ vnf_num }}:
112       cidr: '10.{{ vnf_num + 1 }}.1.0/24'
113       gateway_ip: 'null'
114       port_security_enabled: False
115       enable_dhcp: 'false'
116 {% endfor %}