Upgrade strategy

Absestos

Cadet
Joined
Feb 4, 2021
Messages
6
I have an 8x8TB RaidZ2 that is getting full and am looking to upgrade. Space and noise/heat constraints (I live in a studio apartment with my NAS) limit me to a single 8 bay system except for brief periods, which means buying bigger drives.

Since I created the pool years ago, before ZFS encryption was a thing, I am using a legacy setup with GELI and would like to use this chance to migrate as well, and I can see three ways of going about this:
  • I create an encrypted in my existing pool, move my data over, then offline the existing drives one by one replacing with bigger ones making sure ZFS takes the new disk and not a GELI mapping. All of this would need to be done via CLI since the UI does not support it.
  • I buy a cheap used computer, plug my crappy 4 port PCI SATA controller (the one I used with Freenas before buying a proper HBA), create a RaidZ2 pool there with the new drives, rsync the data over the network, then swap the new drives in my current NAS and import the pool. Finally resell the computer.
  • I plug two of the new disks at a time into the existing server (still have 3 unused motherboard SATA ports) creating ZFS mirrors and copy sections of my data to each (should take 2-3 mirrors to fit stuff). Delete the original pool and recreate it with native ZFS encryption. Copy the data back, then do a normal pool expansion.
Which option do you think makes the most sense? Current thoughts below:
  • Option one makes me worried of ending in an unsupported config or somehow losing data due to mishandling encryption, as well as the time spent doing the resilvers and risk of drive loss.
  • Option two, besides adding the hassle of reselling, means dealing with hardware that would be less than ideal to keep costs low (some combination of no ECC, potentially low wattage PSU, PCI express 2, SATA 3Gbps likely). Given it would be an one off job, would I be able to get away with it?
  • Option three would take by far the longest and makes me worry about PSU sizing (current one is 500W and works fine for 8 drives), even though my HBA does staggered spin up and system drive is an SSD
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
If you can connect additional disks to your server, you don't need to lose redundancy during the resilver. That should make option 1 much less stressful.
 

QonoS

Explorer
Joined
Apr 1, 2021
Messages
87
Here some things I learned when going from FreeNAS 11.x GELI encrpted pool to TrueNAS 12.x native encryption:
  • ZFS native encryption should be enabled at creation before it gets filled with data. Going the other way and swapping all HDDs 1-by-1 and enabling ZFS native encryption afterwards would require to rewrite all data to the pool (copying off and back to pool) for encryption to happen. I do not recommend that.
  • ZFS send/receive from computer to computer is slower, by a lot ! Even if you have 10G network it will be faster to have a single PC/NAS and have all disks connected to it and then move the data from old pool to new pool.
  • Keeping the old HDDs with the old pool for a while also has the benefit that it is a backup. If Anything goes horribly wrong you can still recreate the new pool and copy the data anew. Also you are free to try some other new features and or TrueNAS 12.x in general.
 
Top