SOLVED benefits of creating a new raidz2-pool over upgrading an existing one?

Joined
Jan 27, 2020
Messages
577
Morning,
at the moment burning in 6 new drives (bought used off ebay but fairly new - thanks to the Grinch for his solnet-array script)
and ponder over possible pool configs.
Originally planned was a raid10 config but I don't like the 50%-usable-storage-only-one-parity-drive-solution, to be honest. RaidZ2 feels way safer.

So, is there any benefit in creating a new Z2 pool over just upgrading my existing 6-drive raidZ2 config?
I guess creating the new pool and zfs send over from the old pool would be way faster than six times re-slivering the old pool until the additional space is available...

But do I want to power up 6 additional drives? 1000W PSU should be enough, right? It'll be janky as fuck inside a standard ATX case.

Hm, it comes down to is there anything I'll miss out if I "only" upgrade drive by drive?
 
Last edited:

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
So, the pros of starting fresh:

Fragmentation removed as you transfer the data.
Much faster than resilver one by one.

The cons of starting fresh (as you mostly already identified):

Need to rename the pool (not actually very hard, but takes some work and thinking)
Will need an outage of service to change the pools around
Temporary need for more power/connections (yes 1000W will be fine for 12 HDDs)

If you're adding a VDEV to the pool (a scenario you don't mention):

More power consumption
More potential IOPS
Immediate availability of more space
Existing fragmentation level remains, but overall will go down due to empty added VDEV
No need to rename or move anything
 
Joined
Jan 27, 2020
Messages
577
Thanks @sretalla, running 12 drives is out of the question, as there is not enough drive cages inside the case. The increased power usage is also a huge downer (German power costs, yea!)

The existing pool is kinda old (created in FreeNAS 11.3), so I guess a fair bit of fragmentation is present. Is there a command to check that?
And how is fragmentation impacting pool performance? I was under the impression ZFS' "auto-healing" takes care of that.
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
Is there a command to check that?
zpool get fragmentation poolname

And how is fragmentation impacting pool performance? I was under the impression ZFS' "auto-healing" takes care of that.
Probably the opposite of what you would think.

ZFS write performance can be impacted by fragmentation (of free space, not used space)... the harder it is to find a contiguous block of free space of equal or greater size than required by the transaction group, the slower the writes will be.
 

Davvo

MVP
Joined
Jul 12, 2022
Messages
3,222
The existing pool is kinda old (created in FreeNAS 11.3), so I guess a fair bit of fragmentation is present. Is there a command to check that?
There is also zpool list poolname.

I was under the impression ZFS' "auto-healing" takes care of that.
It has more to do with ZFS being cow.
 
Last edited:
Joined
Jan 27, 2020
Messages
577
So there's a tangible benefit to switching to a new pool rather than upgrading an existing one. Thank you!
 

Davvo

MVP
Joined
Jul 12, 2022
Messages
3,222
Also take a look at the following resource.
 
Joined
Jan 27, 2020
Messages
577
Also take a look at the following resource.
I link to this ressource in my sig. :wink:
 
Top