93b8a3301c
The new task format was introduced recently. It unifies different sections and tries to make the things a bit simpler. Rally task consists of subtasks. Their amount should be at least one. The subtask is a group of workloads. Soon, it will be possible to define a single SLA for all workloads in a subtask and even more - use once executed contexts for workloads (i.e. create temporary users, network not for each workload but for a group of them). The workload is a combination of different plugins to be executed for a test. The most important are Scenario plugin (what will be executed in each iteration), runner (how the load should be generated) and contexts (what resources should be precreated before the workload). One scenario with different runners/contexts can create different load. To distinguish them the new section "description" of workload was introduced. It allows to add a custom description for a workload which will be dispayed in the report files. In case of missing "description" section, the description of scenario will be taken. Also, I need to mention that "failure_rate: 0" SLA is a default now, so there is no need to specify it. Change-Id: If99e8c722d9ccb18b8b9d7e12214e76e483a2016
303 lines
8.3 KiB
YAML
303 lines
8.3 KiB
YAML
---
|
|
version: 2
|
|
title: Rally Task for OpenStack Neutron CI
|
|
description: >
|
|
The task contains various scenarios to prevent concurrency issues
|
|
subtasks:
|
|
-
|
|
title: Network related workloads.
|
|
workloads:
|
|
-
|
|
description: Check performance of list_networks action and ensure >
|
|
network quotas are not exceeded
|
|
scenario:
|
|
NeutronNetworks.create_and_list_networks: {}
|
|
runner:
|
|
constant:
|
|
times: 100
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
# worst case is other 19 writers have created
|
|
# resources, but quota reservation hasn't cleared
|
|
# yet on any of them. This value could be 100
|
|
# without concurrency. see bug/1623390
|
|
network: 119
|
|
sla:
|
|
max_avg_duration_per_atomic:
|
|
neutron.list_networks: 15 # reduce as perf is fixed
|
|
|
|
failure_rate:
|
|
max: 0
|
|
-
|
|
description: Check network update action
|
|
scenario:
|
|
NeutronNetworks.create_and_update_networks:
|
|
network_create_args: {}
|
|
network_update_args:
|
|
admin_state_up: False
|
|
name: "_updated"
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_delete_networks: {}
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
-
|
|
title: Subnet related workloads.
|
|
workloads:
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_list_subnets:
|
|
subnets_per_network: 2
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
subnet: -1
|
|
network: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_update_subnets:
|
|
network_create_args: {}
|
|
subnet_create_args: {}
|
|
subnet_cidr_start: "1.4.0.0/16"
|
|
subnets_per_network: 2
|
|
subnet_update_args:
|
|
enable_dhcp: True
|
|
name: "_subnet_updated"
|
|
runner:
|
|
constant:
|
|
times: 100
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 5
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
port: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_delete_subnets:
|
|
network_create_args: {}
|
|
subnet_create_args: {}
|
|
subnet_cidr_start: "1.1.0.0/30"
|
|
subnets_per_network: 2
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
-
|
|
title: Routers related workloads.
|
|
workloads:
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_list_routers:
|
|
network_create_args:
|
|
subnet_create_args:
|
|
subnet_cidr_start: "1.1.0.0/30"
|
|
subnets_per_network: 2
|
|
router_create_args:
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
router: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_update_routers:
|
|
network_create_args: {}
|
|
subnet_create_args: {}
|
|
subnet_cidr_start: "1.1.0.0/30"
|
|
subnets_per_network: 2
|
|
router_create_args: {}
|
|
router_update_args:
|
|
admin_state_up: False
|
|
name: "_router_updated"
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
router: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_delete_routers:
|
|
network_create_args: {}
|
|
subnet_create_args: {}
|
|
subnet_cidr_start: "1.1.0.0/30"
|
|
subnets_per_network: 2
|
|
router_create_args: {}
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
router: -1
|
|
-
|
|
title: Ports related workloads.
|
|
workloads:
|
|
-
|
|
description: Check performance of list ports action and ensure >
|
|
network quotas are not exceeded
|
|
scenario:
|
|
NeutronNetworks.create_and_list_ports:
|
|
network_create_args:
|
|
port_create_args:
|
|
ports_per_network: 50
|
|
runner:
|
|
constant:
|
|
times: 8
|
|
concurrency: 4
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
subnet: -1
|
|
router: -1
|
|
# ((ports per net + 1 dhcp) * times) + (concurrency-1)
|
|
# see bug/1623390 for concurrency explanation
|
|
port: 811
|
|
sla:
|
|
max_avg_duration_per_atomic:
|
|
neutron.list_ports: 15 # reduce as perf is fixed
|
|
failure_rate:
|
|
max: 0
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_update_ports:
|
|
network_create_args: {}
|
|
port_create_args: {}
|
|
ports_per_network: 5
|
|
port_update_args:
|
|
admin_state_up: False
|
|
device_id: "dummy_id"
|
|
device_owner: "dummy_owner"
|
|
name: "_port_updated"
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
port: -1
|
|
-
|
|
scenario:
|
|
NeutronNetworks.create_and_delete_ports:
|
|
network_create_args: {}
|
|
port_create_args: {}
|
|
ports_per_network: 5
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
port: -1
|
|
-
|
|
title: Quotas update check
|
|
scenario:
|
|
Quotas.neutron_update:
|
|
max_quota: 1024
|
|
runner:
|
|
constant:
|
|
times: 40
|
|
concurrency: 20
|
|
contexts:
|
|
users:
|
|
tenants: 20
|
|
users_per_tenant: 1
|
|
-
|
|
title: Trunks related workload
|
|
scenario:
|
|
NeutronTrunks.create_and_list_trunk_subports:
|
|
subport_count: 125
|
|
runner:
|
|
constant:
|
|
times: 4
|
|
concurrency: 4
|
|
contexts:
|
|
users:
|
|
tenants: 1
|
|
users_per_tenant: 1
|
|
quotas:
|
|
neutron:
|
|
network: -1
|
|
port: 1000
|