TransWikia.com

Preparing a ZFS based setup for a potential future upgrade

Super User Asked by trinity-1686a on December 9, 2020

I want to try ZFS on some personal server. From my understanding, it’s not possible to add disks to a vdev after it’s creation, only to add new vdevs to a pool. Also, it’s considered bad practice to put ZFS over a RAID as it won’t be able to fix rotten bits and similar has well as it could given direct access. And finally, one should probably give the same level of redundancy to each vdevs as only one failing is enough to bring down the whole pool.

What I want to achieve is to allow a single drive failure without loosing data, and start with 2 HDD, but maybe add a third along the way if it gets too small for my data.
Adding that potential 3rd disc as a vdev seems to be a no-go as it would be a SPF for the whole pool.
Doing RAID5 with mdadm under ZFS is sub-optimal as stated above, but should work as ZFS autoexpand itself when it see the underlying device getting bigger.

What I thought of, which seems the best to me, is to partition both drives into two equals length partitions, and pairing one another in ZFS as mirroring vdevs, and when times come to add a third disc, partition it, declare one of the 4 partitions as failing, make the data it stored go to one of the partition on the new drive, and create a 3rd vdev using the newly freed not-really-failed partition, and the remaining partition from the 3rd drive.
(Below are two tables to better show that last part, column are discs, lines are partitions, number are vdevs id)

starting configuration:

drive1 | drive2
   1   |    2
   2   |    1

after disc upgrade:

drive1 | drive2 | drive3
   1   |    2   |    3
   2   |   *3*  |    1

Is that kind of configuration sane, or is there either something that I overlooked, or a better way to do that I’m unaware off?

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP