1 # Copyright (c) 2017 Intel Corporation
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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.
16 schema: yardstick:task:0.1
19 traffic_profile: ../../traffic_profiles/ipv4_throughput-ixia-{{ num_vnfs }}.yaml
20 topology: vfw-tg-topology-scale-out-{{ num_vnfs }}.yaml
22 tg__0: tg__0.yardstick
23 {% for vnf_num in range(num_vnfs|int) %}
24 vnf__{{ vnf_num }}: vnf_{{ vnf_num }}.yardstick
28 uplink: {{ flow.pkt_size.uplink }}
29 downlink: {{ flow.pkt_size.downlink }}
32 {% for vnf_num in range(num_vnfs|int) %}
33 - {'tg__0': 'xe{{ (vnf_num * 2)}}'}
36 {% for vnf_num in range(num_vnfs|int) %}
37 - {'tg__0': 'xe{{ (vnf_num * 2) + 1}}'}
39 count: {{ flow.count }}
40 traffic_type: {{ flow.traffic_type }}
42 allowed_drop_rate: {{ flow.rfc2544.allowed_drop_rate }}
43 {% for vnf_num in range(num_vnfs|int) %}
46 vnf_config: {lb_config: '{{flow.vnf_config.lb_config}}', lb_count: {{flow.vnf_config.lb_count}} , worker_config: '{{flow.vnf_config.worker_config}}', worker_threads: {{flow.vnf_config.worker_threads}}}
48 ixia_profile: ../../traffic_profiles/ixia/ixia_ipv4_profile_{{num_vnfs * 2}}_port.ixncfg
56 file: /etc/yardstick/nodes/ixia_{{num_vnfs}}.yaml
57 - type: StandaloneOvsDpdk
59 file: /etc/yardstick/nodes/ovs_host.yaml
63 ovs: {{ ovs_properties.ovs }}
64 dpdk: {{ ovs_properties.dpdk }}
65 vpath: "{{ ovs_properties.vpath }}"
66 queues: {{ovs_properties.queues}}
67 pmd_threads: {{ovs_properties.pmd_threads}}
69 socket_0: {{ovs_properties.ram.socket_0}}
70 socket_1: {{ovs_properties.ram.socket_1}}
72 images: {{ flavor.image }}
75 hw:cpu_sockets: {{ flavor.extra_specs.cpu_sockets }}
76 hw:cpu_cores: {{ flavor.extra_specs.cpu_cores }}
77 hw:cpu_threads: {{ flavor.extra_specs.cpu_threads }}
79 password: {{ vnf.password }}
81 {% for vnf_num in range(num_vnfs|int) %}
85 cidr: '{{vnf.ip.mgmt[vnf_num]}}'
87 - uplink_{{ vnf_num }}
89 - downlink_{{ vnf_num }}
92 {% for vnf_num in range(num_vnfs|int) %}
94 port_num: {{ vnf_num * 2 }}
95 phy_port: "{{vnf.pcis.uplink[vnf_num]}}"
96 vpci: "0000:00:{{10 + (99 | random)}}.0"
97 cidr: '{{vnf.ip.uplink[vnf_num]}}'
98 gateway_ip: '{{gen.ip.uplink[vnf_num]}}'
99 downlink_{{ vnf_num }}:
100 port_num: {{ (vnf_num * 2) + 1}}
101 phy_port: "{{vnf.pcis.downlink[vnf_num]}}"
102 vpci: "0000:00:{{10 + (9 | random)}}.0"
103 cidr: '{{vnf.ip.downlink[vnf_num]}}'
104 gateway_ip: '{{gen.ip.downlink[vnf_num]}}'