summaryrefslogtreecommitdiffstats
path: root/qa/suites/upgrade/nautilus-x/stress-split-erasure-code
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
commit19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch)
tree42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /qa/suites/upgrade/nautilus-x/stress-split-erasure-code
parentInitial commit. (diff)
downloadceph-upstream.tar.xz
ceph-upstream.zip
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/%0
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/.qa1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/0-cluster1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1-nautilus-install1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/.qa1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/normal_pg_log.yaml1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/short_pg_log.yaml6
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/2-partial-upgrade1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/.qa1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/default.yaml27
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3.1-objectstore1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/%0
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/.qa1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rados-ec-workload.yaml22
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rbd-ec-workload.yaml31
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/5-finish-upgrade.yaml1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/6-pacific.yaml1
-rw-r--r--qa/suites/upgrade/nautilus-x/stress-split-erasure-code/7-final-workload.yaml35
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/mon_election1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/thrashosds-health.yaml1
l---------qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml1
21 files changed, 135 insertions, 0 deletions
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/% b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/%
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/%
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/.qa b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/0-cluster b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/0-cluster
new file mode 120000
index 000000000..358093728
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-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/nautilus-x/stress-split-erasure-code/1-nautilus-install b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1-nautilus-install
new file mode 120000
index 000000000..0479ac542
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1-nautilus-install
@@ -0,0 +1 @@
+../stress-split/1-ceph-install/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/.qa b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/normal_pg_log.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/normal_pg_log.yaml
new file mode 100644
index 000000000..8b1378917
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/normal_pg_log.yaml
@@ -0,0 +1 @@
+
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/short_pg_log.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/short_pg_log.yaml
new file mode 100644
index 000000000..e31e37ba6
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/1.1-pg-log-overrides/short_pg_log.yaml
@@ -0,0 +1,6 @@
+overrides:
+ ceph:
+ conf:
+ osd:
+ osd min pg log entries: 1
+ osd max pg log entries: 2
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/2-partial-upgrade b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/2-partial-upgrade
new file mode 120000
index 000000000..ab35fc1a5
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-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/nautilus-x/stress-split-erasure-code/3-thrash/.qa b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/default.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/default.yaml
new file mode 100644
index 000000000..3290918ac
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3-thrash/default.yaml
@@ -0,0 +1,27 @@
+meta:
+- desc: |
+ randomly kill and revive osd
+ small chance to increase the number of pgs
+overrides:
+ ceph:
+ log-ignorelist:
+ - 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
+ aggressive_pg_num_changes: false
+ disable_objectstore_tool_tests: true
+- print: "**** done thrashosds 3-thrash"
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3.1-objectstore b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3.1-objectstore
new file mode 120000
index 000000000..016cbf967
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/3.1-objectstore
@@ -0,0 +1 @@
+../stress-split/objectstore/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/% b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/%
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/%
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/.qa b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rados-ec-workload.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rados-ec-workload.yaml
new file mode 100644
index 000000000..c89551e6b
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rados-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/nautilus-x/stress-split-erasure-code/4-ec-workload/rbd-ec-workload.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rbd-ec-workload.yaml
new file mode 100644
index 000000000..d0e661dca
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/4-ec-workload/rbd-ec-workload.yaml
@@ -0,0 +1,31 @@
+meta:
+- desc: |
+ run rbd tests on EC pool
+ overrides => force bluestore since it's required for ec-overwrite
+ use an EC pool for rbd and run xfstests on top of it to verify correctness
+tasks:
+- exec:
+ client.0:
+ - sudo ceph osd erasure-code-profile set teuthologyprofile crush-failure-domain=osd m=1 k=2
+ - sudo ceph osd pool create datapool 4 4 erasure teuthologyprofile
+ - sudo ceph osd pool set datapool allow_ec_overwrites true
+ - rbd pool init datapool
+- qemu:
+ all:
+ clone: true
+ type: block
+ disks: 3
+ test: qa/run_xfstests_qemu.sh
+- print: "**** done rbd/qemu ec task"
+exclude_arch: armv7l
+overrides:
+ thrashosds:
+ bdev_inject_crash: 2
+ bdev_inject_crash_probability: .5
+ ceph:
+ fs: xfs
+ conf:
+ client:
+ rbd default data pool: datapool
+ osd: # force bluestore since it's required for ec overwrites
+ osd objectstore: bluestore
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/5-finish-upgrade.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/5-finish-upgrade.yaml
new file mode 120000
index 000000000..a66a7dc18
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-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/nautilus-x/stress-split-erasure-code/6-pacific.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/6-pacific.yaml
new file mode 120000
index 000000000..1467fc88e
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/6-pacific.yaml
@@ -0,0 +1 @@
+.qa/releases/pacific.yaml \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/7-final-workload.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/7-final-workload.yaml
new file mode 100644
index 000000000..50a146507
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-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/nautilus-x/stress-split-erasure-code/mon_election b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/mon_election
new file mode 120000
index 000000000..3f331e621
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/mon_election
@@ -0,0 +1 @@
+.qa/mon_election \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/thrashosds-health.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/thrashosds-health.yaml
new file mode 120000
index 000000000..9124eb1aa
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/thrashosds-health.yaml
@@ -0,0 +1 @@
+.qa/tasks/thrashosds-health.yaml \ No newline at end of file
diff --git a/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml
new file mode 120000
index 000000000..cfb85f10e
--- /dev/null
+++ b/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml
@@ -0,0 +1 @@
+.qa/distros/all/ubuntu_18.04.yaml \ No newline at end of file