Add bunch of networking scenarios
Change-Id: Ia2d8bcfec7272a68ee3403c6b96477b3314751d3
This commit is contained in:
parent
68a5540581
commit
acdd2b2262
@ -4,7 +4,7 @@ description:
|
||||
|
||||
deployment:
|
||||
template: instance_metadata.hot
|
||||
accommodation: [single_room, density: 2, compute_nodes: 1]
|
||||
accommodation: [single_room, density: 10, compute_nodes: 1]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
|
30
scenarios/networking/dense_l2.yaml
Normal file
30
scenarios/networking/dense_l2.yaml
Normal file
@ -0,0 +1,30 @@
|
||||
description:
|
||||
This scenario launches several pairs of VMs on the same compute node.
|
||||
VM are plugged into the same private network. Useful for testing performance
|
||||
degradation when the number of VMs grows.
|
||||
|
||||
deployment:
|
||||
template: l2.hot
|
||||
accommodation: [pair, double_room, density: 8, compute_nodes: 1]
|
||||
|
||||
execution:
|
||||
size: linear_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
method: tcp_download
|
||||
-
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
29
scenarios/networking/dense_l3_east_west.yaml
Normal file
29
scenarios/networking/dense_l3_east_west.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
description:
|
||||
This scenario launches pairs of VMs in different networks connected to one
|
||||
router (L3 east-west)
|
||||
|
||||
deployment:
|
||||
template: l3_east_west.hot
|
||||
accommodation: [pair, double_room, density: 8, compute_nodes: 1]
|
||||
|
||||
execution:
|
||||
size: linear_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
method: tcp_download
|
||||
-
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
30
scenarios/networking/dense_l3_north_south.yaml
Normal file
30
scenarios/networking/dense_l3_north_south.yaml
Normal file
@ -0,0 +1,30 @@
|
||||
description:
|
||||
This scenario launches pairs of VMs on one compute node. VMs are in
|
||||
the different networks connected via different routers, master accesses slave
|
||||
by floating ip
|
||||
|
||||
deployment:
|
||||
template: l3_north_south.hot
|
||||
accommodation: [pair, double_room, density: 8, compute_nodes: 1]
|
||||
|
||||
execution:
|
||||
size: linear_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
method: tcp_download
|
||||
-
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
@ -1,5 +1,3 @@
|
||||
title: L2
|
||||
|
||||
description:
|
||||
This scenario launches pairs of VMs in the same private network. Every VM is
|
||||
hosted on a separate compute node.
|
||||
@ -9,14 +7,18 @@ deployment:
|
||||
accommodation: [pair, single_room]
|
||||
|
||||
execution:
|
||||
size: quadratic_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP test
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 100)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 200)"
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
@ -25,13 +27,3 @@ execution:
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
||||
-
|
||||
title: Iperf UDP 8 threads
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
-
|
||||
title: Netperf TCP_STREAM
|
||||
class: netperf
|
||||
method: TCP_STREAM
|
||||
time: 60
|
29
scenarios/networking/full_l3_east_west.yaml
Normal file
29
scenarios/networking/full_l3_east_west.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
description:
|
||||
This scenario launches pairs of VMs in different networks connected to one
|
||||
router (L3 east-west)
|
||||
|
||||
deployment:
|
||||
template: l3_east_west.hot
|
||||
accommodation: [pair, single_room]
|
||||
|
||||
execution:
|
||||
size: quadratic_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
method: tcp_download
|
||||
-
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
30
scenarios/networking/full_l3_north_south.yaml
Normal file
30
scenarios/networking/full_l3_north_south.yaml
Normal file
@ -0,0 +1,30 @@
|
||||
description:
|
||||
This scenario launches pairs of VMs on different compute nodes. VMs are in
|
||||
the different networks connected via different routers, master accesses slave
|
||||
by floating ip
|
||||
|
||||
deployment:
|
||||
template: l3_north_south.hot
|
||||
accommodation: [pair, single_room]
|
||||
|
||||
execution:
|
||||
size: quadratic_progression
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 8
|
||||
bandwidth: 1000M
|
||||
-
|
||||
title: TCP download
|
||||
class: netperf_wrapper
|
||||
method: tcp_download
|
||||
-
|
||||
title: TCP bi-directional
|
||||
class: netperf_wrapper
|
||||
method: tcp_bidirectional
|
@ -1,21 +0,0 @@
|
||||
description:
|
||||
This scenario launches several pairs of VMs on pair of compute nodes.
|
||||
VM are plugged into the same private network. Useful for testing performance
|
||||
degradation when the number of VMs grows.
|
||||
|
||||
deployment:
|
||||
template: l2.hot
|
||||
accommodation: [pair, single_room, density: 4, compute_nodes: 2]
|
||||
|
||||
execution:
|
||||
size: 'quadratic_progression'
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP test
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Netperf TCP_STREAM
|
||||
class: netperf
|
||||
method: TCP_STREAM
|
||||
time: 60
|
@ -1,26 +0,0 @@
|
||||
description:
|
||||
This scenario launches pairs of in the different networks connected to one
|
||||
router (L3 east-west)
|
||||
|
||||
deployment:
|
||||
template: l3_east_west.hot
|
||||
accommodation: [pair, single_room]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 100)"
|
||||
-
|
||||
title: Iperf UDP 5 threads
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 5
|
||||
-
|
||||
title: Netperf TCP
|
||||
class: netperf
|
||||
method: TCP_STREAM
|
||||
time: 60
|
@ -1,26 +0,0 @@
|
||||
description:
|
||||
This scenario launches pairs of VMs on the same compute node. VMs are in
|
||||
the different networks connected via different routers, master accesses slave
|
||||
by floating ip
|
||||
|
||||
deployment:
|
||||
template: l3_north_south.hot
|
||||
accommodation: [pair, double_room]
|
||||
|
||||
execution:
|
||||
size: 'quadratic_progression'
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
time: 60
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf
|
||||
udp: 1
|
||||
threads: 5
|
||||
-
|
||||
title: Netperf TCP
|
||||
class: netperf
|
||||
method: TCP_STREAM
|
||||
time: 60
|
24
scenarios/networking/perf_l2.yaml
Normal file
24
scenarios/networking/perf_l2.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
description:
|
||||
This scenario launches 1 pair of VMs in the same private network on different
|
||||
compute nodes.
|
||||
|
||||
deployment:
|
||||
template: l2.hot
|
||||
accommodation: [pair, single_room, compute_nodes: 2]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf_graph
|
||||
udp: 1
|
||||
bandwidth: 1000M
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
24
scenarios/networking/perf_l3_east_west.yaml
Normal file
24
scenarios/networking/perf_l3_east_west.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
description:
|
||||
This scenario launches 1 pair of VMs in different networks connected to one
|
||||
router (L3 east-west). VMs are hosted on different compute nodes
|
||||
|
||||
deployment:
|
||||
template: l3_east_west.hot
|
||||
accommodation: [pair, single_room, compute_nodes: 2]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf_graph
|
||||
udp: 1
|
||||
bandwidth: 1000M
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
25
scenarios/networking/perf_l3_north_south.yaml
Normal file
25
scenarios/networking/perf_l3_north_south.yaml
Normal file
@ -0,0 +1,25 @@
|
||||
description:
|
||||
This scenario launches 1 pair of VMs on different compute nodes. VMs are in
|
||||
the different networks connected via different routers, master accesses slave
|
||||
by floating ip
|
||||
|
||||
deployment:
|
||||
template: l3_north_south.hot
|
||||
accommodation: [pair, single_room, compute_nodes: 2]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
-
|
||||
title: Iperf TCP
|
||||
class: iperf_graph
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
||||
-
|
||||
title: Iperf UDP
|
||||
class: iperf_graph
|
||||
udp: 1
|
||||
bandwidth: 1000M
|
||||
sla:
|
||||
- "[type == 'agent'] >> (stats.bandwidth.min > 1000)"
|
||||
- "[type == 'agent'] >> (stats.bandwidth.mean > 2000)"
|
@ -1,82 +0,0 @@
|
||||
heat_template_version: 2013-05-23
|
||||
|
||||
description: >
|
||||
HOT template to create a new neutron network plus a router to the public
|
||||
network, and for deploying servers into the new network.
|
||||
|
||||
parameters:
|
||||
image:
|
||||
type: string
|
||||
description: Name of image to use for servers
|
||||
flavor:
|
||||
type: string
|
||||
description: Flavor to use for servers
|
||||
external_net:
|
||||
type: string
|
||||
description: ID or name of public network for which floating IP addresses will be allocated
|
||||
server_endpoint:
|
||||
type: string
|
||||
description: Server endpoint address
|
||||
|
||||
resources:
|
||||
private_net:
|
||||
type: OS::Neutron::Net
|
||||
properties:
|
||||
name: {{ unique }}_net
|
||||
|
||||
private_subnet:
|
||||
type: OS::Neutron::Subnet
|
||||
properties:
|
||||
network_id: { get_resource: private_net }
|
||||
cidr: 10.0.0.0/16
|
||||
dns_nameservers: [ 8.8.8.8, 8.8.4.4 ]
|
||||
|
||||
router:
|
||||
type: OS::Neutron::Router
|
||||
properties:
|
||||
external_gateway_info:
|
||||
network: { get_param: external_net }
|
||||
|
||||
router_interface:
|
||||
type: OS::Neutron::RouterInterface
|
||||
properties:
|
||||
router_id: { get_resource: router }
|
||||
subnet_id: { get_resource: private_subnet }
|
||||
|
||||
{% for agent in agents.values() %}
|
||||
|
||||
{{ agent.id }}:
|
||||
type: OS::Nova::Server
|
||||
properties:
|
||||
name: {{ agent.id }}
|
||||
image: { get_param: image }
|
||||
flavor: { get_param: flavor }
|
||||
availability_zone: "nova:{{ agent.node }}"
|
||||
networks:
|
||||
- port: { get_resource: {{ agent.id }}_port }
|
||||
user_data_format: RAW
|
||||
user_data:
|
||||
str_replace:
|
||||
template: |
|
||||
#!/bin/sh
|
||||
screen -dmS shaker-agent-screen shaker-agent --server-endpoint=$SERVER_ENDPOINT --agent-id=$AGENT_ID
|
||||
params:
|
||||
"$SERVER_ENDPOINT": { get_param: server_endpoint }
|
||||
"$AGENT_ID": {{ agent.id }}
|
||||
|
||||
{{ agent.id }}_port:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network_id: { get_resource: private_net }
|
||||
fixed_ips:
|
||||
- subnet_id: { get_resource: private_subnet }
|
||||
|
||||
{% endfor %}
|
||||
|
||||
outputs:
|
||||
{% for agent in agents.values() %}
|
||||
{{ agent.id }}_instance_name:
|
||||
value: { get_attr: [ {{ agent.id }}, instance_name ] }
|
||||
{{ agent.id }}_ip:
|
||||
value: { get_attr: [ {{ agent.id }}, networks, { get_attr: [private_net, name] }, 0 ] }
|
||||
{% endfor %}
|
@ -1,13 +0,0 @@
|
||||
description:
|
||||
This scenario launches VMs in the same private network
|
||||
|
||||
deployment:
|
||||
template: dummy.hot
|
||||
accommodation: [single_room]
|
||||
|
||||
execution:
|
||||
tests:
|
||||
-
|
||||
title: directory listing
|
||||
class: shell
|
||||
method: ls -al
|
Loading…
Reference in New Issue
Block a user