rally-openstack/rally-jobs/cinder.yaml
Brian Rosmaita 8951fed638 Use Block Storage API v3
Cinder is removing the Block Storage API v2 in Xena [0], so the
cinder rally job should use v3.

[0] https://review.opendev.org/c/openstack/cinder/+/792299

Change-Id: I9709b0c937ba355ee34624eb1640ad08f506922e
2021-06-30 17:58:42 +00:00

1102 lines
28 KiB
YAML
Executable File

{% set image_name = "^(cirros.*-disk|TestVM)$" %}
{% set flavor_name = "m1.tiny" %}
---
version: 2
title: Task for gate-rally-dsvm-rally-cinder job
description: Testing mostly cinder related plugins using Block Storage API v3
subtasks:
-
title: CinderVolumes.create_volume tests
workloads:
-
scenario:
CinderVolumes.create_volume:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
CinderVolumes.create_volume:
size:
min: 1
max: 2
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
api_versions:
cinder:
version: 3
service_name: cinderv3
-
description: "Create a volume from the specified image."
scenario:
CinderVolumes.create_volume:
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: Authenticate.validate_cinder tests
scenario:
Authenticate.validate_cinder:
repetitions: 2
runner:
constant:
times: 10
concurrency: 5
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: Quotas.cinder_update_and_delete tests
scenario:
Quotas.cinder_update_and_delete:
max_quota: 1024
runner:
constant:
times: 4
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: Quotas.cinder_update test
scenario:
Quotas.cinder_update:
max_quota: 1024
runner:
constant:
times: 4
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: Quotas.cinder_get tests
scenario:
Quotas.cinder_get: {}
runner:
constant:
times: 6
concurrency: 3
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_and_delete_volume tests
workloads:
-
scenario:
CinderVolumes.create_and_delete_volume:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create a volume from specific image and delete it."
scenario:
CinderVolumes.create_and_delete_volume:
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create a volume from image created by image context."
scenario:
CinderVolumes.create_and_delete_volume:
size: 1
image:
name: "image-context-test"
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 2
roles:
- admin
images:
image_url: "~/.rally/extra/fake-image.img"
disk_format: "raw"
container_format: "bare"
images_per_tenant: 1
image_name: "image-context-test"
visibility: "public"
-
title: CinderVolumes.create_and_update_volume tests
workloads:
-
scenario:
CinderVolumes.create_and_update_volume:
update_volume_kwargs:
description: "desc_updated"
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create volume from image and update it."
scenario:
CinderVolumes.create_and_update_volume:
update_volume_kwargs:
description: "desc_updated"
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_volume_and_update_readonly_flag tests
workloads:
-
scenario:
CinderVolumes.create_volume_and_update_readonly_flag:
size: 1
read_only: true
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create volume from image and update read only flag."
scenario:
CinderVolumes.create_volume_and_update_readonly_flag:
size: 1
read_only: false
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_and_list_volume tests
workloads:
-
scenario:
CinderVolumes.create_and_list_volume:
size: 1
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
scenario:
CinderVolumes.create_and_list_volume:
size:
min: 1
max: 2
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
description: "Create volume from image and list volumes."
scenario:
CinderVolumes.create_and_list_volume:
size: 1
detailed: True
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumes.create_and_get_volume tests
workloads:
-
scenario:
CinderVolumes.create_and_get_volume:
size: 1
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
CinderVolumes.create_and_get_volume:
size:
min: 1
max: 2
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create volume from image and get it."
scenario:
CinderVolumes.create_and_get_volume:
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.list_volumes tests
scenario:
CinderVolumes.list_volumes:
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
volumes:
size: 1
volumes_per_tenant: 2
-
title: CinderVolumes.list_types tests
workloads:
{% for s in ("true", "false") %}
-
scenario:
CinderVolumes.list_types:
is_public: {{s}}
runner:
constant:
times: 10
concurrency: 5
contexts:
users:
tenants: 2
users_per_tenant: 3
{% endfor %}
-
title: CinderVolumes.create_and_accept_transfer tests
workloads:
-
scenario:
CinderVolumes.create_and_accept_transfer:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create volume from image and accept transfer."
scenario:
CinderVolumes.create_and_accept_transfer:
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_and_extend_volume tests
workloads:
-
scenario:
CinderVolumes.create_and_extend_volume:
size: 1
new_size: 2
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
scenario:
CinderVolumes.create_and_extend_volume:
size:
min: 1
max: 2
new_size:
min: 3
max: 4
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumes.create_from_volume_and_delete_volume test
workloads:
-
scenario:
CinderVolumes.create_from_volume_and_delete_volume:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
volumes:
size: 1
-
scenario:
CinderVolumes.create_from_volume_and_delete_volume:
size:
min: 1
max: 2
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
volumes:
size: 1
-
title: CinderVolumes.create_and_attach_volume test
scenario:
CinderVolumes.create_and_attach_volume:
size: 1
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_snapshot_and_attach_volume tests
workloads:
-
scenario:
CinderVolumes.create_snapshot_and_attach_volume:
volume_type: "lvmdriver-1"
size: 1
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
description: "Create a volume using volume type created in context."
scenario:
CinderVolumes.create_snapshot_and_attach_volume:
volume_type: "test"
size: 1
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volume_types:
- "test"
-
title: CinderVolumes.create_and_delete_snapshot tests
scenario:
CinderVolumes.create_and_delete_snapshot:
force: false
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volumes:
size: 1
-
title: CinderVolumes.create_and_list_snapshots tests
scenario:
CinderVolumes.create_and_list_snapshots:
force: False
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
volumes:
size: 1
-
title: CinderVolumes.create_and_upload_volume_to_image tests
workloads:
-
scenario:
CinderVolumes.create_and_upload_volume_to_image:
size: 1
image:
name: {{image_name}}
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
api_versions:
glance:
version: 2
-
description: >
Create a volume using type created by context & upload to image
scenario:
CinderVolumes.create_and_upload_volume_to_image:
size: 1
volume_type: test
image:
name: {{image_name}}
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
volume_types:
- test
-
title: CinderVolumes.create_volume_backup tests
workloads:
-
scenario:
CinderVolumes.create_volume_backup:
size: 1
do_delete: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
scenario:
CinderVolumes.create_volume_backup:
size: 1
do_delete: False
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumeBackups.create_incremental_volume_backup tests
scenario:
CinderVolumeBackups.create_incremental_volume_backup:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_and_restore_volume_backup tests
workloads:
-
scenario:
CinderVolumes.create_and_restore_volume_backup:
size: 1
do_delete: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
scenario:
CinderVolumes.create_and_restore_volume_backup:
size: 1
do_delete: False
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumes.create_and_list_volume_backups tests
workloads:
-
description: "Create volume backup and list, delete backup at the end."
scenario:
CinderVolumes.create_and_list_volume_backups:
size: 1
detailed: True
do_delete: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
description: "Create volume backup and list, don't delete backup."
scenario:
CinderVolumes.create_and_list_volume_backups:
size: 1
detailed: True
do_delete: False
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumes.create_nested_snapshots_and_attach_volume tests
scenario:
CinderVolumes.create_nested_snapshots_and_attach_volume:
size:
min: 1
max: 1
nested_level: 2
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
sla:
failure_rate:
max: 51
-
title: CinderVolumes.create_volume_and_clone tests
workloads:
-
scenario:
CinderVolumes.create_volume_and_clone:
size: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
CinderVolumes.create_volume_and_clone:
size:
min: 1
max: 1
nested_level: 2
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumeTypes.create_and_update_volume_type tests
scenario:
CinderVolumeTypes.create_and_update_volume_type:
description: "test"
update_description: "test update"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.create_volume_from_snapshot
scenario:
CinderVolumes.create_volume_from_snapshot:
do_delete: true
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volumes:
size: 1
sla:
failure_rate:
max: 51
-
title: CinderVolumeTypes.create_and_get_volume_type tests
scenario:
CinderVolumeTypes.create_and_get_volume_type:
description: "rally tests creating types"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumeTypes.create_and_delete_volume_type tests
scenario:
CinderVolumeTypes.create_and_delete_volume_type:
description: "rally tests creating types"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumeTypes.create_and_delete_encryption_type tests
workloads:
-
scenario:
CinderVolumeTypes.create_and_delete_encryption_type:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 4
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 2
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
scenario:
CinderVolumeTypes.create_and_delete_encryption_type:
create_specs:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
title: CinderVolumeTypes.create_and_list_volume_types tests
scenario:
CinderVolumeTypes.create_and_list_volume_types:
description: "rally tests creating types"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumeTypes.create_volume_type_and_encryption_type tests
workloads:
-
scenario:
CinderVolumeTypes.create_volume_type_and_encryption_type:
description: "rally tests creating types"
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
CinderVolumeTypes.create_volume_type_and_encryption_type:
create_specs:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
-
title: CinderVolumeTypes.create_and_list_encryption_type tests
workloads:
-
scenario:
CinderVolumeTypes.create_and_list_encryption_type:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
scenario:
CinderVolumeTypes.create_and_list_encryption_type:
create_specs:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 1
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
title: CinderVolumeTypes.create_and_set_volume_type_keys tests
scenario:
CinderVolumeTypes.create_and_set_volume_type_keys:
description: "rally tests creating types"
volume_type_key:
volume_backend_name: "LVM_iSCSI"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumes.list_transfers tests
scenario:
CinderVolumes.list_transfers:
detailed: true
runner:
constant:
times: 3
concurrency: 2
contexts:
users:
tenants: 3
users_per_tenant: 2
-
title: CinderQos.create_and_list_qos tests
scenario:
CinderQos.create_and_list_qos:
consumer: "both"
write_iops_sec: "10"
read_iops_sec: "1000"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderQos.create_and_get_qos tests
scenario:
CinderQos.create_and_get_qos:
consumer: "both"
write_iops_sec: "10"
read_iops_sec: "1000"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderQos.create_qos_associate_and_disassociate_type tests
scenario:
CinderQos.create_qos_associate_and_disassociate_type:
consumer: "both"
write_iops_sec: "10"
read_iops_sec: "1000"
runner:
constant:
times: 2
concurrency: 1
contexts:
users:
tenants: 1
users_per_tenant: 1
volume_types: [
"test_type1",
"test_type2"
]
-
title: CinderVolumeTypes.create_get_and_delete_encryption_type tests
scenario:
CinderVolumeTypes.create_get_and_delete_encryption_type:
provider: "LuksEncryptor"
cipher: "aes-xts-plain64"
key_size: 512
control_location: "front-end"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
title: CinderVolumeTypes.create_and_update_encryption_type tests
scenario:
CinderVolumeTypes.create_and_update_encryption_type:
create_provider: "LuksEncryptor"
create_cipher: "aes-xts-plain64"
create_key_size: 512
create_control_location: "front-end"
update_provider: "CryptsetupEncryptor"
update_cipher: "aes-xts-plain"
update_key_size: 256
update_control_location: "back-end"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
volume_types: [
"test_type1",
"test_type2",
"test_type3",
"test_type4"
]
-
title: CinderQos.create_and_set_qos tests
scenario:
CinderQos.create_and_set_qos:
consumer: "back-end"
write_iops_sec: "10"
read_iops_sec: "1000"
set_consumer: "both"
set_write_iops_sec: "11"
set_read_iops_sec: "1001"
runner:
constant:
times: 5
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: CinderVolumeTypes.create_volume_type_add_and_list_type_access tests
scenario:
CinderVolumeTypes.create_volume_type_add_and_list_type_access:
description: "rally tests creating types"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2