Sequential Scrub and Resilver Adjustments
2 minute read
Beginning with the release of FreeNAS 11.1, the algorithm used for scrubs and resilvers received many performance improvements, most noticeably on fragmented pools.
Issue: Legacy Behavior
Some users might wish to revert to the old algorithm for scrub and resilver.
Fix: Revert to Old Behavior
The legacy scrub algorithm can be enabled by setting this sysctl tunable in the Shell console:
sysctl -w vfs.zfs.zfs_scan_legacy=1
If a scrub is already in progress, it can be paused, the tunable set, and the scrub resumed with these commands:
zpool scrub -p poolname,
sysctl -w vfs.zfs.zfs_scan_legacy=1, and
zpool scrub poolname
Issue: System Load During Scrubs or Resilvers
In FreeNAS 11.1 and 11.1-U1, resilver and scrub delays were both set to 0. This can keep the system too busy to do other work when a scrub or resilver is active.
Fix: Adjust Scrub and Silver Delay Settings
Two sysctl tunables affect scrub and resilver speed and system availability:
Setting the resilver delay to 2 and the scrub delay to 4 limits the IOPS used for these functions, providing some reserve for normal operations:
|Enabled||checkbox||Set to run resilver tasks between the configured times.|
|Begin Time||drop-down||Choose the hour and minute when resilver tasks can be started.|
|End Time||drop-down||Choose the hour and minute when new resilver tasks can no longer be started. This does not affect active resilver tasks.|
|Days of the Week||checkboxes||Select the days to run resilver tasks.|
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.