Merge "Add Warning for key issue ixload"
[yardstick.git] / samples / vnf_samples / nsut / vfw / tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale_out.yaml
1 # Copyright (c) 2018-2019 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 {% set framesize = framesize or "{64B: 100}" %}
15 {% set num_vnfs = num_vnfs or 1 %}
16 {% set availability_zone = availability_zone or {} %}
17 ---
18 schema: yardstick:task:0.1
19 scenarios:
20 - type: NSPerf
21   traffic_profile: ../../traffic_profiles/ipv4_throughput_scale_out.yaml
22   topology: vfw_tg_topology_scale_out.yaml
23   extra_args:
24     num_vnfs: {{ num_vnfs }}
25   nodes:
26 {% for vnf_num in range(num_vnfs|int) %}
27     tg__{{ vnf_num }}: tg_{{ vnf_num }}.yardstick
28     vnf__{{ vnf_num }}: vnf_{{ vnf_num }}.yardstick
29 {% endfor %}
30   options:
31     framesize:
32       uplink: {{ framesize }}
33       downlink: {{ framesize }}
34     flow:
35       src_ip:
36 {% for vnf_num in range(num_vnfs|int) %}
37         - {'tg__{{ vnf_num }}': 'xe0'}
38 {% endfor %}
39       dst_ip:
40 {% for vnf_num in range(num_vnfs|int) %}
41         - {'tg__{{ vnf_num }}': 'xe1'}
42 {% endfor %}
43       count: 1
44     traffic_type: 4
45     rfc2544:
46       allowed_drop_rate: 0.0001 - 0.0001
47 {% for vnf_num in range(num_vnfs|int) %}
48     vnf__{{ vnf_num }}:
49       rules: acl_1rule.yaml
50       vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1}
51 {% endfor %}
52   runner:
53     type: Iteration
54     iterations: 10
55     interval: 35
56 context:
57   # put node context first, so we don't HEAT deploy if node has errors
58   name: yardstick
59   image: yardstick-samplevnfs
60   flavor:
61     vcpus: 10
62     ram: 20480
63     disk: 6
64     extra_specs:
65       hw:cpu_sockets: 1
66       hw:cpu_cores: 10
67       hw:cpu_threads: 1
68   user: ubuntu
69   placement_groups:
70     pgrp1:
71       policy: "availability"
72   servers:
73 {% for vnf_num in range(num_vnfs|int) %}
74     vnf_{{ vnf_num }}:
75       floating_ip: true
76       placement: "pgrp1"
77       {% if 'vnf_%s'|format(vnf_num) in availability_zone %}
78       availability_zone: "{{ availability_zone['vnf_%s'|format(vnf_num)] }}"
79       {% endif %}
80       network_ports:
81         mgmt:
82           - mgmt
83         uplink_{{ vnf_num }}:
84           - xe0
85         downlink_{{ vnf_num }}:
86           - xe1
87     tg_{{ vnf_num }}:
88       floating_ip: true
89       placement: "pgrp1"
90       {% if 'tg_%s'|format(vnf_num) in availability_zone %}
91       availability_zone: "{{ availability_zone['tg_%s'|format(vnf_num)] }}"
92       {% endif %}
93       network_ports:
94         mgmt:
95           - mgmt
96         uplink_{{ vnf_num }}:
97           - xe0
98         downlink_{{ vnf_num }}:
99           - xe1
100 {% endfor %}
101   networks:
102     mgmt:
103       cidr: '10.0.1.0/24'
104 {% for vnf_num in range(num_vnfs|int) %}
105     uplink_{{ vnf_num }}:
106       cidr: '10.0.{{ (vnf_num * 2) + 2 }}.0/24'
107       gateway_ip: 'null'
108       port_security_enabled: False
109       enable_dhcp: 'false'
110     downlink_{{ vnf_num }}:
111       cidr: '10.0.{{ (vnf_num * 2) + 3 }}.0/24'
112       gateway_ip: 'null'
113       port_security_enabled: False
114       enable_dhcp: 'false'
115 {% endfor %}