Project

General

Profile

Feature #25170

Avatar?id=14398&size=50x50

Add Resilver Priority to Storage tab

Added by Kris Moore over 1 year ago. Updated about 1 year ago.

Status:
Resolved
Priority:
Critical
Assignee:
William Grzybowski
Category:
Middleware
Target version:
Estimated time:
Severity:
New
Reason for Closing:
Reason for Blocked:
Needs QA:
No
Needs Doc:
Yes
Needs Merging:
Yes
Needs Automation:
No
Support Suite Ticket:
n/a
Hardware Configuration:

Description

We need a resilver "scheduler". What that means, is we have sysctl's which will bump the priority of resilver IO. Users should be able to throw that into a schedule, such as off-peak hours, weekends, etc, where they can set resilver to be more or less aggressive in its IO usage. Where this lives in the UI is open for discussion, but having the feature will become far more important as disks get larger.


Related issues

Related to FreeNAS - Bug #25531: Add scrub sorting featureResolved2017-08-10

Associated revisions

Revision 345d7f31 (diff)
Added by William Grzybowski over 1 year ago

feat(gui): add Resilver model

Ticket: #25170

Revision 3e62ca63 (diff)
Added by William Grzybowski over 1 year ago

feat(gui): add Resilver Priority to Storage tab

Ticket: #25170

Revision 3ad370a3 (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): add method to configure resilver priority

Ticket: #25170

Revision 76b91c31 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): oops, remove print

Ticket: #25170

Revision a4770483 (diff)
Added by William Grzybowski over 1 year ago

fix(gui): remove blank help text

Ticket: #25170

Revision 347981fb (diff)
Added by William Grzybowski over 1 year ago

feat(rc): call pool.configure_resilver_priority at given times

Ticket: #25170

Revision 457911e8 (diff)
Added by William Grzybowski over 1 year ago

feat(gui): restart cron and call pool.configure_resilver_priority

Ticket: #25170

Revision 290cf4c0 (diff)
Added by William Grzybowski over 1 year ago

fix(gui): clean weekday to a comma separated list

Ticket: #25170

Revision c8ccf898 (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): take weekday into account to configure resilver prio

Ticket: #25170

Revision 85978a42 (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): use vfs.zfs.scan_idle for resilver priority

Ticket: #25170

Revision 4b36b5b3 (diff)
Added by William Grzybowski over 1 year ago

fix(rc): erroneous comment

Ticket: #25170

Revision a33bbd05 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): use correct var for scan_idle sysctl

Ticket: #25170

Revision 1572b622 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): handle the case of overlapping days with weekday

Ticket: #25170

Revision 80e6a083 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): do not continue of no weekdays were selected

Ticket: #25170

Revision bae1068a (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): traceback if pool is not imported

Ticket: #25170

Revision 4a6262c9 (diff)
Added by William Grzybowski over 1 year ago

feat(gui): add Resilver model

Ticket: #25170

Revision b55da3ed (diff)
Added by William Grzybowski over 1 year ago

feat(gui): add Resilver Priority to Storage tab

Ticket: #25170

Revision 1d0af142 (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): add method to configure resilver priority

Ticket: #25170

Revision 47696e98 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): oops, remove print

Ticket: #25170

Revision 0d4ae711 (diff)
Added by William Grzybowski over 1 year ago

fix(gui): remove blank help text

Ticket: #25170

Revision 88e54d49 (diff)
Added by William Grzybowski over 1 year ago

feat(rc): call pool.configure_resilver_priority at given times

Ticket: #25170

Revision 918d49a7 (diff)
Added by William Grzybowski over 1 year ago

feat(gui): restart cron and call pool.configure_resilver_priority

Ticket: #25170

Revision 66c28fa2 (diff)
Added by William Grzybowski over 1 year ago

fix(gui): clean weekday to a comma separated list

Ticket: #25170

Revision eda74cdc (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): take weekday into account to configure resilver prio

Ticket: #25170

Revision fb757bdf (diff)
Added by William Grzybowski over 1 year ago

feat(middlewared): use vfs.zfs.scan_idle for resilver priority

Ticket: #25170

Revision e5056109 (diff)
Added by William Grzybowski over 1 year ago

fix(rc): erroneous comment

Ticket: #25170

Revision b76b3c91 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): use correct var for scan_idle sysctl

Ticket: #25170

Revision 77563755 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): handle the case of overlapping days with weekday

Ticket: #25170

Revision 1078efec (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): do not continue of no weekdays were selected

Ticket: #25170

Revision c5cef421 (diff)
Added by William Grzybowski over 1 year ago

fix(middlewared): traceback if pool is not imported

Ticket: #25170

Revision 0276a86e (diff)
Added by Warren Block about 1 year ago

Document new Resilver Priority feature

Ticket: #25170

History

#1 Updated by William Grzybowski over 1 year ago

  • Status changed from Unscreened to Screened

#2 Updated by Ash Gokhale over 1 year ago

defaults are thus:
vfs.zfs.resilver_min_time_ms: 3000
vfs.zfs.resilver_delay: 2
vfs.zfs.scan_idle: 50

aggressive setting:
vfs.zfs.resilver_min_time_ms: 9000
vfs.zfs.resilver_delay: 0
vfs.zfs.scan_idle: 0

A larger scan_idle will prioritize the user workload.

#3 Updated by Alexander Motin over 1 year ago

Ash, shall we do alike for scrub?

Ash told:
There are several shared timers and start vectors for 'idle' homework. Scrub may actually be prioritied by scan_idle. I'm afraid of introducing too many dials; they will be misued.

#4 Updated by Alexander Motin over 1 year ago

I think UI should provide just a single slider, while inside it may translate into any set of tunables.

#5 Updated by Suraj Ravichandran over 1 year ago

  • Status changed from Screened to Reviewed by Developer

Made comments, William made changes (thanks!), and now PR is approved.

PR link: https://github.com/freenas/freenas/pull/245

#6 Updated by William Grzybowski over 1 year ago

  • Status changed from Reviewed by Developer to Ready For Release

#7 Updated by William Grzybowski over 1 year ago

  • Status changed from Ready For Release to 19

#8 Updated by William Grzybowski over 1 year ago

  • Status changed from 19 to Ready For Release

#9 Updated by Dru Lavigne over 1 year ago

  • Subject changed from Resilvering Priority UI to Add Resilver Priority to Storage tab

#10 Updated by Dru Lavigne about 1 year ago

  • Target version changed from 11.1 to 11.1-BETA1

#11 Updated by Bonnie Follweiler about 1 year ago

12734

Test Passed in FreeNAS-11-MASTER-201710180506
Screenshot provided

#12 Updated by Alexander Motin about 1 year ago

  • Related to Bug #25531: Add scrub sorting feature added

#13 Updated by Dru Lavigne about 1 year ago

  • Status changed from Ready For Release to Resolved

Also available in: Atom PDF