Raid-zx, UREs, copying pools

Wim Mistiaen

Dabbler
Joined
Mar 21, 2015
Messages
22
I am in the process of buying disks to upgrade my 5x4Tb Raid-z1 array to 12Tb disks. I have 12 SATA ports on my mobo, of wich 5 are used by the data disks and 2 SSDs for mirrored system dataset disks. ergo i have 5 free ports. my question is twofold:

  • The most important question. i am doubting between 5x12 Raid-z1 and 6x12 raid-z2 for my 12Tb array. I know raid-z1 is strongly discouraged on arrays with disks sizes starting from lets say 2Tb, for chances to get UREs during the resilvering process are getting real. Now, the thing is, my NAS serves mostly media, which i don't mind losing a file of, but wouldn't dare thinking id lose it all. The other data, which i deem truly important, that's on there is backed up to backblaze anyway in case of complete disaster.Keeping all this in mind, the decision to go with one or the other layout comes down to "how does ZFS handle UREs during resilvering". Does it

    a. corrupt the file in which the URE occured and moves on with resilvering the rest of the disk/data/other files. If so, i'd end up with one corrupt file but the rest of my data intact. In this case, id go with 5x12Tb raid-Z1
    b. Detects an error and says "nope, can't do this' and stops the resilvering alltogether. In this case, i'd end up losing my entire pool, which i cannot have. In this case, id go with 6x12Tb raid-Z2.

  • If i need to build a 6 disk zvol, i have 1 SATA port too few. Can i detach one of the mirrored SSDs, build the pool, copy the data, remove the old pool and hook up the SSD again. I know ZFS doesn't care about the physical port a drive is connected to, and the mirror should simply indicate it is degraded (for one drive is missing), but the system should keep working, right? And is freenas intelligent enough to "adjust" the old drive to sync it with the new one, or might it override the new system dataset with the old one?

  • One last question. Are there any guides to copy one pool to another to upgrade? The end result ideally would be identical machines, but just with larger drives/different ZVOL config. (so my poolname would ideally be identical pre/post)

If i missed anything in my reasoning, please do point it out.

Thanks in advance!
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
corrupt the file in which the URE occured and moves on with resilvering the rest of the disk/data/other files. If so, i'd end up with one corrupt file but the rest of my data intact.
This. However, you can't ignore the possibility that the URE could happen in metadata, which could have a much broader impact than a single file. To mitigate this risk, ZFS stores at least two (and up to six) copies of all metadata, but it's still something to consider.
 
Top