From 427c9fdd5c74d2a43d80678ff4f0cbdbe1784d32 Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Wed, 20 Mar 2024 21:52:11 -0400 Subject: [PATCH] qa/suites/fs/workload: enable snap_schedule early Otherwise it can cause client evictions when the volumes plugin has mounted cephfs. Fixes: https://tracker.ceph.com/issues/64988 Signed-off-by: Patrick Donnelly (cherry picked from commit eb7b5c800fd03c3e6e699c3281ed897fa48c9085) --- qa/cephfs/begin/3-modules.yaml | 19 +++++++++++++++++++ qa/suites/fs/workload/begin/3-modules.yaml | 1 + qa/suites/fs/workload/tasks/3-snaps/yes.yaml | 10 +++++++--- 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 qa/cephfs/begin/3-modules.yaml create mode 120000 qa/suites/fs/workload/begin/3-modules.yaml diff --git a/qa/cephfs/begin/3-modules.yaml b/qa/cephfs/begin/3-modules.yaml new file mode 100644 index 0000000000000..2594734256932 --- /dev/null +++ b/qa/cephfs/begin/3-modules.yaml @@ -0,0 +1,19 @@ +# Enable mgr modules now before any CephFS mounts are created by the mgr. This +# avoids the potential race of the mgr mounting CephFS and then getting failed +# over by the monitors before the monitors have a chance to note the new client +# session from the mgr beacon. In that case, the monitors will not blocklist +# that client mount automatically so the MDS will eventually do the eviction +# (and create a cluster log warning which we want to avoid). +# +# Note: ideally the mgr would gently stop mgr modules before respawning so that +# the client mounts can be unmounted but this caused issues historically with +# modules like the dashboard so an abrupt restart was chosen instead. + +mgrmodules: + sequential: + - print: "Enabling mgr modules" + # other fragments append to this + +tasks: + - sequential: + - mgrmodules diff --git a/qa/suites/fs/workload/begin/3-modules.yaml b/qa/suites/fs/workload/begin/3-modules.yaml new file mode 120000 index 0000000000000..1eba706a59dc2 --- /dev/null +++ b/qa/suites/fs/workload/begin/3-modules.yaml @@ -0,0 +1 @@ +.qa/cephfs/begin/3-modules.yaml \ No newline at end of file diff --git a/qa/suites/fs/workload/tasks/3-snaps/yes.yaml b/qa/suites/fs/workload/tasks/3-snaps/yes.yaml index 1a6a6cc60142f..69f53768df812 100644 --- a/qa/suites/fs/workload/tasks/3-snaps/yes.yaml +++ b/qa/suites/fs/workload/tasks/3-snaps/yes.yaml @@ -1,3 +1,10 @@ +mgrmodules: + sequential: + - exec: + mon.a: + - ceph mgr module enable snap_schedule + - ceph config set mgr mgr/snap_schedule/allow_m_granularity true + - ceph config set mgr mgr/snap_schedule/dump_on_update true overrides: ceph: conf: @@ -12,9 +19,6 @@ overrides: tasks: - exec: mon.a: - - ceph mgr module enable snap_schedule - - ceph config set mgr mgr/snap_schedule/allow_m_granularity true - - ceph config set mgr mgr/snap_schedule/dump_on_update true - ceph fs snap-schedule add --fs=cephfs --path=/ --snap_schedule=1m - ceph fs snap-schedule retention add --fs=cephfs --path=/ --retention-spec-or-period=6m3h - ceph fs snap-schedule status --fs=cephfs --path=/ -- 2.39.5