4

I currently have 3x4TB drives in a RAID-Z1 configuration using FreeNAS, which give me approx. 8TB of usable space in a single volume. I'm approaching 6TB, so I'm considering my options for expansion/migration.

My understanding is that I can't expand the existing ZFS pool/volume.

I'd like to be able to do the following:

  1. Buy an additional 3x 4TB drives and build a Windows Server 2016 Essentials Storage Space with Parity, for a total volume size of approx. 8TB.

  2. Move the 6TB of data from the FreeNAS volume to the Storage Space volume

  3. Move the 3x 4TB physical drives from the FreeNAS server to the Windows server, expanding the Storage Space Parity volume from 3x 4TB drives to 6x 4TB drives, for what I understand would then be a 20TB volume.

  4. Ideally, the final Storage Space Parity Volume would be rebalanced

I'm nervous about single-disk parity with 20TB of data, so I'd happily consider a 7th drive for 2-disk parity.

Is this a viable migration path? Is rebalancing possible?

I'm not committed to moving from FreeNAS to Windows. If there's a better way with hardware controllers or Linux, I'm open to that too.

Note: I had considered buying 3x 8TB drives, for a new parity volume of 16TB, but I figure I can save $500 and end up with a larger single volume by migrating from a 3x 4TB volume to a 6x 4TB volume.

1
  • My experience with ZFS on Linux points toward that there are fewer gotchas with FreeBSD, where ZFS support is native, than with Linux, where it's installed as a kernel module that must be maintained along with the kernel.
    – user
    Nov 17, 2016 at 13:06

3 Answers 3

0

My understanding is that I can't expand the existing ZFS pool/volume.

  • You cannot expand the RAIDZ1 vdev with more disks.
  • You can replace all disks in the RAIDZ1 vdev with larger disks, without losing data, one by one (although I would not recommend Z1 with such large disk sizes... or at all).
  • You can expand your pool by adding any number of new vdevs, which can be of any type (although usually the same type is chosen, because the weakest link determines the strength, performance and resiliency of the whole pool). If any vdev (not disk!) in your pool fails critically, your pool is gone (meaning backups, which you should have nonetheless).
  • You can always destroy your pool, create a new one and restore all data from backup. Did I mention how important backups are? Any file system, even good ones, can have bugs, and user errors can destroy all your data without means to recover if you don't have backups.
0

Using the installation medium also for data and system is possible with some tricks. Here in a short what I did: - Installed it on the harddrives from the scratch (mirror) - Formated a USB stick like the hard drives (partition and pool) and send the snapshot from the system to its new pool called "freenasboot" - Rebooted from the USB stick and killed the original pool "freenas-boot" on the harddrives - Repartioned the drives to make space for data partitions (same types, but only smaller size with 128G) - Created the "original" pool again on the harddrives "freenas-boot" - Send the snapshots from the USB stick again to the harddrives (use the existing on, its already on the stick ;-) ) - Rebooted the system (and unplugged the USB stick befor BIOS wents up) - your done, enjoy

here is the evidence, zpool list and gpart outputs from freenas shell

0

The path you describe sounds feasible, and yes, you can rebalance after migrating your disks from your ZFS machine to your Storage Spaces machine. However, I don't think, it is possible to change your existing 6-disk single-parity storage space into a 7-disk double-parity space later. As per my understanding, you must specify the resilliency type at creation time, and cannot change it later, which messes up your migration plans. You coulc consider buying enough new disks to create the storage space with double-parity from the beginning, and then just consider the extra disks as hot spares, once, you've migrated your disks from your old machine.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .