Huge storage penalty on FreeNAS with ZFS, RAIDZ, and different size disks

truenaszfs

I'm setting up a FreeNAS server with the following 3 storage drives

  • 2 80 GB drives
  • 1 40 GB Drive

I choose ZFS with RAIDZ since it seemed like the only free RAID that supported multiple disks. However when I setup FreeNAS I was surprised that I only had 76 GB of usable space. Where did the other 124 GB go?

What am I missing here? Isn't ZFS supposed to allow you to use multi-size disks and still have redundancy? How can I configure FreeNAS (I would prefer to stay away from the command line, but will go there if its absolutely necessary) to give me the most storage with protection?

Best Answer

A RAID-Z group within a ZFS pool will always lock the size to the smallest disk within the pool. So, currently, you have what is essentially a RAID-Z of 3x 40GB drives. One disk worth is dedicated to parity bits, so you've got 2x 40GB, which is 76.29 GiB.

The way that you can work around this limitation is by not using RAID-Z at all. ZFS also lets you independently set that data should be stored in at least X locations throughout the pool, preferring different disks for the extra copies when possible. Add each disk to the pool separately, then run zfs set copies=2 poolname; this will direct ZFS to store all data in at least two places.