Due to the nature of my single node Ceph instance, pretty much from the beginning, I have configured my scrub intervals to be a lot bigger than the default.
However, I kept getting warnings, that PGs have not been deep scrubbed in time (code PG_NOT_DEEP_SCRUBBED). This puzzled me for quite a while, as all configurations seemed to be good and the issues were not related to not scrubbing due to load or other similar factors.
But... one simple discovery was made in Ceph issue #44959. Scrub and deep scrub configuration must also be applied to MGR, otherwise, it uses old defaults and as time passes, warnings are issued for missing scrubs.
My OSD scrubbing configuration was:
ceph config set osd osd_deep_scrub_interval 15552000 ceph config set osd osd_scrub_max_interval 8035200 ceph config set osd osd_scrub_min_interval 5356800
I simply applied the same configuration to MGR too:
ceph config set mgr osd_deep_scrub_interval 15552000 ceph config set mgr osd_scrub_max_interval 8035200 ceph config set mgr osd_scrub_min_interval 5356800
Aand warnings are gone. 🤓