From 304b49218742a8a7c77652bec0131c040ef5c1c1 Mon Sep 17 00:00:00 2001 From: Yuri Weinstein Date: Tue, 22 Aug 2017 09:17:23 -0700 Subject: [PATCH] Initial check in luminous-x suite Signed-off-by: Yuri Weinstein --- qa/suites/upgrade/luminous-x/parallel/% | 0 .../upgrade/luminous-x/parallel/0-cluster/+ | 0 .../parallel/0-cluster/openstack.yaml | 4 ++ .../luminous-x/parallel/0-cluster/start.yaml | 34 +++++++++++++++ .../parallel/1-ceph-install/luminous.yaml | 43 +++++++++++++++++++ .../upgrade/luminous-x/parallel/2-workload/+ | 0 .../parallel/2-workload/blogbench.yaml | 14 ++++++ .../parallel/2-workload/ec-rados-default.yaml | 24 +++++++++++ .../parallel/2-workload/rados_api.yaml | 11 +++++ .../parallel/2-workload/rados_loadgenbig.yaml | 11 +++++ .../parallel/2-workload/test_rbd_api.yaml | 11 +++++ .../parallel/2-workload/test_rbd_python.yaml | 11 +++++ .../3-upgrade-sequence/upgrade-all.yaml | 16 +++++++ .../upgrade-mon-osd-mds.yaml | 35 +++++++++++++++ .../luminous-x/parallel/5-final-workload/+ | 0 .../parallel/5-final-workload/blogbench.yaml | 13 ++++++ .../rados-snaps-few-objects.yaml | 17 ++++++++ .../5-final-workload/rados_loadgenmix.yaml | 9 ++++ .../5-final-workload/rados_mon_thrash.yaml | 18 ++++++++ .../parallel/5-final-workload/rbd_cls.yaml | 9 ++++ .../5-final-workload/rbd_import_export.yaml | 11 +++++ .../parallel/5-final-workload/rgw_swift.yaml | 13 ++++++ qa/suites/upgrade/luminous-x/parallel/distros | 1 + .../upgrade/luminous-x/parallel/objectstore | 1 + .../luminous-x/stress-split-erasure-code/% | 0 .../stress-split-erasure-code/0-cluster | 1 + .../1-luminous-install | 1 + .../2-partial-upgrade | 1 + .../3-thrash/default.yaml | 25 +++++++++++ .../4-ec-workload.yaml | 22 ++++++++++ .../5-finish-upgrade.yaml | 1 + .../7-final-workload.yaml | 35 +++++++++++++++ .../stress-split-erasure-code/distros | 1 + .../stress-split-erasure-code/objectstore | 1 + .../thrashosds-health.yaml | 1 + qa/suites/upgrade/luminous-x/stress-split/% | 0 .../luminous-x/stress-split/0-cluster/+ | 0 .../stress-split/0-cluster/openstack.yaml | 6 +++ .../stress-split/0-cluster/start.yaml | 29 +++++++++++++ .../stress-split/1-ceph-install/luminous.yaml | 17 ++++++++ .../2-partial-upgrade/firsthalf.yaml | 12 ++++++ .../stress-split/3-thrash/default.yaml | 25 +++++++++++ .../luminous-x/stress-split/4-workload/+ | 0 .../stress-split/4-workload/radosbench.yaml | 40 +++++++++++++++++ .../stress-split/4-workload/rbd-cls.yaml | 10 +++++ .../4-workload/rbd-import-export.yaml | 12 ++++++ .../stress-split/4-workload/rbd_api.yaml | 10 +++++ .../stress-split/4-workload/readwrite.yaml | 16 +++++++ .../4-workload/snaps-few-objects.yaml | 18 ++++++++ .../stress-split/5-finish-upgrade.yaml | 9 ++++ .../stress-split/7-final-workload/+ | 0 .../7-final-workload/rbd-python.yaml | 10 +++++ .../7-final-workload/rgw-swift.yaml | 11 +++++ .../7-final-workload/snaps-many-objects.yaml | 16 +++++++ .../upgrade/luminous-x/stress-split/distros | 1 + .../stress-split/objectstore/bluestore.yaml | 1 + .../objectstore/filestore-xfs.yaml | 1 + .../stress-split/thrashosds-health.yaml | 1 + 58 files changed, 640 insertions(+) create mode 100644 qa/suites/upgrade/luminous-x/parallel/% create mode 100644 qa/suites/upgrade/luminous-x/parallel/0-cluster/+ create mode 100644 qa/suites/upgrade/luminous-x/parallel/0-cluster/openstack.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/0-cluster/start.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/1-ceph-install/luminous.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/+ create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/blogbench.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/ec-rados-default.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/rados_api.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/rados_loadgenbig.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_api.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_python.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-all.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-mon-osd-mds.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/+ create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/blogbench.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados-snaps-few-objects.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_loadgenmix.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_mon_thrash.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_cls.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_import_export.yaml create mode 100644 qa/suites/upgrade/luminous-x/parallel/5-final-workload/rgw_swift.yaml create mode 120000 qa/suites/upgrade/luminous-x/parallel/distros create mode 120000 qa/suites/upgrade/luminous-x/parallel/objectstore create mode 100644 qa/suites/upgrade/luminous-x/stress-split-erasure-code/% create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/0-cluster create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/1-luminous-install create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/2-partial-upgrade create mode 100644 qa/suites/upgrade/luminous-x/stress-split-erasure-code/3-thrash/default.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split-erasure-code/4-ec-workload.yaml create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/5-finish-upgrade.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split-erasure-code/7-final-workload.yaml create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/distros create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/objectstore create mode 120000 qa/suites/upgrade/luminous-x/stress-split-erasure-code/thrashosds-health.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/% create mode 100644 qa/suites/upgrade/luminous-x/stress-split/0-cluster/+ create mode 100644 qa/suites/upgrade/luminous-x/stress-split/0-cluster/openstack.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/0-cluster/start.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/1-ceph-install/luminous.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/2-partial-upgrade/firsthalf.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/3-thrash/default.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/+ create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/radosbench.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-cls.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-import-export.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd_api.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/readwrite.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/4-workload/snaps-few-objects.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/5-finish-upgrade.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/7-final-workload/+ create mode 100644 qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rbd-python.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rgw-swift.yaml create mode 100644 qa/suites/upgrade/luminous-x/stress-split/7-final-workload/snaps-many-objects.yaml create mode 120000 qa/suites/upgrade/luminous-x/stress-split/distros create mode 120000 qa/suites/upgrade/luminous-x/stress-split/objectstore/bluestore.yaml create mode 120000 qa/suites/upgrade/luminous-x/stress-split/objectstore/filestore-xfs.yaml create mode 120000 qa/suites/upgrade/luminous-x/stress-split/thrashosds-health.yaml diff --git a/qa/suites/upgrade/luminous-x/parallel/% b/qa/suites/upgrade/luminous-x/parallel/% new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/parallel/0-cluster/+ b/qa/suites/upgrade/luminous-x/parallel/0-cluster/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/parallel/0-cluster/openstack.yaml b/qa/suites/upgrade/luminous-x/parallel/0-cluster/openstack.yaml new file mode 100644 index 0000000000000..f4d1349b48262 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/0-cluster/openstack.yaml @@ -0,0 +1,4 @@ +openstack: + - volumes: # attached to each instance + count: 3 + size: 30 # GB diff --git a/qa/suites/upgrade/luminous-x/parallel/0-cluster/start.yaml b/qa/suites/upgrade/luminous-x/parallel/0-cluster/start.yaml new file mode 100644 index 0000000000000..76229e09316d2 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/0-cluster/start.yaml @@ -0,0 +1,34 @@ +meta: +- desc: | + Run ceph on two nodes, + with a separate client 0,1,2 third node. + Use xfs beneath the osds. + CephFS tests running on client 2,3 +roles: +- - mon.a + - mgr.x + - mds.a + - osd.0 + - osd.1 +- - mon.b + - mon.c + - osd.2 + - osd.3 +- - client.0 + - client.1 + - client.2 + - client.3 +overrides: + ceph: + log-whitelist: + - scrub mismatch + - ScrubResult + - wrongly marked + - (POOL_APP_NOT_ENABLED) + - overall HEALTH_ + conf: + global: + enable experimental unrecoverable data corrupting features: "*" + mon: + mon warn on osd down out interval zero: false + fs: xfs diff --git a/qa/suites/upgrade/luminous-x/parallel/1-ceph-install/luminous.yaml b/qa/suites/upgrade/luminous-x/parallel/1-ceph-install/luminous.yaml new file mode 100644 index 0000000000000..3d57f792b97c1 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/1-ceph-install/luminous.yaml @@ -0,0 +1,43 @@ +meta: +- desc: | + install ceph/luminous latest + run workload and upgrade-sequence in parallel + upgrade the client node +tasks: +- install: + branch: luminous +- print: "**** done installing luminous" +- ceph: + log-whitelist: + - overall HEALTH_ + - \(FS_ + - \(MDS_ + - \(OSD_ + - \(MON_DOWN\) + - \(CACHE_POOL_ + - \(POOL_ + - \(MGR_DOWN\) + - \(PG_ + - \(SMALLER_PGP_NUM\) + - Monitor daemon marked osd + - Behind on trimming + - Manager daemon + conf: + global: + mon warn on pool no app: false +- exec: + osd.0: + - ceph osd require-osd-release luminous + - ceph osd set-require-min-compat-client luminous +- print: "**** done ceph" +- install.upgrade: + mon.a: + mon.b: +- print: "**** done install.upgrade both hosts" +- parallel: + - workload + - upgrade-sequence +- print: "**** done parallel" +- install.upgrade: + client.0: +- print: "**** done install.upgrade on client.0" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/+ b/qa/suites/upgrade/luminous-x/parallel/2-workload/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/blogbench.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/blogbench.yaml new file mode 100644 index 0000000000000..021fcc6819045 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/blogbench.yaml @@ -0,0 +1,14 @@ +meta: +- desc: | + run a cephfs stress test + mount ceph-fuse on client.2 before running workunit +workload: + full_sequential: + - sequential: + - ceph-fuse: + - print: "**** done ceph-fuse 2-workload" + - workunit: + clients: + client.2: + - suites/blogbench.sh + - print: "**** done suites/blogbench.sh 2-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/ec-rados-default.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/ec-rados-default.yaml new file mode 100644 index 0000000000000..5c5a958804e3f --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/ec-rados-default.yaml @@ -0,0 +1,24 @@ +meta: +- desc: | + run run randomized correctness test for rados operations + on an erasure-coded pool +workload: + full_sequential: + - rados: + clients: [client.0] + ops: 4000 + objects: 50 + ec_pool: true + write_append_excl: false + op_weights: + read: 100 + write: 0 + append: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 + copy_from: 50 + setattr: 25 + rmattr: 25 + - print: "**** done rados ec task" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_api.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_api.yaml new file mode 100644 index 0000000000000..e4cc9f96170b4 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_api.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + object class functional tests +workload: + full_sequential: + - workunit: + branch: luminous + clients: + client.0: + - cls + - print: "**** done cls 2-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_loadgenbig.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_loadgenbig.yaml new file mode 100644 index 0000000000000..874a8c5e08bd3 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/rados_loadgenbig.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + generate read/write load with rados objects ranging from 1MB to 25MB +workload: + full_sequential: + - workunit: + branch: luminous + clients: + client.0: + - rados/load-gen-big.sh + - print: "**** done rados/load-gen-big.sh 2-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_api.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_api.yaml new file mode 100644 index 0000000000000..81563c906c9d7 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_api.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + librbd C and C++ api tests +workload: + full_sequential: + - workunit: + branch: luminous + clients: + client.0: + - rbd/test_librbd.sh + - print: "**** done rbd/test_librbd.sh 2-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_python.yaml b/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_python.yaml new file mode 100644 index 0000000000000..e17207d200569 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/2-workload/test_rbd_python.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + librbd python api tests +workload: + full_sequential: + - workunit: + branch: luminous + clients: + client.0: + - rbd/test_librbd_python.sh + - print: "**** done rbd/test_librbd_python.sh 2-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-all.yaml b/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-all.yaml new file mode 100644 index 0000000000000..cff3a68366d1b --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-all.yaml @@ -0,0 +1,16 @@ +meta: +- desc: | + upgrade the ceph cluster +upgrade-sequence: + sequential: + - ceph.restart: + daemons: [mon.a, mon.b, mon.c, mgr.x] + - ceph.restart: + daemons: [osd.0, osd.1, osd.2, osd.3] + wait-for-healthy: false + wait-for-osds-up: true + - ceph.restart: + daemons: [mds.a] + wait-for-healthy: false + wait-for-osds-up: true + - print: "**** done ceph.restart all" diff --git a/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-mon-osd-mds.yaml b/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-mon-osd-mds.yaml new file mode 100644 index 0000000000000..f197de67945c4 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/3-upgrade-sequence/upgrade-mon-osd-mds.yaml @@ -0,0 +1,35 @@ +meta: +- desc: | + upgrade the ceph cluster, + upgrate in two steps + step one ordering: mon.a, osd.0, osd.1, mds.a + step two ordering: mon.b, mon.c, osd.2, osd.3 + ceph expected to be healthy state after each step +upgrade-sequence: + sequential: + - ceph.restart: + daemons: [mon.a] + wait-for-healthy: true + - sleep: + duration: 60 + - ceph.restart: + daemons: [mon.b, mon.c, mgr.x] + wait-for-healthy: true + - sleep: + duration: 60 + - ceph.restart: + daemons: [osd.0, osd.1] + wait-for-healthy: true + - sleep: + duration: 60 + - ceph.restart: [mds.a] + - sleep: + duration: 60 + - sleep: + duration: 60 + - ceph.restart: + daemons: [osd.2, osd.3] + wait-for-healthy: false + wait-for-osds-up: true + - sleep: + duration: 60 diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/+ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/blogbench.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/blogbench.yaml new file mode 100644 index 0000000000000..d2629c03f6865 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/blogbench.yaml @@ -0,0 +1,13 @@ +meta: +- desc: | + run a cephfs stress test + mount ceph-fuse on client.3 before running workunit +tasks: +- sequential: + - ceph-fuse: + - print: "**** done ceph-fuse 5-final-workload" + - workunit: + clients: + client.3: + - suites/blogbench.sh + - print: "**** done suites/blogbench.sh 5-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados-snaps-few-objects.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados-snaps-few-objects.yaml new file mode 100644 index 0000000000000..d8b3dcb3869db --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados-snaps-few-objects.yaml @@ -0,0 +1,17 @@ +meta: +- desc: | + randomized correctness test for rados operations on a replicated pool with snapshots +tasks: + - rados: + clients: [client.1] + ops: 4000 + objects: 50 + write_append_excl: false + op_weights: + read: 100 + write: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 + - print: "**** done rados 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_loadgenmix.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_loadgenmix.yaml new file mode 100644 index 0000000000000..922a9da4f5bf7 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_loadgenmix.yaml @@ -0,0 +1,9 @@ +meta: +- desc: | + generate read/write load with rados objects ranging from 1 byte to 1MB +tasks: + - workunit: + clients: + client.1: + - rados/load-gen-mix.sh + - print: "**** done rados/load-gen-mix.sh 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_mon_thrash.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_mon_thrash.yaml new file mode 100644 index 0000000000000..a42b7d2d7a798 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rados_mon_thrash.yaml @@ -0,0 +1,18 @@ +meta: +- desc: | + librados C and C++ api tests +overrides: + ceph: + log-whitelist: + - reached quota +tasks: + - mon_thrash: + revive_delay: 20 + thrash_delay: 1 + - print: "**** done mon_thrash 4-final-workload" + - workunit: + branch: luminous + clients: + client.1: + - rados/test.sh + - print: "**** done rados/test.sh 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_cls.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_cls.yaml new file mode 100644 index 0000000000000..aaf0a377999f6 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_cls.yaml @@ -0,0 +1,9 @@ +meta: +- desc: | + rbd object class functional tests +tasks: + - workunit: + clients: + client.1: + - cls/test_cls_rbd.sh + - print: "**** done cls/test_cls_rbd.sh 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_import_export.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_import_export.yaml new file mode 100644 index 0000000000000..46e1355068723 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rbd_import_export.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + run basic import/export cli tests for rbd +tasks: + - workunit: + clients: + client.1: + - rbd/import_export.sh + env: + RBD_CREATE_ARGS: --new-format + - print: "**** done rbd/import_export.sh 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rgw_swift.yaml b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rgw_swift.yaml new file mode 100644 index 0000000000000..7a7659ff4f1c2 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/5-final-workload/rgw_swift.yaml @@ -0,0 +1,13 @@ +meta: +- desc: | + swift api tests for rgw +overrides: + rgw: + frontend: civetweb +tasks: + - rgw: [client.1] + - print: "**** done rgw 4-final-workload" + - swift: + client.1: + rgw_server: client.1 + - print: "**** done swift 4-final-workload" diff --git a/qa/suites/upgrade/luminous-x/parallel/distros b/qa/suites/upgrade/luminous-x/parallel/distros new file mode 120000 index 0000000000000..ca99fee94fa84 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/distros @@ -0,0 +1 @@ +../../../../distros/supported/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/parallel/objectstore b/qa/suites/upgrade/luminous-x/parallel/objectstore new file mode 120000 index 0000000000000..016cbf9677d96 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/parallel/objectstore @@ -0,0 +1 @@ +../stress-split/objectstore/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/% b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/% new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/0-cluster b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/0-cluster new file mode 120000 index 0000000000000..3580937280491 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/0-cluster @@ -0,0 +1 @@ +../stress-split/0-cluster/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/1-luminous-install b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/1-luminous-install new file mode 120000 index 0000000000000..2fc8845eb663c --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/1-luminous-install @@ -0,0 +1 @@ +../stress-split/1-ceph-install/luminous.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/2-partial-upgrade b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/2-partial-upgrade new file mode 120000 index 0000000000000..ab35fc1a51e13 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/2-partial-upgrade @@ -0,0 +1 @@ +../stress-split/2-partial-upgrade/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/3-thrash/default.yaml b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/3-thrash/default.yaml new file mode 100644 index 0000000000000..edae7b3bd68e8 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/3-thrash/default.yaml @@ -0,0 +1,25 @@ +meta: +- desc: | + randomly kill and revive osd + small chance to increase the number of pgs +overrides: + ceph: + log-whitelist: + - but it is still running + - wrongly marked me down + - objects unfound and apparently lost + - log bound mismatch +tasks: +- parallel: + - stress-tasks +stress-tasks: +- thrashosds: + timeout: 1200 + chance_pgnum_grow: 1 + chance_pgpnum_fix: 1 + min_in: 4 + chance_thrash_cluster_full: 0 + chance_thrash_pg_upmap: 0 + chance_thrash_pg_upmap_items: 0 + chance_force_recovery: 0 +- print: "**** done thrashosds 3-thrash" diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/4-ec-workload.yaml b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/4-ec-workload.yaml new file mode 100644 index 0000000000000..c89551e6b86c9 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/4-ec-workload.yaml @@ -0,0 +1,22 @@ +meta: +- desc: | + randomized correctness test for rados operations on an erasure coded pool +stress-tasks: + - rados: + clients: [client.0] + ops: 4000 + objects: 50 + ec_pool: true + write_append_excl: false + op_weights: + read: 100 + write: 0 + append: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 + copy_from: 50 + setattr: 25 + rmattr: 25 + - print: "**** done rados ec task" diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/5-finish-upgrade.yaml b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/5-finish-upgrade.yaml new file mode 120000 index 0000000000000..a66a7dc1852a9 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/5-finish-upgrade.yaml @@ -0,0 +1 @@ +../stress-split/5-finish-upgrade.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/7-final-workload.yaml b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/7-final-workload.yaml new file mode 100644 index 0000000000000..50a1465072dcf --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/7-final-workload.yaml @@ -0,0 +1,35 @@ +# +# k=3 implies a stripe_width of 1376*3 = 4128 which is different from +# the default value of 4096 It is also not a multiple of 1024*1024 and +# creates situations where rounding rules during recovery becomes +# necessary. +# +meta: +- desc: | + randomized correctness test for rados operations on an erasure coded pool + using the jerasure plugin with k=3 and m=1 +tasks: +- rados: + clients: [client.0] + ops: 4000 + objects: 50 + ec_pool: true + write_append_excl: false + erasure_code_profile: + name: jerasure31profile + plugin: jerasure + k: 3 + m: 1 + technique: reed_sol_van + crush-failure-domain: osd + op_weights: + read: 100 + write: 0 + append: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 + copy_from: 50 + setattr: 25 + rmattr: 25 diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/distros b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/distros new file mode 120000 index 0000000000000..ca99fee94fa84 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/distros @@ -0,0 +1 @@ +../../../../distros/supported/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/objectstore b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/objectstore new file mode 120000 index 0000000000000..016cbf9677d96 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/objectstore @@ -0,0 +1 @@ +../stress-split/objectstore/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split-erasure-code/thrashosds-health.yaml b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/thrashosds-health.yaml new file mode 120000 index 0000000000000..e0426dbe49935 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split-erasure-code/thrashosds-health.yaml @@ -0,0 +1 @@ +../../../../tasks/thrashosds-health.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split/% b/qa/suites/upgrade/luminous-x/stress-split/% new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/stress-split/0-cluster/+ b/qa/suites/upgrade/luminous-x/stress-split/0-cluster/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/stress-split/0-cluster/openstack.yaml b/qa/suites/upgrade/luminous-x/stress-split/0-cluster/openstack.yaml new file mode 100644 index 0000000000000..a0d5c20195beb --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/0-cluster/openstack.yaml @@ -0,0 +1,6 @@ +openstack: + - machine: + disk: 100 # GB + - volumes: # attached to each instance + count: 3 + size: 30 # GB diff --git a/qa/suites/upgrade/luminous-x/stress-split/0-cluster/start.yaml b/qa/suites/upgrade/luminous-x/stress-split/0-cluster/start.yaml new file mode 100644 index 0000000000000..e3ad918e8b849 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/0-cluster/start.yaml @@ -0,0 +1,29 @@ +meta: +- desc: | + Run ceph on two nodes, + with a separate client-only node. + Use xfs beneath the osds. +overrides: + ceph: + fs: xfs + log-whitelist: + - overall HEALTH_ + - \(MON_DOWN\) + - \(MGR_DOWN\) + conf: + global: + enable experimental unrecoverable data corrupting features: "*" + mon: + mon warn on osd down out interval zero: false +roles: +- - mon.a + - mon.b + - mon.c + - mgr.x + - osd.0 + - osd.1 + - osd.2 +- - osd.3 + - osd.4 + - osd.5 +- - client.0 diff --git a/qa/suites/upgrade/luminous-x/stress-split/1-ceph-install/luminous.yaml b/qa/suites/upgrade/luminous-x/stress-split/1-ceph-install/luminous.yaml new file mode 100644 index 0000000000000..76ab33dd23833 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/1-ceph-install/luminous.yaml @@ -0,0 +1,17 @@ +meta: +- desc: install ceph/luminous latest +tasks: +- install: + branch: luminous +- print: "**** done install luminous" +- ceph: +- exec: + osd.0: + - ceph osd require-osd-release luminous + - ceph osd set-require-min-compat-client luminous +- print: "**** done ceph" +overrides: + ceph: + conf: + mon: + mon warn on osd down out interval zero: false diff --git a/qa/suites/upgrade/luminous-x/stress-split/2-partial-upgrade/firsthalf.yaml b/qa/suites/upgrade/luminous-x/stress-split/2-partial-upgrade/firsthalf.yaml new file mode 100644 index 0000000000000..87fa1d5fa2c32 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/2-partial-upgrade/firsthalf.yaml @@ -0,0 +1,12 @@ +meta: +- desc: | + install upgrade ceph/-x on one node only + 1st half + restart : osd.0,1,2 +tasks: +- install.upgrade: + osd.0: +- print: "**** done install.upgrade osd.0" +- ceph.restart: + daemons: [mon.a,mon.b,mon.c,mgr.x,osd.0,osd.1,osd.2] +- print: "**** done ceph.restart 1st half" diff --git a/qa/suites/upgrade/luminous-x/stress-split/3-thrash/default.yaml b/qa/suites/upgrade/luminous-x/stress-split/3-thrash/default.yaml new file mode 100644 index 0000000000000..b3fddefc7a35f --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/3-thrash/default.yaml @@ -0,0 +1,25 @@ +meta: +- desc: | + randomly kill and revive osd + small chance to increase the number of pgs +overrides: + ceph: + log-whitelist: + - but it is still running + - wrongly marked me down + - objects unfound and apparently lost + - log bound mismatch +tasks: +- parallel: + - stress-tasks +stress-tasks: +- thrashosds: + timeout: 1200 + chance_pgnum_grow: 1 + chance_pgpnum_fix: 1 + chance_thrash_cluster_full: 0 + chance_thrash_pg_upmap: 0 + chance_thrash_pg_upmap_items: 0 + disable_objectstore_tool_tests: true + chance_force_recovery: 0 +- print: "**** done thrashosds 3-thrash" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/+ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/radosbench.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/radosbench.yaml new file mode 100644 index 0000000000000..626ae8ea66532 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/radosbench.yaml @@ -0,0 +1,40 @@ +meta: +- desc: | + run randomized correctness test for rados operations + generate write load with rados bench +stress-tasks: +- full_sequential: + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 + - radosbench: + clients: [client.0] + time: 150 +- print: "**** done radosbench 7-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-cls.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-cls.yaml new file mode 100644 index 0000000000000..f8cc4d8ac32b0 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-cls.yaml @@ -0,0 +1,10 @@ +meta: +- desc: | + run basic cls tests for rbd +stress-tasks: +- workunit: + branch: luminous + clients: + client.0: + - cls/test_cls_rbd.sh +- print: "**** done cls/test_cls_rbd.sh 5-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-import-export.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-import-export.yaml new file mode 100644 index 0000000000000..30a677af65cf1 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd-import-export.yaml @@ -0,0 +1,12 @@ +meta: +- desc: | + run basic import/export cli tests for rbd +stress-tasks: +- workunit: + branch: luminous + clients: + client.0: + - rbd/import_export.sh + env: + RBD_CREATE_ARGS: --new-format +- print: "**** done rbd/import_export.sh 5-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd_api.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd_api.yaml new file mode 100644 index 0000000000000..9079aa33b8978 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/rbd_api.yaml @@ -0,0 +1,10 @@ +meta: +- desc: | + librbd C and C++ api tests +stress-tasks: +- workunit: + branch: luminous + clients: + client.0: + - rbd/test_librbd.sh +- print: "**** done rbd/test_librbd.sh 7-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/readwrite.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/readwrite.yaml new file mode 100644 index 0000000000000..41e34d6d7d32a --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/readwrite.yaml @@ -0,0 +1,16 @@ +meta: +- desc: | + randomized correctness test for rados operations on a replicated pool, + using only reads, writes, and deletes +stress-tasks: +- full_sequential: + - rados: + clients: [client.0] + ops: 4000 + objects: 500 + write_append_excl: false + op_weights: + read: 45 + write: 45 + delete: 10 +- print: "**** done rados/readwrite 5-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/4-workload/snaps-few-objects.yaml b/qa/suites/upgrade/luminous-x/stress-split/4-workload/snaps-few-objects.yaml new file mode 100644 index 0000000000000..f56d0de0f745b --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/4-workload/snaps-few-objects.yaml @@ -0,0 +1,18 @@ +meta: +- desc: | + randomized correctness test for rados operations on a replicated pool with snapshot operations +stress-tasks: +- full_sequential: + - rados: + clients: [client.0] + ops: 4000 + objects: 50 + write_append_excl: false + op_weights: + read: 100 + write: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 +- print: "**** done rados/snaps-few-objects 5-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/5-finish-upgrade.yaml b/qa/suites/upgrade/luminous-x/stress-split/5-finish-upgrade.yaml new file mode 100644 index 0000000000000..1d528cd5de751 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/5-finish-upgrade.yaml @@ -0,0 +1,9 @@ +tasks: +- install.upgrade: + osd.3: + client.0: +- ceph.restart: + daemons: [osd.3, osd.4, osd.5] + wait-for-healthy: false + wait-for-osds-up: true + diff --git a/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/+ b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rbd-python.yaml b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rbd-python.yaml new file mode 100644 index 0000000000000..92fe658b42eae --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rbd-python.yaml @@ -0,0 +1,10 @@ +meta: +- desc: | + librbd python api tests +tasks: +- workunit: + branch: luminous + clients: + client.0: + - rbd/test_librbd_python.sh +- print: "**** done rbd/test_librbd_python.sh 9-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rgw-swift.yaml b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rgw-swift.yaml new file mode 100644 index 0000000000000..76e5d6fc23158 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/rgw-swift.yaml @@ -0,0 +1,11 @@ +meta: +- desc: | + swift api tests for rgw +tasks: +- rgw: + client.0: +- print: "**** done rgw 9-workload" +- swift: + client.0: + rgw_server: client.0 +- print: "**** done swift 9-workload" diff --git a/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/snaps-many-objects.yaml b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/snaps-many-objects.yaml new file mode 100644 index 0000000000000..805bf97c37924 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/7-final-workload/snaps-many-objects.yaml @@ -0,0 +1,16 @@ +meta: +- desc: | + randomized correctness test for rados operations on a replicated pool with snapshot operations +tasks: +- rados: + clients: [client.0] + ops: 4000 + objects: 500 + write_append_excl: false + op_weights: + read: 100 + write: 100 + delete: 50 + snap_create: 50 + snap_remove: 50 + rollback: 50 diff --git a/qa/suites/upgrade/luminous-x/stress-split/distros b/qa/suites/upgrade/luminous-x/stress-split/distros new file mode 120000 index 0000000000000..ca99fee94fa84 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/distros @@ -0,0 +1 @@ +../../../../distros/supported/ \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split/objectstore/bluestore.yaml b/qa/suites/upgrade/luminous-x/stress-split/objectstore/bluestore.yaml new file mode 120000 index 0000000000000..d6445987d072d --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/objectstore/bluestore.yaml @@ -0,0 +1 @@ +../../../../../objectstore/bluestore.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split/objectstore/filestore-xfs.yaml b/qa/suites/upgrade/luminous-x/stress-split/objectstore/filestore-xfs.yaml new file mode 120000 index 0000000000000..03750e5adeba4 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/objectstore/filestore-xfs.yaml @@ -0,0 +1 @@ +../../../../../objectstore/filestore-xfs.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/luminous-x/stress-split/thrashosds-health.yaml b/qa/suites/upgrade/luminous-x/stress-split/thrashosds-health.yaml new file mode 120000 index 0000000000000..e0426dbe49935 --- /dev/null +++ b/qa/suites/upgrade/luminous-x/stress-split/thrashosds-health.yaml @@ -0,0 +1 @@ +../../../../tasks/thrashosds-health.yaml \ No newline at end of file -- 2.39.5