ZFS Slow resilvering

Hi
I have replaced a failure HDD 2 days ago and until now only 30% of data has been resilvered. Anyway to speed up the resilvering process ?

My system is FreeBSD 10.0-RELEASE-p12 with all 2TB HDD, zpool status as below :
Code:
  pool: vol
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Mon Dec 22 16:42:05 2014
        1.78T scanned out of 5.86T at 12.5M/s, 94h46m to go
        451G resilvered, 30.33% done
config:

        NAME                        STATE     READ WRITE CKSUM
        vol                         DEGRADED     0     0     0
          mirror-0                  ONLINE       0     0     0
            gpt/data_disk0          ONLINE       0     0     0
            gpt/data_disk1          ONLINE       0     0     0
          mirror-1                  ONLINE       0     0     0
            gpt/data_disk2          ONLINE       0     0     0
            gpt/data_disk3          ONLINE       0     0     0
          mirror-2                  ONLINE       0     0     0
            gpt/data_disk4          ONLINE       0     0     0
            gpt/data_disk5          ONLINE       0     0     0
          mirror-3                  DEGRADED     0     0     0
            gpt/data_disk6          ONLINE       0     0     0
            replacing-1             REMOVED      0     0     0
              18276914159744512028  REMOVED      0     0     0  was /dev/gpt/data_disk7/old
              gpt/data_disk7        ONLINE       0     0     0  (resilvering)

Resilvering and scrubbing sysctl parameters as below:
Code:
vfs.zfs.resilver_delay: 0
vfs.zfs.scrub_delay: 0
vfs.zfs.resilver_min_time_ms: 5000
vfs.zfs.no_scrub_io: 0
vfs.zfs.no_scrub_prefetch: 0
 
I was curious. I have a freshly made raidz2 pool that doesn't have any activity on it. A couple snapshots. 5x 3TB 7200 rpm drives. High-clocked single-socket i7 with 12 GB RAM.

It resilvers at 15 MB/sec. I dunno whether that is at the beginning of the disks and will go down later or how it is following occupied sectors. But yes it seems a lot slower than the scrub you get on e.g. Linux md raid6.

You will only resilver blocks that are actually in use, so if your zpool isn't full you will end up earlier than the pure MB/sec rating indicates. But I can't say I am that happy that I can't directly tell it to read-test the remaining (free) blocks.
 
I'm not sure how fast it was but I recently replaced a broken 3 TB disk in a 4 x 3 TB RAID-Z. All four Seagate Barracuda 7200 RPM disks. It took just under 41 hours to resilver. The pool is around 79% capacity.
 
I'm not sure how fast it was but I recently replaced a broken 3 TB disk in a 4 x 3 TB RAID-Z. All four Seagate Barracuda 7200 RPM disks. It took just under 41 hours to resilver. The pool is around 79% capacity.
I resilvered a drive on an all-SSD pool once:
Code:
  pool: data
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Wed Feb 27 14:23:19 2013
        5.36T scanned out of 17.8T at 3.56G/s, 0h59m to go
        0 resilvered, 30.18% done
When using a pool of 15 x 2 TB 7200 RPM drives, the resilver normally runs at about 650 MByte/sec.
 
Maybe s**t hit the fan and the second drive in the mirror slowly dies too.
Something strange to see in the logs? What is going on on the pool while it is resilvering?
gstat
 
I was curious. I have a freshly made raidz2 pool that doesn't have any activity on it. A couple snapshots. 5x 3TB 7200 rpm drives. High-clocked single-socket i7 with 12 GB RAM.

It resilvers at 15 MB/sec. I dunno whether that is at the beginning of the disks and will go down later or how it is following occupied sectors. But yes it seems a lot slower than the scrub you get on e.g. Linux md raid6.

So, after completion is actually said that it completed it in 15 hours although it had previously estimated it will take more than 100. 100 hours did not pass yet, so the shorter result isn't just a misprint.

To clarify: this is not restoring a drive. It's just a scrub for fun.
 
Back
Top