Bug 1399842

Summary: Ceph Scrubbing Docs need some clean-up.
Product: Red Hat Ceph Storage Reporter: John Wilkins <jowilkin>
Component: DocumentationAssignee: Erin Donnelly <edonnell>
Status: CLOSED CURRENTRELEASE QA Contact: shylesh <shmohan>
Severity: low Docs Contact:
Priority: unspecified    
Version: 2.1CC: asriram, dzafman, edonnell, hnallurv, kdreyer, sjust
Target Milestone: rc   
Target Release: 2.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-21 23:49:23 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description John Wilkins 2016-11-29 21:33:49 UTC
Description of problem:

Documentation on scrubbing requires a bit of update. 

1. Settings use spaces, but should use underscores. This applies to the entire document as well. 

2. osd scrub interval randomize ratio. Description says "ration" should say ratio.

3. ceph/src/common/config_opts.h has the following entries: 

config_opts.h:749:OPTION(osd_scrub_invalid_stats, OPT_BOOL, true)
config_opts.h:789:OPTION(osd_scrub_during_recovery, OPT_BOOL, true) // Allow new scrubs to start while recovery is active on the OSD
config_opts.h:790:OPTION(osd_scrub_begin_hour, OPT_INT, 0)
config_opts.h:791:OPTION(osd_scrub_end_hour, OPT_INT, 24)
config_opts.h:792:OPTION(osd_scrub_load_threshold, OPT_FLOAT, 0.5)
config_opts.h:793:OPTION(osd_scrub_min_interval, OPT_FLOAT, 60*60*24)    // if load is low
config_opts.h:794:OPTION(osd_scrub_max_interval, OPT_FLOAT, 7*60*60*24)  // regardless of load
config_opts.h:795:OPTION(osd_scrub_interval_randomize_ratio, OPT_FLOAT, 0.5) // randomize the scheduled scrub in the span of [min,min*(1+randomize_ratio))
config_opts.h:796:OPTION(osd_scrub_chunk_min, OPT_INT, 5)
config_opts.h:797:OPTION(osd_scrub_chunk_max, OPT_INT, 25)
config_opts.h:798:OPTION(osd_scrub_sleep, OPT_FLOAT, 0)   // sleep between [deep]scrub ops
config_opts.h:799:OPTION(osd_scrub_auto_repair, OPT_BOOL, false)   // whether auto-repair inconsistencies upon deep-scrubbing
config_opts.h:800:OPTION(osd_scrub_auto_repair_num_errors, OPT_U32, 5)   // only auto-repair when number of errors is below this threshold
config_opts.h:909:OPTION(osd_scrub_priority, OPT_U32, 5)
config_opts.h:911:OPTION(osd_scrub_cost, OPT_U32, 50<<20) 

We don't have descriptions for:

osd_scrub_invalid_stats
osd_scrub_during_recovery
osd_scrub_auto_repair
osd_scrub_auto_repair_num_errors
osd_scrub_priority
osd_scrub_cost


There are also osd_deep_scrub entries, some of which are covered and some not.

config_opts.h:801:OPTION(osd_deep_scrub_interval, OPT_FLOAT, 60*60*24*7) // once a week
config_opts.h:802:OPTION(osd_deep_scrub_randomize_ratio, OPT_FLOAT, 0.15) // scrubs will randomly become deep scrubs at this rate (0.15 -> 15% of scrubs are deep)
config_opts.h:803:OPTION(osd_deep_scrub_stride, OPT_INT, 524288)
config_opts.h:804:OPTION(osd_deep_scrub_update_digest_min_age, OPT_INT, 2*60*60)   // objects must be this old (seconds) before we update the whole-object digest on scrub


We should check with engineering and see which of the omitted settings should be covered.

Comment 3 Samuel Just 2017-01-09 16:04:43 UTC
All of those should probably be covered.  David Zafman can help you with descriptions.

Comment 11 shylesh 2017-02-21 12:23:42 UTC
Necessary changes are reflected in the doc. Marking this as verified.