diff options
Diffstat (limited to 'qa/suites/rados/basic')
28 files changed, 275 insertions, 0 deletions
diff --git a/qa/suites/rados/basic/% b/qa/suites/rados/basic/% new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/qa/suites/rados/basic/% diff --git a/qa/suites/rados/basic/.qa b/qa/suites/rados/basic/.qa new file mode 120000 index 000000000..a602a0353 --- /dev/null +++ b/qa/suites/rados/basic/.qa @@ -0,0 +1 @@ +../.qa/
\ No newline at end of file diff --git a/qa/suites/rados/basic/ceph.yaml b/qa/suites/rados/basic/ceph.yaml new file mode 100644 index 000000000..c12a671f0 --- /dev/null +++ b/qa/suites/rados/basic/ceph.yaml @@ -0,0 +1,18 @@ +overrides: + ceph: + conf: + mon: + mon min osdmap epochs: 50 + paxos service trim min: 10 + # prune full osdmaps regularly + mon osdmap full prune min: 15 + mon osdmap full prune interval: 2 + mon osdmap full prune txsize: 2 +tasks: +- install: + extra_system_packages: + rpm: + - sqlite-devel + deb: + - sqlite3 +- ceph: diff --git a/qa/suites/rados/basic/clusters/+ b/qa/suites/rados/basic/clusters/+ new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/qa/suites/rados/basic/clusters/+ diff --git a/qa/suites/rados/basic/clusters/.qa b/qa/suites/rados/basic/clusters/.qa new file mode 120000 index 000000000..a602a0353 --- /dev/null +++ b/qa/suites/rados/basic/clusters/.qa @@ -0,0 +1 @@ +../.qa/
\ No newline at end of file diff --git a/qa/suites/rados/basic/clusters/fixed-2.yaml b/qa/suites/rados/basic/clusters/fixed-2.yaml new file mode 120000 index 000000000..230ff0fda --- /dev/null +++ b/qa/suites/rados/basic/clusters/fixed-2.yaml @@ -0,0 +1 @@ +.qa/clusters/fixed-2.yaml
\ No newline at end of file diff --git a/qa/suites/rados/basic/clusters/openstack.yaml b/qa/suites/rados/basic/clusters/openstack.yaml new file mode 100644 index 000000000..e559d9126 --- /dev/null +++ b/qa/suites/rados/basic/clusters/openstack.yaml @@ -0,0 +1,4 @@ +openstack: + - volumes: # attached to each instance + count: 4 + size: 10 # GB diff --git a/qa/suites/rados/basic/mon_election b/qa/suites/rados/basic/mon_election new file mode 120000 index 000000000..3f331e621 --- /dev/null +++ b/qa/suites/rados/basic/mon_election @@ -0,0 +1 @@ +.qa/mon_election
\ No newline at end of file diff --git a/qa/suites/rados/basic/msgr b/qa/suites/rados/basic/msgr new file mode 120000 index 000000000..57bee80db --- /dev/null +++ b/qa/suites/rados/basic/msgr @@ -0,0 +1 @@ +.qa/msgr
\ No newline at end of file diff --git a/qa/suites/rados/basic/msgr-failures/.qa b/qa/suites/rados/basic/msgr-failures/.qa new file mode 120000 index 000000000..a602a0353 --- /dev/null +++ b/qa/suites/rados/basic/msgr-failures/.qa @@ -0,0 +1 @@ +../.qa/
\ No newline at end of file diff --git a/qa/suites/rados/basic/msgr-failures/few.yaml b/qa/suites/rados/basic/msgr-failures/few.yaml new file mode 100644 index 000000000..519288992 --- /dev/null +++ b/qa/suites/rados/basic/msgr-failures/few.yaml @@ -0,0 +1,8 @@ +overrides: + ceph: + conf: + global: + ms inject socket failures: 5000 + mon client directed command retry: 5 + log-ignorelist: + - \(OSD_SLOW_PING_TIME diff --git a/qa/suites/rados/basic/msgr-failures/many.yaml b/qa/suites/rados/basic/msgr-failures/many.yaml new file mode 100644 index 000000000..075d959a7 --- /dev/null +++ b/qa/suites/rados/basic/msgr-failures/many.yaml @@ -0,0 +1,8 @@ +overrides: + ceph: + conf: + global: + ms inject socket failures: 1500 + mon client directed command retry: 5 + log-ignorelist: + - \(OSD_SLOW_PING_TIME diff --git a/qa/suites/rados/basic/objectstore b/qa/suites/rados/basic/objectstore new file mode 120000 index 000000000..848c65f9e --- /dev/null +++ b/qa/suites/rados/basic/objectstore @@ -0,0 +1 @@ +.qa/objectstore_debug
\ No newline at end of file diff --git a/qa/suites/rados/basic/rados.yaml b/qa/suites/rados/basic/rados.yaml new file mode 120000 index 000000000..d256979c0 --- /dev/null +++ b/qa/suites/rados/basic/rados.yaml @@ -0,0 +1 @@ +.qa/config/rados.yaml
\ No newline at end of file diff --git a/qa/suites/rados/basic/supported-random-distro$ b/qa/suites/rados/basic/supported-random-distro$ new file mode 120000 index 000000000..0862b4457 --- /dev/null +++ b/qa/suites/rados/basic/supported-random-distro$ @@ -0,0 +1 @@ +.qa/distros/supported-random-distro$
\ No newline at end of file diff --git a/qa/suites/rados/basic/tasks/.qa b/qa/suites/rados/basic/tasks/.qa new file mode 120000 index 000000000..a602a0353 --- /dev/null +++ b/qa/suites/rados/basic/tasks/.qa @@ -0,0 +1 @@ +../.qa/
\ No newline at end of file diff --git a/qa/suites/rados/basic/tasks/libcephsqlite.yaml b/qa/suites/rados/basic/tasks/libcephsqlite.yaml new file mode 100644 index 000000000..12498fb15 --- /dev/null +++ b/qa/suites/rados/basic/tasks/libcephsqlite.yaml @@ -0,0 +1,24 @@ +overrides: + ceph: + conf: + client: + debug ms: 1 + debug client: 20 + debug cephsqlite: 20 + log-ignorelist: + - POOL_APP_NOT_ENABLED + - do not have an application enabled +tasks: +- exec: + client.0: + - ceph osd pool create cephsqlite + - ceph auth get-or-create client.libcephsqlite mon 'profile simple-rados-client-with-blocklist' osd 'allow rwx pool=cephsqlite' >> /etc/ceph/ceph.keyring +- exec: + client.0: + - ceph_test_libcephsqlite --id libcephsqlite --no-log-to-stderr +- workunit: + clients: + client.0: + - rados/test_libcephsqlite.sh cephsqlite + env: + CEPH_ARGS: --id libcephsqlite --no-log-to-stderr diff --git a/qa/suites/rados/basic/tasks/rados_api_tests.yaml b/qa/suites/rados/basic/tasks/rados_api_tests.yaml new file mode 100644 index 000000000..f765663a3 --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_api_tests.yaml @@ -0,0 +1,28 @@ +overrides: + ceph: + log-ignorelist: + - reached quota + - but it is still running + - overall HEALTH_ + - \(POOL_FULL\) + - \(SMALLER_PGP_NUM\) + - \(CACHE_POOL_NO_HIT_SET\) + - \(CACHE_POOL_NEAR_FULL\) + - \(POOL_APP_NOT_ENABLED\) + - \(PG_AVAILABILITY\) + - \(PG_DEGRADED\) + conf: + client: + debug ms: 1 + mon: + mon warn on pool no app: false + osd: + osd class load list: "*" + osd class default list: "*" +tasks: +- workunit: + clients: + client.0: + - rados/test.sh + - rados/test_pool_quota.sh + diff --git a/qa/suites/rados/basic/tasks/rados_cls_all.yaml b/qa/suites/rados/basic/tasks/rados_cls_all.yaml new file mode 100644 index 000000000..8896ccb44 --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_cls_all.yaml @@ -0,0 +1,14 @@ +overrides: + ceph: + log-ignorelist: + - \(PG_AVAILABILITY\) + - \(POOL_APP_NOT_ENABLED\) + conf: + osd: + osd_class_load_list: "*" + osd_class_default_list: "*" +tasks: +- workunit: + clients: + client.0: + - cls diff --git a/qa/suites/rados/basic/tasks/rados_python.yaml b/qa/suites/rados/basic/tasks/rados_python.yaml new file mode 100644 index 000000000..18e150c6c --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_python.yaml @@ -0,0 +1,23 @@ +overrides: + ceph: + log-ignorelist: + - but it is still running + - overall HEALTH_ + - \(OSDMAP_FLAGS\) + - \(PG_ + - \(OSD_ + - \(OBJECT_ + - \(POOL_APP_NOT_ENABLED\) + install: + ceph: + extra_system_packages: + rpm: + - python3-pytest + deb: + - python3-pytest +tasks: +- workunit: + timeout: 1h + clients: + client.0: + - rados/test_python.sh diff --git a/qa/suites/rados/basic/tasks/rados_stress_watch.yaml b/qa/suites/rados/basic/tasks/rados_stress_watch.yaml new file mode 100644 index 000000000..9ff0a4150 --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_stress_watch.yaml @@ -0,0 +1,12 @@ +overrides: + ceph: + log-ignorelist: + - overall HEALTH_ + - \(CACHE_POOL_NO_HIT_SET\) + - \(TOO_FEW_PGS\) + - \(POOL_APP_NOT_ENABLED\) +tasks: +- workunit: + clients: + client.0: + - rados/stress_watch.sh diff --git a/qa/suites/rados/basic/tasks/rados_striper.yaml b/qa/suites/rados/basic/tasks/rados_striper.yaml new file mode 100644 index 000000000..cafd824b0 --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_striper.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + log-ignorelist: + - \(POOL_APP_NOT_ENABLED\) +tasks: +- exec: + client.0: + - ceph_test_rados_striper_api_io + - ceph_test_rados_striper_api_aio + - ceph_test_rados_striper_api_striping + diff --git a/qa/suites/rados/basic/tasks/rados_workunit_loadgen_big.yaml b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_big.yaml new file mode 100644 index 000000000..53effb42d --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_big.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + log-ignorelist: + - but it is still running + - overall HEALTH_ + - \(POOL_APP_NOT_ENABLED\) +tasks: +- workunit: + clients: + all: + - rados/load-gen-big.sh diff --git a/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mix.yaml b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mix.yaml new file mode 100644 index 000000000..847aedb21 --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mix.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + log-ignorelist: + - but it is still running + - overall HEALTH_ + - \(POOL_APP_NOT_ENABLED\) +tasks: +- workunit: + clients: + all: + - rados/load-gen-mix.sh diff --git a/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mostlyread.yaml b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mostlyread.yaml new file mode 100644 index 000000000..b25392ffa --- /dev/null +++ b/qa/suites/rados/basic/tasks/rados_workunit_loadgen_mostlyread.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + log-ignorelist: + - but it is still running + - overall HEALTH_ + - \(POOL_APP_NOT_ENABLED\) +tasks: +- workunit: + clients: + all: + - rados/load-gen-mostlyread.sh diff --git a/qa/suites/rados/basic/tasks/readwrite.yaml b/qa/suites/rados/basic/tasks/readwrite.yaml new file mode 100644 index 000000000..fc13e67f0 --- /dev/null +++ b/qa/suites/rados/basic/tasks/readwrite.yaml @@ -0,0 +1,19 @@ +overrides: + ceph: + crush_tunables: optimal + conf: + mon: + mon osd initial require min compat client: luminous + osd: + osd_discard_disconnected_ops: false + log-ignorelist: + - \(POOL_APP_NOT_ENABLED\) +tasks: +- rados: + clients: [client.0] + ops: 4000 + objects: 500 + op_weights: + read: 45 + write: 45 + delete: 10 diff --git a/qa/suites/rados/basic/tasks/repair_test.yaml b/qa/suites/rados/basic/tasks/repair_test.yaml new file mode 100644 index 000000000..383acc956 --- /dev/null +++ b/qa/suites/rados/basic/tasks/repair_test.yaml @@ -0,0 +1,32 @@ +overrides: + ceph: + wait-for-scrub: false + log-ignorelist: + - candidate had a stat error + - candidate had a read error + - deep-scrub 0 missing, 1 inconsistent objects + - deep-scrub 0 missing, 4 inconsistent objects + - deep-scrub [0-9]+ errors + - '!= omap_digest' + - '!= data_digest' + - repair 0 missing, 1 inconsistent objects + - repair 0 missing, 4 inconsistent objects + - repair [0-9]+ errors, [0-9]+ fixed + - scrub 0 missing, 1 inconsistent objects + - scrub [0-9]+ errors + - 'size 1 != size' + - attr name mismatch + - Regular scrub request, deep-scrub details will be lost + - candidate size [0-9]+ info size [0-9]+ mismatch + - overall HEALTH_ + - \(OSDMAP_FLAGS\) + - \(OSD_ + - \(PG_ + - \(POOL_APP_NOT_ENABLED\) + conf: + osd: + filestore debug inject read err: true + bluestore debug inject read err: true +tasks: +- repair_test: + diff --git a/qa/suites/rados/basic/tasks/scrub_test.yaml b/qa/suites/rados/basic/tasks/scrub_test.yaml new file mode 100644 index 000000000..424657343 --- /dev/null +++ b/qa/suites/rados/basic/tasks/scrub_test.yaml @@ -0,0 +1,31 @@ +overrides: + ceph: + wait-for-scrub: false + log-ignorelist: + - '!= data_digest' + - '!= omap_digest' + - '!= size' + - 'deep-scrub 0 missing, 1 inconsistent objects' + - 'deep-scrub [0-9]+ errors' + - 'repair 0 missing, 1 inconsistent objects' + - 'repair [0-9]+ errors, [0-9]+ fixed' + - 'shard [0-9]+ .* : missing' + - 'deep-scrub 1 missing, 1 inconsistent objects' + - 'does not match object info size' + - 'attr name mistmatch' + - 'deep-scrub 1 missing, 0 inconsistent objects' + - 'failed to pick suitable auth object' + - 'candidate size [0-9]+ info size [0-9]+ mismatch' + - overall HEALTH_ + - \(OSDMAP_FLAGS\) + - \(OSD_ + - \(PG_ + - \(OSD_SCRUB_ERRORS\) + - \(TOO_FEW_PGS\) + - \(POOL_APP_NOT_ENABLED\) + conf: + osd: + osd deep scrub update digest min age: 0 + osd skip data digest: false +tasks: +- scrub_test: |