Exploiter Ceph: qu'est-ce que Scrub et comment le gérer







Scrub — Ceph. , , . Scrub . , .







, « ». Ceph «».







Ceph:

OSD,

.







Scrub



Scrub scrubbing — , placement group. , , placement group . , Scrub.







Scrub (, - placement group , , ), , .







Erasure coded pool , : Scrub , , . — «» . , .







Scrub : .







placement groups scrubbing, scrubbing+deep. «Deep» — Scrub.













Scrub, , .







Scrub . .







Scrub OSD placement group. , . . placement group . placement groups.







placement group — , Scrub . : placement group . Scrub , . placement group , .







. , placement group 7 .













Scrub placement group, :













, scrub error, . , placement group . Scrub. - , placement group .







: - OSD repair — .







Scrub , .







placement group . 7 100% OSD. : , .



Scrub , , , . (, ), .



Linux input/output error. Ceph , . , . , input/output-, .




Scrub , : placement group OSD . :







$ ceph health detail
      
      





:













OSD . / , .







, Scrub, :







$ rados list-inconsistent-obj {PG} | jq
      
      





, . OSD .













, OSD (875 925), primary, , , (463) .







primary-, , :







$ ceph pg repair {PG}
      
      





repair . Ceph placement group id . , , . , repair , primary OSD.









— . Scrub, placement group , ( io) Scrub . .







. Scrub . , , .







Scrub Ceph , , , .







. osd , “scrub”, .







ceph daemon osd.0 config show | grep osd | grep scrub
      
      











osd_max_scrubs” — , placement group «» OSD. “1”, Scrub .







, :







osd_scrub_begin_hour” “osd_scrub_end_hour”. “0”, “24”, .







: “02”, “08”:







ceph config set osd osd_scrub_begin_hour 02
ceph config set osd osd_scrub_end_hour 08
      
      





.







: . - placement group - «» , Scrub , . Scrub , .







, , , Ceph Scrub, . - placement group, , .







osd_scrub_sleep” — . “0.00000”. “0.1”, Scrub .







osd_debug_deep_scrub_sleep” — sleep Deep Scrub. “0”, “0.2”.







:







ceph config set osd osd_debug_deep_scrub_sleep 0.2
      
      





, Scrub . . . io, Scrub .







“osd_scrub_chunk_max” “osd_scrub_chunk_min” — , ; , Scrub.







, 5 — .







ceph config set osd osd_scrub_chunk_min 1
ceph config set osd osd_scrub_chunk_max 4
      
      





, , , placement group Scrub . , .







, , , Scrub . , Scrub.







osd_scrub_auto_repair” — . , placement group inconsistent. “false”, Ceph repair placement group, 5. , repair, , , . Ceph , , . , .







osd_scrub_during_recovery” — . , Scrub , OSD backfilling, recovery io. - , , rebalance .







Scrubbing io recovery io, , Scrub . rebalance — placement group, — Scrub , , Scrub , , , «».







: , , Scrub :







:







ceph osd set noscrub
      
      





:







ceph osd set nodeep-scrub
      
      





, . , , :







ceph osd pool set {name} noscrub 1
ceph osd pool set {name} nodeep-scrub 1
      
      





claster health:













Scrub, . , , .







, Scrub. , Scrub, .








All Articles