From: Ramana Raja Date: Mon, 23 Nov 2020 08:26:12 +0000 (+0530) Subject: qa/suites/fs: enable thrashing in multifs environment X-Git-Tag: v16.1.0~404^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a38b836589ec4833c607cf75d6884f0c53aea156;p=ceph.git qa/suites/fs: enable thrashing in multifs environment Fixes: https://tracker.ceph.com/issues/15134 Co-authored-by: Patrick Donnelly Signed-off-by: Ramana Raja --- diff --git a/qa/suites/fs/thrash/% b/qa/suites/fs/thrash/% deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/qa/suites/fs/thrash/begin.yaml b/qa/suites/fs/thrash/begin.yaml deleted file mode 120000 index 311d404f7c27..000000000000 --- a/qa/suites/fs/thrash/begin.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/begin.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/clusters/.qa b/qa/suites/fs/thrash/clusters/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/clusters/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/clusters/1-mds-1-client-coloc.yaml b/qa/suites/fs/thrash/clusters/1-mds-1-client-coloc.yaml deleted file mode 120000 index d15ecfda012c..000000000000 --- a/qa/suites/fs/thrash/clusters/1-mds-1-client-coloc.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/clusters/1-mds-1-client-coloc.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/conf b/qa/suites/fs/thrash/conf deleted file mode 120000 index 16e8cc44b7d7..000000000000 --- a/qa/suites/fs/thrash/conf +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/conf \ No newline at end of file diff --git a/qa/suites/fs/thrash/distro b/qa/suites/fs/thrash/distro deleted file mode 120000 index 0862b4457b37..000000000000 --- a/qa/suites/fs/thrash/distro +++ /dev/null @@ -1 +0,0 @@ -.qa/distros/supported-random-distro$ \ No newline at end of file diff --git a/qa/suites/fs/thrash/mount/.qa b/qa/suites/fs/thrash/mount/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/mount/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/mount/fuse.yaml b/qa/suites/fs/thrash/mount/fuse.yaml deleted file mode 120000 index 0e55da9fb7ab..000000000000 --- a/qa/suites/fs/thrash/mount/fuse.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/mount/fuse.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/msgr-failures/.qa b/qa/suites/fs/thrash/msgr-failures/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/msgr-failures/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/msgr-failures/none.yaml b/qa/suites/fs/thrash/msgr-failures/none.yaml deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/qa/suites/fs/thrash/msgr-failures/osd-mds-delay.yaml b/qa/suites/fs/thrash/msgr-failures/osd-mds-delay.yaml deleted file mode 100644 index b4ca87f51271..000000000000 --- a/qa/suites/fs/thrash/msgr-failures/osd-mds-delay.yaml +++ /dev/null @@ -1,11 +0,0 @@ -overrides: - ceph: - conf: - global: - ms inject socket failures: 2500 - ms inject delay type: osd mds - ms inject delay probability: .005 - ms inject delay max: 1 - mon client directed command retry: 5 - log-ignorelist: - - \(OSD_SLOW_PING_TIME diff --git a/qa/suites/fs/thrash/multifs/% b/qa/suites/fs/thrash/multifs/% new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/multifs/.qa b/qa/suites/fs/thrash/multifs/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/begin.yaml b/qa/suites/fs/thrash/multifs/begin.yaml new file mode 120000 index 000000000000..311d404f7c27 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/begin.yaml @@ -0,0 +1 @@ +.qa/cephfs/begin.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/clusters/.qa b/qa/suites/fs/thrash/multifs/clusters/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/clusters/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/clusters/1a3s-mds-2c-client.yaml b/qa/suites/fs/thrash/multifs/clusters/1a3s-mds-2c-client.yaml new file mode 120000 index 000000000000..c190ea92ff5b --- /dev/null +++ b/qa/suites/fs/thrash/multifs/clusters/1a3s-mds-2c-client.yaml @@ -0,0 +1 @@ +.qa/cephfs/clusters/1a3s-mds-2c-client.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/conf b/qa/suites/fs/thrash/multifs/conf new file mode 120000 index 000000000000..16e8cc44b7d7 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/conf @@ -0,0 +1 @@ +.qa/cephfs/conf \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/distro b/qa/suites/fs/thrash/multifs/distro new file mode 120000 index 000000000000..0862b4457b37 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/distro @@ -0,0 +1 @@ +.qa/distros/supported-random-distro$ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/mount b/qa/suites/fs/thrash/multifs/mount new file mode 120000 index 000000000000..e3600f453f2f --- /dev/null +++ b/qa/suites/fs/thrash/multifs/mount @@ -0,0 +1 @@ +.qa/cephfs/mount/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/msgr-failures/.qa b/qa/suites/fs/thrash/multifs/msgr-failures/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/msgr-failures/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/msgr-failures/none.yaml b/qa/suites/fs/thrash/multifs/msgr-failures/none.yaml new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/multifs/msgr-failures/osd-mds-delay.yaml b/qa/suites/fs/thrash/multifs/msgr-failures/osd-mds-delay.yaml new file mode 100644 index 000000000000..b4ca87f51271 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/msgr-failures/osd-mds-delay.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + conf: + global: + ms inject socket failures: 2500 + ms inject delay type: osd mds + ms inject delay probability: .005 + ms inject delay max: 1 + mon client directed command retry: 5 + log-ignorelist: + - \(OSD_SLOW_PING_TIME diff --git a/qa/suites/fs/thrash/multifs/objectstore/.qa b/qa/suites/fs/thrash/multifs/objectstore/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/objectstore/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/objectstore/bluestore-bitmap.yaml b/qa/suites/fs/thrash/multifs/objectstore/bluestore-bitmap.yaml new file mode 120000 index 000000000000..a59cf5175069 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/objectstore/bluestore-bitmap.yaml @@ -0,0 +1 @@ +.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/+ b/qa/suites/fs/thrash/multifs/overrides/+ new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/multifs/overrides/.qa b/qa/suites/fs/thrash/multifs/overrides/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/frag_enable.yaml b/qa/suites/fs/thrash/multifs/overrides/frag_enable.yaml new file mode 120000 index 000000000000..34a39a368cf1 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/frag_enable.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/frag_enable.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/multifs.yaml b/qa/suites/fs/thrash/multifs/overrides/multifs.yaml new file mode 100644 index 000000000000..faf7838c2a69 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/multifs.yaml @@ -0,0 +1,16 @@ +overrides: + ceph: + cephfs: + fs: + - name: a + - name: b + ceph-fuse: + client.0: + cephfs_name: a + client.1: + cephfs_name: b + kclient: + client.0: + cephfs_name: a + client.1: + cephfs_name: b diff --git a/qa/suites/fs/thrash/multifs/overrides/session_timeout.yaml b/qa/suites/fs/thrash/multifs/overrides/session_timeout.yaml new file mode 120000 index 000000000000..fce0318c5893 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/session_timeout.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/session_timeout.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/thrashosds-health.yaml b/qa/suites/fs/thrash/multifs/overrides/thrashosds-health.yaml new file mode 120000 index 000000000000..9124eb1aa29a --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/thrashosds-health.yaml @@ -0,0 +1 @@ +.qa/tasks/thrashosds-health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/whitelist_health.yaml b/qa/suites/fs/thrash/multifs/overrides/whitelist_health.yaml new file mode 120000 index 000000000000..74f39a49b27e --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/whitelist_health.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/whitelist_health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/overrides/whitelist_wrongly_marked_down.yaml b/qa/suites/fs/thrash/multifs/overrides/whitelist_wrongly_marked_down.yaml new file mode 120000 index 000000000000..b4528c0f8c09 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/overrides/whitelist_wrongly_marked_down.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/whitelist_wrongly_marked_down.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/% b/qa/suites/fs/thrash/multifs/tasks/% new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/multifs/tasks/.qa b/qa/suites/fs/thrash/multifs/tasks/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/1-thrash/.qa b/qa/suites/fs/thrash/multifs/tasks/1-thrash/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/1-thrash/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/1-thrash/mds.yaml b/qa/suites/fs/thrash/multifs/tasks/1-thrash/mds.yaml new file mode 100644 index 000000000000..33748cea5cdc --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/1-thrash/mds.yaml @@ -0,0 +1,7 @@ +tasks: +- mds_thrash: + +overrides: + ceph: + log-ignorelist: + - Replacing daemon mds diff --git a/qa/suites/fs/thrash/multifs/tasks/1-thrash/mon.yaml b/qa/suites/fs/thrash/multifs/tasks/1-thrash/mon.yaml new file mode 100644 index 000000000000..fbbe16151ce9 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/1-thrash/mon.yaml @@ -0,0 +1,10 @@ +overrides: + ceph: + log-ignorelist: + - overall HEALTH_ + - \(MON_DOWN\) +tasks: +- mon_thrash: + check_mds_failover: True + revive_delay: 20 + thrash_delay: 10 diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/.qa b/qa/suites/fs/thrash/multifs/tasks/2-workunit/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_snaptests.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_snaptests.yaml new file mode 100644 index 000000000000..790c93c2b170 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_snaptests.yaml @@ -0,0 +1,5 @@ +tasks: +- workunit: + clients: + all: + - fs/snaps diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml new file mode 120000 index 000000000000..c2e859fffbc8 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml @@ -0,0 +1 @@ +.qa/cephfs/tasks/cfuse_workunit_suites_fsstress.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml new file mode 100644 index 000000000000..f7784383be2c --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + conf: + client: + fuse set user groups: true +tasks: +- workunit: + timeout: 6h + clients: + all: + - suites/pjd.sh diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml new file mode 120000 index 000000000000..a1df032772f1 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml @@ -0,0 +1 @@ +.qa/cephfs/tasks/cfuse_workunit_trivial_sync.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/ffsb.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/ffsb.yaml new file mode 100644 index 000000000000..7e4f711a237d --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/ffsb.yaml @@ -0,0 +1,13 @@ +overrides: + ceph: + log-ignorelist: + - SLOW_OPS + - slow request + conf: + osd: + filestore flush min: 0 +tasks: +- workunit: + clients: + all: + - suites/ffsb.sh diff --git a/qa/suites/fs/thrash/multifs/tasks/2-workunit/iozone.yaml b/qa/suites/fs/thrash/multifs/tasks/2-workunit/iozone.yaml new file mode 100644 index 000000000000..9270f3c51e22 --- /dev/null +++ b/qa/suites/fs/thrash/multifs/tasks/2-workunit/iozone.yaml @@ -0,0 +1,5 @@ +tasks: +- workunit: + clients: + all: + - suites/iozone.sh diff --git a/qa/suites/fs/thrash/objectstore-ec b/qa/suites/fs/thrash/objectstore-ec deleted file mode 120000 index affe294932e2..000000000000 --- a/qa/suites/fs/thrash/objectstore-ec +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/objectstore-ec \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/+ b/qa/suites/fs/thrash/overrides/+ deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/qa/suites/fs/thrash/overrides/.qa b/qa/suites/fs/thrash/overrides/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/overrides/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/frag_enable.yaml b/qa/suites/fs/thrash/overrides/frag_enable.yaml deleted file mode 120000 index 34a39a368cf1..000000000000 --- a/qa/suites/fs/thrash/overrides/frag_enable.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/overrides/frag_enable.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/session_timeout.yaml b/qa/suites/fs/thrash/overrides/session_timeout.yaml deleted file mode 120000 index fce0318c5893..000000000000 --- a/qa/suites/fs/thrash/overrides/session_timeout.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/overrides/session_timeout.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/thrashosds-health.yaml b/qa/suites/fs/thrash/overrides/thrashosds-health.yaml deleted file mode 120000 index 9124eb1aa29a..000000000000 --- a/qa/suites/fs/thrash/overrides/thrashosds-health.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/tasks/thrashosds-health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/whitelist_health.yaml b/qa/suites/fs/thrash/overrides/whitelist_health.yaml deleted file mode 120000 index 74f39a49b27e..000000000000 --- a/qa/suites/fs/thrash/overrides/whitelist_health.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/overrides/whitelist_health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/overrides/whitelist_wrongly_marked_down.yaml b/qa/suites/fs/thrash/overrides/whitelist_wrongly_marked_down.yaml deleted file mode 120000 index b4528c0f8c09..000000000000 --- a/qa/suites/fs/thrash/overrides/whitelist_wrongly_marked_down.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/overrides/whitelist_wrongly_marked_down.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/% b/qa/suites/fs/thrash/tasks/% deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/qa/suites/fs/thrash/tasks/.qa b/qa/suites/fs/thrash/tasks/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/tasks/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/1-thrash/.qa b/qa/suites/fs/thrash/tasks/1-thrash/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/tasks/1-thrash/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/1-thrash/mds.yaml b/qa/suites/fs/thrash/tasks/1-thrash/mds.yaml deleted file mode 100644 index 33748cea5cdc..000000000000 --- a/qa/suites/fs/thrash/tasks/1-thrash/mds.yaml +++ /dev/null @@ -1,7 +0,0 @@ -tasks: -- mds_thrash: - -overrides: - ceph: - log-ignorelist: - - Replacing daemon mds diff --git a/qa/suites/fs/thrash/tasks/1-thrash/mon.yaml b/qa/suites/fs/thrash/tasks/1-thrash/mon.yaml deleted file mode 100644 index fbbe16151ce9..000000000000 --- a/qa/suites/fs/thrash/tasks/1-thrash/mon.yaml +++ /dev/null @@ -1,10 +0,0 @@ -overrides: - ceph: - log-ignorelist: - - overall HEALTH_ - - \(MON_DOWN\) -tasks: -- mon_thrash: - check_mds_failover: True - revive_delay: 20 - thrash_delay: 10 diff --git a/qa/suites/fs/thrash/tasks/1-thrash/osd.yaml b/qa/suites/fs/thrash/tasks/1-thrash/osd.yaml deleted file mode 100644 index d69fb1402f08..000000000000 --- a/qa/suites/fs/thrash/tasks/1-thrash/osd.yaml +++ /dev/null @@ -1,7 +0,0 @@ -overrides: - ceph: - log-ignorelist: - - but it is still running - - objects unfound and apparently lost -tasks: -- thrashosds: diff --git a/qa/suites/fs/thrash/tasks/2-workunit/.qa b/qa/suites/fs/thrash/tasks/2-workunit/.qa deleted file mode 120000 index a602a0353e75..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/.qa +++ /dev/null @@ -1 +0,0 @@ -../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_snaptests.yaml b/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_snaptests.yaml deleted file mode 100644 index 790c93c2b170..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_snaptests.yaml +++ /dev/null @@ -1,5 +0,0 @@ -tasks: -- workunit: - clients: - all: - - fs/snaps diff --git a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml b/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml deleted file mode 120000 index c2e859fffbc8..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/tasks/cfuse_workunit_suites_fsstress.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml b/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml deleted file mode 100644 index f7784383be2c..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml +++ /dev/null @@ -1,11 +0,0 @@ -overrides: - ceph: - conf: - client: - fuse set user groups: true -tasks: -- workunit: - timeout: 6h - clients: - all: - - suites/pjd.sh diff --git a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml b/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml deleted file mode 120000 index a1df032772f1..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/cephfs/tasks/cfuse_workunit_trivial_sync.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/tasks/2-workunit/ffsb.yaml b/qa/suites/fs/thrash/tasks/2-workunit/ffsb.yaml deleted file mode 100644 index 7e4f711a237d..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/ffsb.yaml +++ /dev/null @@ -1,13 +0,0 @@ -overrides: - ceph: - log-ignorelist: - - SLOW_OPS - - slow request - conf: - osd: - filestore flush min: 0 -tasks: -- workunit: - clients: - all: - - suites/ffsb.sh diff --git a/qa/suites/fs/thrash/tasks/2-workunit/iozone.yaml b/qa/suites/fs/thrash/tasks/2-workunit/iozone.yaml deleted file mode 100644 index 9270f3c51e22..000000000000 --- a/qa/suites/fs/thrash/tasks/2-workunit/iozone.yaml +++ /dev/null @@ -1,5 +0,0 @@ -tasks: -- workunit: - clients: - all: - - suites/iozone.sh diff --git a/qa/suites/fs/thrash/workloads/% b/qa/suites/fs/thrash/workloads/% new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/workloads/.qa b/qa/suites/fs/thrash/workloads/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/begin.yaml b/qa/suites/fs/thrash/workloads/begin.yaml new file mode 120000 index 000000000000..311d404f7c27 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/begin.yaml @@ -0,0 +1 @@ +.qa/cephfs/begin.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/clusters/.qa b/qa/suites/fs/thrash/workloads/clusters/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/clusters/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/clusters/1-mds-1-client-coloc.yaml b/qa/suites/fs/thrash/workloads/clusters/1-mds-1-client-coloc.yaml new file mode 120000 index 000000000000..d15ecfda012c --- /dev/null +++ b/qa/suites/fs/thrash/workloads/clusters/1-mds-1-client-coloc.yaml @@ -0,0 +1 @@ +.qa/cephfs/clusters/1-mds-1-client-coloc.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/conf b/qa/suites/fs/thrash/workloads/conf new file mode 120000 index 000000000000..16e8cc44b7d7 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/conf @@ -0,0 +1 @@ +.qa/cephfs/conf \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/distro b/qa/suites/fs/thrash/workloads/distro new file mode 120000 index 000000000000..0862b4457b37 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/distro @@ -0,0 +1 @@ +.qa/distros/supported-random-distro$ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/mount b/qa/suites/fs/thrash/workloads/mount new file mode 120000 index 000000000000..e3600f453f2f --- /dev/null +++ b/qa/suites/fs/thrash/workloads/mount @@ -0,0 +1 @@ +.qa/cephfs/mount/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/msgr-failures/.qa b/qa/suites/fs/thrash/workloads/msgr-failures/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/msgr-failures/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/msgr-failures/none.yaml b/qa/suites/fs/thrash/workloads/msgr-failures/none.yaml new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/workloads/msgr-failures/osd-mds-delay.yaml b/qa/suites/fs/thrash/workloads/msgr-failures/osd-mds-delay.yaml new file mode 100644 index 000000000000..b4ca87f51271 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/msgr-failures/osd-mds-delay.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + conf: + global: + ms inject socket failures: 2500 + ms inject delay type: osd mds + ms inject delay probability: .005 + ms inject delay max: 1 + mon client directed command retry: 5 + log-ignorelist: + - \(OSD_SLOW_PING_TIME diff --git a/qa/suites/fs/thrash/workloads/objectstore-ec b/qa/suites/fs/thrash/workloads/objectstore-ec new file mode 120000 index 000000000000..affe294932e2 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/objectstore-ec @@ -0,0 +1 @@ +.qa/cephfs/objectstore-ec \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/+ b/qa/suites/fs/thrash/workloads/overrides/+ new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/workloads/overrides/.qa b/qa/suites/fs/thrash/workloads/overrides/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/frag_enable.yaml b/qa/suites/fs/thrash/workloads/overrides/frag_enable.yaml new file mode 120000 index 000000000000..34a39a368cf1 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/frag_enable.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/frag_enable.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/session_timeout.yaml b/qa/suites/fs/thrash/workloads/overrides/session_timeout.yaml new file mode 120000 index 000000000000..fce0318c5893 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/session_timeout.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/session_timeout.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/thrashosds-health.yaml b/qa/suites/fs/thrash/workloads/overrides/thrashosds-health.yaml new file mode 120000 index 000000000000..9124eb1aa29a --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/thrashosds-health.yaml @@ -0,0 +1 @@ +.qa/tasks/thrashosds-health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/whitelist_health.yaml b/qa/suites/fs/thrash/workloads/overrides/whitelist_health.yaml new file mode 120000 index 000000000000..74f39a49b27e --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/whitelist_health.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/whitelist_health.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/overrides/whitelist_wrongly_marked_down.yaml b/qa/suites/fs/thrash/workloads/overrides/whitelist_wrongly_marked_down.yaml new file mode 120000 index 000000000000..b4528c0f8c09 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/overrides/whitelist_wrongly_marked_down.yaml @@ -0,0 +1 @@ +.qa/cephfs/overrides/whitelist_wrongly_marked_down.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/% b/qa/suites/fs/thrash/workloads/tasks/% new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/suites/fs/thrash/workloads/tasks/.qa b/qa/suites/fs/thrash/workloads/tasks/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/1-thrash/.qa b/qa/suites/fs/thrash/workloads/tasks/1-thrash/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/1-thrash/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/1-thrash/mds.yaml b/qa/suites/fs/thrash/workloads/tasks/1-thrash/mds.yaml new file mode 100644 index 000000000000..33748cea5cdc --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/1-thrash/mds.yaml @@ -0,0 +1,7 @@ +tasks: +- mds_thrash: + +overrides: + ceph: + log-ignorelist: + - Replacing daemon mds diff --git a/qa/suites/fs/thrash/workloads/tasks/1-thrash/mon.yaml b/qa/suites/fs/thrash/workloads/tasks/1-thrash/mon.yaml new file mode 100644 index 000000000000..fbbe16151ce9 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/1-thrash/mon.yaml @@ -0,0 +1,10 @@ +overrides: + ceph: + log-ignorelist: + - overall HEALTH_ + - \(MON_DOWN\) +tasks: +- mon_thrash: + check_mds_failover: True + revive_delay: 20 + thrash_delay: 10 diff --git a/qa/suites/fs/thrash/workloads/tasks/1-thrash/osd.yaml b/qa/suites/fs/thrash/workloads/tasks/1-thrash/osd.yaml new file mode 100644 index 000000000000..d69fb1402f08 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/1-thrash/osd.yaml @@ -0,0 +1,7 @@ +overrides: + ceph: + log-ignorelist: + - but it is still running + - objects unfound and apparently lost +tasks: +- thrashosds: diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/.qa b/qa/suites/fs/thrash/workloads/tasks/2-workunit/.qa new file mode 120000 index 000000000000..a602a0353e75 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/.qa @@ -0,0 +1 @@ +../.qa/ \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_snaptests.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_snaptests.yaml new file mode 100644 index 000000000000..790c93c2b170 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_snaptests.yaml @@ -0,0 +1,5 @@ +tasks: +- workunit: + clients: + all: + - fs/snaps diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml new file mode 120000 index 000000000000..c2e859fffbc8 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_fsstress.yaml @@ -0,0 +1 @@ +.qa/cephfs/tasks/cfuse_workunit_suites_fsstress.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml new file mode 100644 index 000000000000..f7784383be2c --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_suites_pjd.yaml @@ -0,0 +1,11 @@ +overrides: + ceph: + conf: + client: + fuse set user groups: true +tasks: +- workunit: + timeout: 6h + clients: + all: + - suites/pjd.sh diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml new file mode 120000 index 000000000000..a1df032772f1 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/cfuse_workunit_trivial_sync.yaml @@ -0,0 +1 @@ +.qa/cephfs/tasks/cfuse_workunit_trivial_sync.yaml \ No newline at end of file diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/ffsb.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/ffsb.yaml new file mode 100644 index 000000000000..7e4f711a237d --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/ffsb.yaml @@ -0,0 +1,13 @@ +overrides: + ceph: + log-ignorelist: + - SLOW_OPS + - slow request + conf: + osd: + filestore flush min: 0 +tasks: +- workunit: + clients: + all: + - suites/ffsb.sh diff --git a/qa/suites/fs/thrash/workloads/tasks/2-workunit/iozone.yaml b/qa/suites/fs/thrash/workloads/tasks/2-workunit/iozone.yaml new file mode 100644 index 000000000000..9270f3c51e22 --- /dev/null +++ b/qa/suites/fs/thrash/workloads/tasks/2-workunit/iozone.yaml @@ -0,0 +1,5 @@ +tasks: +- workunit: + clients: + all: + - suites/iozone.sh diff --git a/qa/tasks/ceph_fuse.py b/qa/tasks/ceph_fuse.py index 5c102d4bb681..67432ead41d1 100644 --- a/qa/tasks/ceph_fuse.py +++ b/qa/tasks/ceph_fuse.py @@ -11,27 +11,6 @@ from tasks.cephfs.fuse_mount import FuseMount log = logging.getLogger(__name__) -def get_client_configs(ctx, config): - """ - Get a map of the configuration for each FUSE client in the configuration by - combining the configuration of the current task with any global overrides. - - :param ctx: Context instance - :param config: configuration for this task - :return: dict of client name to config or to None - """ - if config is None: - config = dict(('client.{id}'.format(id=id_), None) - for id_ in teuthology.all_roles_of_type(ctx.cluster, 'client')) - elif isinstance(config, list): - config = dict((name, None) for name in config) - - overrides = ctx.config.get('overrides', {}) - teuthology.deep_merge(config, overrides.get('ceph-fuse', {})) - - return config - - @contextlib.contextmanager def task(ctx, config): """ @@ -98,14 +77,21 @@ def task(ctx, config): """ log.info('Running ceph_fuse task...') + if config is None: + ids = teuthology.all_roles_of_type(ctx.cluster, 'client') + client_roles = [f'client.{id_}' for id_ in ids] + config = dict([r, dict()] for r in client_roles) + elif isinstance(config, list): + client_roles = config + config = dict([r, dict()] for r in client_roles) + elif isinstance(config, dict): + client_roles = filter(lambda x: 'client.' in x, config.keys()) + else: + raise ValueError(f"Invalid config object: {config} ({config.__class__})") + log.info(f"config is {config}") + + clients = list(teuthology.get_clients(ctx=ctx, roles=client_roles)) testdir = teuthology.get_testdir(ctx) - log.info("config is {}".format(str(config))) - config = get_client_configs(ctx, config) - log.info("new config is {}".format(str(config))) - - # List clients we will configure mounts for, default is all clients - clients = list(teuthology.get_clients(ctx=ctx, roles=filter(lambda x: 'client.' in x, config.keys()))) - all_mounts = getattr(ctx, 'mounts', {}) mounted_by_me = {} skipped = {} @@ -114,12 +100,23 @@ def task(ctx, config): brxnet = config.get("brxnet", None) # Construct any new FuseMount instances + overrides = ctx.config.get('overrides', {}).get('ceph-fuse', {}) + top_overrides = dict(filter(lambda x: 'client.' not in x[0], overrides.items())) for id_, remote in clients: - remotes.add(remote) - client_config = config.get("client.%s" % id_) + entity = f"client.{id_}" + client_config = config.get(entity) if client_config is None: client_config = {} + # top level overrides + for k, v in top_overrides.items(): + if v is not None: + client_config[k] = v + # mount specific overrides + client_config_overrides = overrides.get(entity) + teuthology.deep_merge(client_config, client_config_overrides) + log.info(f"{entity} config is {client_config}") + remotes.add(remote) auth_id = client_config.get("auth_id", id_) cephfs_name = client_config.get("cephfs_name") diff --git a/qa/tasks/kclient.py b/qa/tasks/kclient.py index f3365aec50b3..214a951e2a37 100644 --- a/qa/tasks/kclient.py +++ b/qa/tasks/kclient.py @@ -53,20 +53,19 @@ def task(ctx, config): :param config: Configuration """ log.info('Mounting kernel clients...') - assert config is None or isinstance(config, list) or isinstance(config, dict), \ - "task kclient got invalid config" if config is None: - config = ['client.{id}'.format(id=id_) - for id_ in misc.all_roles_of_type(ctx.cluster, 'client')] - - if isinstance(config, list): + ids = misc.all_roles_of_type(ctx.cluster, 'client') + client_roles = [f'client.{id_}' for id_ in ids] + config = dict([r, dict()] for r in client_roles) + elif isinstance(config, list): client_roles = config config = dict([r, dict()] for r in client_roles) elif isinstance(config, dict): client_roles = filter(lambda x: 'client.' in x, config.keys()) else: - raise ValueError("Invalid config object: {0} ({1})".format(config, config.__class__)) + raise ValueError(f"Invalid config object: {config} ({config.__class__})") + log.info(f"config is {config}") clients = list(misc.get_clients(ctx=ctx, roles=client_roles)) @@ -77,12 +76,20 @@ def task(ctx, config): mounts = {} overrides = ctx.config.get('overrides', {}).get('kclient', {}) + top_overrides = dict(filter(lambda x: 'client.' not in x[0], overrides.items())) for id_, remote in clients: - client_config = config.get("client.%s" % id_) + entity = f"client.{id_}" + client_config = config.get(entity) if client_config is None: client_config = {} - - deep_merge(client_config, overrides) + # top level overrides + for k, v in top_overrides.items(): + if v is not None: + client_config[k] = v + # mount specific overrides + client_config_overrides = overrides.get(entity) + deep_merge(client_config, client_config_overrides) + log.info(f"{entity} config is {client_config}") cephfs_name = client_config.get("cephfs_name") if config.get("disabled", False) or not client_config.get('mounted', True):