summaryrefslogtreecommitdiffstats
path: root/qa/suites/upgrade/pacific-x
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
commite6918187568dbd01842d8d1d2c808ce16a894239 (patch)
tree64f88b554b444a49f656b6c656111a145cbbaa28 /qa/suites/upgrade/pacific-x
parentInitial commit. (diff)
downloadceph-e6918187568dbd01842d8d1d2c808ce16a894239.tar.xz
ceph-e6918187568dbd01842d8d1d2c808ce16a894239.zip
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'qa/suites/upgrade/pacific-x')
l---------qa/suites/upgrade/pacific-x/.qa1
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/%0
l---------qa/suites/upgrade/pacific-x/parallel/.qa1
l---------qa/suites/upgrade/pacific-x/parallel/0-random-distro$1
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/0-start.yaml33
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/1-tasks.yaml43
l---------qa/suites/upgrade/pacific-x/parallel/mon_election1
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/upgrade-sequence.yaml16
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/+0
l---------qa/suites/upgrade/pacific-x/parallel/workload/.qa1
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/ec-rados-default.yaml25
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/rados_api.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/rados_loadgenbig.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/rbd_import_export.yaml14
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_api.yaml14
-rw-r--r--qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_python.yaml20
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/%0
l---------qa/suites/upgrade/pacific-x/stress-split/.qa1
l---------qa/suites/upgrade/pacific-x/stress-split/0-distro1
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/0-roles.yaml31
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/1-start.yaml122
l---------qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/.qa1
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/radosbench.yaml19
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-cls.yaml10
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-import-export.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd_api.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/readwrite.yaml16
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/snaps-few-objects.yaml18
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/+0
l---------qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/.qa1
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/radosbench.yaml25
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-cls.yaml10
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-import-export.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd_api.yaml12
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/readwrite.yaml16
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/snaps-few-objects.yaml18
l---------qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/.qa1
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/radosbench.yaml16
-rw-r--r--qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/rbd-import-export.yaml12
l---------qa/suites/upgrade/pacific-x/stress-split/mon_election1
40 files changed, 561 insertions, 0 deletions
diff --git a/qa/suites/upgrade/pacific-x/.qa b/qa/suites/upgrade/pacific-x/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/parallel/% b/qa/suites/upgrade/pacific-x/parallel/%
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/%
diff --git a/qa/suites/upgrade/pacific-x/parallel/.qa b/qa/suites/upgrade/pacific-x/parallel/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/parallel/0-random-distro$ b/qa/suites/upgrade/pacific-x/parallel/0-random-distro$
new file mode 120000
index 000000000..4b341719d
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/0-random-distro$
@@ -0,0 +1 @@
+.qa/distros/container-hosts \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/parallel/0-start.yaml b/qa/suites/upgrade/pacific-x/parallel/0-start.yaml
new file mode 100644
index 000000000..3814ea3ef
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/0-start.yaml
@@ -0,0 +1,33 @@
+roles:
+- - mon.a
+ - mon.c
+ - mgr.y
+ - mds.a
+ - osd.0
+ - osd.1
+ - osd.2
+ - osd.3
+ - client.0
+ - node-exporter.a
+ - alertmanager.a
+- - mon.b
+ - mds.b
+ - mgr.x
+ - osd.4
+ - osd.5
+ - osd.6
+ - osd.7
+ - client.1
+ - prometheus.a
+ - grafana.a
+ - node-exporter.b
+openstack:
+- volumes: # attached to each instance
+ count: 4
+ size: 10 # GB
+overrides:
+ ceph:
+ create_rbd_pool: true
+ conf:
+ osd:
+ osd shutdown pgref assert: true
diff --git a/qa/suites/upgrade/pacific-x/parallel/1-tasks.yaml b/qa/suites/upgrade/pacific-x/parallel/1-tasks.yaml
new file mode 100644
index 000000000..064d0758d
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/1-tasks.yaml
@@ -0,0 +1,43 @@
+tasks:
+- install:
+ branch: pacific
+ exclude_packages:
+ - ceph-volume
+- print: "**** done install task..."
+- print: "**** done start installing pacific cephadm ..."
+- cephadm:
+ image: quay.ceph.io/ceph-ci/ceph:pacific
+ cephadm_branch: pacific
+ cephadm_git_url: https://github.com/ceph/ceph
+ conf:
+ osd:
+ #set config option for which cls modules are allowed to be loaded / used
+ osd_class_load_list: "*"
+ osd_class_default_list: "*"
+- print: "**** done end installing pacific cephadm ..."
+
+- print: "**** done start cephadm.shell ceph config set mgr..."
+- cephadm.shell:
+ mon.a:
+ - ceph config set mgr mgr/cephadm/use_repo_digest true --force
+- print: "**** done cephadm.shell ceph config set mgr..."
+
+- print: "**** done start telemetry pacific..."
+- workunit:
+ clients:
+ client.0:
+ - test_telemetry_pacific.sh
+- print: "**** done end telemetry pacific..."
+
+- print: "**** done start parallel"
+- parallel:
+ - workload
+ - upgrade-sequence
+- print: "**** done end parallel"
+
+- print: "**** done start telemetry x..."
+- workunit:
+ clients:
+ client.0:
+ - test_telemetry_pacific_x.sh
+- print: "**** done end telemetry x..."
diff --git a/qa/suites/upgrade/pacific-x/parallel/mon_election b/qa/suites/upgrade/pacific-x/parallel/mon_election
new file mode 120000
index 000000000..3f331e621
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/mon_election
@@ -0,0 +1 @@
+.qa/mon_election \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/parallel/upgrade-sequence.yaml b/qa/suites/upgrade/pacific-x/parallel/upgrade-sequence.yaml
new file mode 100644
index 000000000..a3f0888da
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/upgrade-sequence.yaml
@@ -0,0 +1,16 @@
+# renamed tasks: to upgrade-sequence:
+upgrade-sequence:
+ sequential:
+ - print: "**** done start upgrade, wait"
+ - cephadm.shell:
+ env: [sha1]
+ mon.a:
+ - ceph config set global log_to_journald false --force
+ - ceph orch upgrade start --image quay.ceph.io/ceph-ci/ceph:$sha1
+ - while ceph orch upgrade status | jq '.in_progress' | grep true ; do ceph orch ps ; ceph versions ; sleep 30 ; done
+ - ceph orch ps
+ - ceph versions
+ - ceph versions | jq -e '.overall | length == 1'
+ - ceph versions | jq -e '.overall | keys' | grep $sha1
+ - print: "**** done end upgrade, wait..."
+
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/+ b/qa/suites/upgrade/pacific-x/parallel/workload/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/+
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/.qa b/qa/suites/upgrade/pacific-x/parallel/workload/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/ec-rados-default.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/ec-rados-default.yaml
new file mode 100644
index 000000000..67a0f39c5
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/ec-rados-default.yaml
@@ -0,0 +1,25 @@
+meta:
+- desc: |
+ run run randomized correctness test for rados operations
+ on an erasure-coded pool
+workload:
+ full_sequential:
+ - print: "**** done start ec-rados-default.yaml"
+ - 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 end ec-rados-default.yaml"
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/rados_api.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/rados_api.yaml
new file mode 100644
index 000000000..1380a4016
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/rados_api.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ object class functional tests
+workload:
+ full_sequential:
+ - print: "**** done start rados_api.yaml"
+ - workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - cls
+ - print: "**** done end rados_api.yaml"
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/rados_loadgenbig.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/rados_loadgenbig.yaml
new file mode 100644
index 000000000..f315b1579
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/rados_loadgenbig.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ generate read/write load with rados objects ranging from 1MB to 25MB
+workload:
+ full_sequential:
+ - print: "**** done start rados_loadgenbig.yaml"
+ - workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - rados/load-gen-big.sh
+ - print: "**** done end rados_loadgenbig.yaml"
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/rbd_import_export.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/rbd_import_export.yaml
new file mode 100644
index 000000000..20e74c176
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/rbd_import_export.yaml
@@ -0,0 +1,14 @@
+meta:
+- desc: |
+ run basic import/export cli tests for rbd
+workload:
+ full_sequential:
+ - print: "**** done start rbd_import_export.yaml"
+ - workunit:
+ branch: pacific
+ clients:
+ client.1:
+ - rbd/import_export.sh
+ env:
+ RBD_CREATE_ARGS: --new-format
+ - print: "**** done end rbd_import_export.yaml"
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_api.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_api.yaml
new file mode 100644
index 000000000..6a0242b91
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_api.yaml
@@ -0,0 +1,14 @@
+meta:
+- desc: |
+ librbd C and C++ api tests
+workload:
+ full_sequential:
+ - print: "**** done start test_rbd_api.yaml"
+ - workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - rbd/test_librbd.sh
+ env:
+ RBD_FEATURES: "61"
+ - print: "**** done end test_rbd_api.yaml"
diff --git a/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_python.yaml b/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_python.yaml
new file mode 100644
index 000000000..8d1f0fd0f
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/parallel/workload/test_rbd_python.yaml
@@ -0,0 +1,20 @@
+meta:
+- desc: |
+ librbd python api tests
+overrides:
+ install:
+ ceph:
+ extra_system_packages:
+ - python3-pytest
+workload:
+ full_sequential:
+ - print: "**** done start test_rbd_python.yaml"
+ - workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - rbd/test_librbd_python.sh
+ env:
+ RBD_FEATURES: "61"
+ - print: "**** done end test_rbd_python.yaml"
+
diff --git a/qa/suites/upgrade/pacific-x/stress-split/% b/qa/suites/upgrade/pacific-x/stress-split/%
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/%
diff --git a/qa/suites/upgrade/pacific-x/stress-split/.qa b/qa/suites/upgrade/pacific-x/stress-split/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/stress-split/0-distro b/qa/suites/upgrade/pacific-x/stress-split/0-distro
new file mode 120000
index 000000000..4b341719d
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/0-distro
@@ -0,0 +1 @@
+.qa/distros/container-hosts \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/stress-split/0-roles.yaml b/qa/suites/upgrade/pacific-x/stress-split/0-roles.yaml
new file mode 100644
index 000000000..ad3ee43d3
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/0-roles.yaml
@@ -0,0 +1,31 @@
+roles:
+- - mon.a
+ - mon.c
+ - mgr.y
+ - osd.0
+ - osd.1
+ - osd.2
+ - osd.3
+ - client.0
+ - node-exporter.a
+ - alertmanager.a
+- - mon.b
+ - mgr.x
+ - osd.4
+ - osd.5
+ - osd.6
+ - osd.7
+ - client.1
+ - prometheus.a
+ - grafana.a
+ - node-exporter.b
+openstack:
+- volumes: # attached to each instance
+ count: 4
+ size: 10 # GB
+overrides:
+ ceph:
+ create_rbd_pool: true
+ conf:
+ osd:
+ osd shutdown pgref assert: true
diff --git a/qa/suites/upgrade/pacific-x/stress-split/1-start.yaml b/qa/suites/upgrade/pacific-x/stress-split/1-start.yaml
new file mode 100644
index 000000000..9a552df99
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/1-start.yaml
@@ -0,0 +1,122 @@
+tasks:
+- install:
+ branch: pacific
+ exclude_packages:
+ - ceph-volume
+
+- cephadm:
+ image: quay.ceph.io/ceph-ci/ceph:pacific
+ cephadm_branch: pacific
+ cephadm_git_url: https://github.com/ceph/ceph
+ conf:
+ osd:
+ #set config option for which cls modules are allowed to be loaded / used
+ osd_class_load_list: "*"
+ osd_class_default_list: "*"
+
+- cephadm.shell:
+ mon.a:
+ - ceph fs volume create foo
+ - ceph config set mon mon_warn_on_insecure_global_id_reclaim false --force
+ - ceph config set mon mon_warn_on_insecure_global_id_reclaim_allowed false --force
+
+- ceph.healthy:
+
+- print: "**** upgrading first half of cluster, with stress ****"
+- parallel:
+ - first-half-tasks
+ - first-half-sequence
+- print: "**** done upgrading first half of cluster ****"
+
+- ceph.healthy:
+
+- print: "**** applying stress + thrashing to mixed-version cluster ****"
+
+- parallel:
+ - stress-tasks
+
+- ceph.healthy:
+
+- print: "**** finishing upgrade ****"
+- parallel:
+ - second-half-tasks
+ - second-half-sequence
+
+- ceph.healthy:
+
+
+#################
+
+first-half-sequence:
+- cephadm.shell:
+ env: [sha1]
+ mon.a:
+ - ceph config set mgr mgr/cephadm/daemon_cache_timeout 60
+ - ceph config set global log_to_journald false --force
+
+ - ceph orch upgrade start --image quay.ceph.io/ceph-ci/ceph:$sha1
+ - ceph orch ps
+
+ - echo wait for minority of mons to upgrade
+ - while ! ceph mon versions | grep $sha1 ; do sleep 2 ; done
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for majority of mons to upgrade
+ - "while ! ceph mon versions | grep $sha1 | egrep ': [23]' ; do sleep 2 ; done"
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for all mons to upgrade
+ - "while ! ceph mon versions | grep $sha1 | grep ': 3' ; do sleep 2 ; done"
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for half of osds to upgrade
+ - "while ! ceph osd versions | grep $sha1 | egrep ': [45678]'; do sleep 2 ; done"
+ - ceph orch upgrade pause
+ - ceph orch ps
+
+ - ceph orch ps
+ - ceph versions
+
+
+#################
+
+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
+ aggressive_pg_num_changes: false
+
+
+#################
+
+second-half-sequence:
+ sequential:
+ - cephadm.shell:
+ env: [sha1]
+ mon.a:
+ - ceph orch upgrade resume
+ - sleep 60
+
+ - echo wait for upgrade to complete
+ - while ceph orch upgrade status | jq '.in_progress' | grep true ; do ceph orch ps ; ceph versions ; sleep 30 ; done
+
+ - echo upgrade complete
+ - ceph orch ps
+ - ceph versions
+ - ceph versions | jq -e '.overall | length == 1'
+ - ceph versions | jq -e '.overall | keys' | grep $sha1
diff --git a/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/.qa b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/radosbench.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/radosbench.yaml
new file mode 100644
index 000000000..3816ca38c
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/radosbench.yaml
@@ -0,0 +1,19 @@
+meta:
+- desc: |
+ run randomized correctness test for rados operations
+ generate write load with rados bench
+first-half-tasks:
+- full_sequential:
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+- print: "**** done end radosbench.yaml"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-cls.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-cls.yaml
new file mode 100644
index 000000000..4ebc09310
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-cls.yaml
@@ -0,0 +1,10 @@
+meta:
+- desc: |
+ run basic cls tests for rbd
+first-half-tasks:
+- workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - cls/test_cls_rbd.sh
+- print: "**** done cls/test_cls_rbd.sh 5-workload"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-import-export.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-import-export.yaml
new file mode 100644
index 000000000..6835c9125
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd-import-export.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ run basic import/export cli tests for rbd
+first-half-tasks:
+- workunit:
+ branch: pacific
+ 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/pacific-x/stress-split/2-first-half-tasks/rbd_api.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd_api.yaml
new file mode 100644
index 000000000..a7060c0ac
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/rbd_api.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ librbd C and C++ api tests
+first-half-tasks:
+- workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - rbd/test_librbd.sh
+ env:
+ RBD_FEATURES: "61"
+- print: "**** done rbd/test_librbd.sh 7-workload"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/readwrite.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/readwrite.yaml
new file mode 100644
index 000000000..21a9f379a
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/readwrite.yaml
@@ -0,0 +1,16 @@
+meta:
+- desc: |
+ randomized correctness test for rados operations on a replicated pool,
+ using only reads, writes, and deletes
+first-half-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/pacific-x/stress-split/2-first-half-tasks/snaps-few-objects.yaml b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/snaps-few-objects.yaml
new file mode 100644
index 000000000..6447c2245
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/2-first-half-tasks/snaps-few-objects.yaml
@@ -0,0 +1,18 @@
+meta:
+- desc: |
+ randomized correctness test for rados operations on a replicated pool with snapshot operations
+first-half-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/pacific-x/stress-split/3-stress-tasks/+ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/+
diff --git a/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/.qa b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/radosbench.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/radosbench.yaml
new file mode 100644
index 000000000..9058bd804
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/radosbench.yaml
@@ -0,0 +1,25 @@
+meta:
+- desc: |
+ run randomized correctness test for rados operations
+ generate write load with rados bench
+stress-tasks:
+- full_sequential:
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+- print: "**** done end radosbench.yaml"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-cls.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-cls.yaml
new file mode 100644
index 000000000..e72875c14
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-cls.yaml
@@ -0,0 +1,10 @@
+meta:
+- desc: |
+ run basic cls tests for rbd
+stress-tasks:
+- workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - cls/test_cls_rbd.sh
+- print: "**** done cls/test_cls_rbd.sh 5-workload"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-import-export.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-import-export.yaml
new file mode 100644
index 000000000..c3008f3b1
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd-import-export.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ run basic import/export cli tests for rbd
+stress-tasks:
+- workunit:
+ branch: pacific
+ 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/pacific-x/stress-split/3-stress-tasks/rbd_api.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd_api.yaml
new file mode 100644
index 000000000..8b52658c4
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/rbd_api.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ librbd C and C++ api tests
+stress-tasks:
+- workunit:
+ branch: pacific
+ clients:
+ client.0:
+ - rbd/test_librbd.sh
+ env:
+ RBD_FEATURES: "61"
+- print: "**** done rbd/test_librbd.sh 7-workload"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/readwrite.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/readwrite.yaml
new file mode 100644
index 000000000..41e34d6d7
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/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/pacific-x/stress-split/3-stress-tasks/snaps-few-objects.yaml b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/snaps-few-objects.yaml
new file mode 100644
index 000000000..f56d0de0f
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/3-stress-tasks/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/pacific-x/stress-split/4-second-half-tasks/.qa b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/radosbench.yaml b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/radosbench.yaml
new file mode 100644
index 000000000..7268cb170
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/radosbench.yaml
@@ -0,0 +1,16 @@
+meta:
+- desc: |
+ run randomized correctness test for rados operations
+ generate write load with rados bench
+second-half-tasks:
+- full_sequential:
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+ - radosbench:
+ clients: [client.0]
+ time: 90
+- print: "**** done end radosbench.yaml"
diff --git a/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/rbd-import-export.yaml b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/rbd-import-export.yaml
new file mode 100644
index 000000000..00cf88d54
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/4-second-half-tasks/rbd-import-export.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: |
+ run basic import/export cli tests for rbd
+second-half-tasks:
+- workunit:
+ branch: pacific
+ 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/pacific-x/stress-split/mon_election b/qa/suites/upgrade/pacific-x/stress-split/mon_election
new file mode 120000
index 000000000..3f331e621
--- /dev/null
+++ b/qa/suites/upgrade/pacific-x/stress-split/mon_election
@@ -0,0 +1 @@
+.qa/mon_election \ No newline at end of file