I am building a video storage server at home, but I have ran into a problem in my plans. My original plan was to use TrueNAS Scale with ZFS and start with a mirrored vdev of two 18TB drives. I then wanted to expand it one 18TB drive at a time into a Z1 vdev of about 5 drives. However I found out from online research that it is not possible to just convert mirror vdev to a Z1 or even expand a Z1 vdev. Does a software raid solution exist where it is possible to start with just two drives, add other drives later and still keep the n+1 topology? This is the minimum I need, however the possibility to add an extra parrity drive would also be amazing. Let’s say once I get to 5 drives (4+1) I could add an extra parrity drive to get 4+2. Is this somehow possible? If so what solution should I look into?
the options i know are:
- unraid (costs moneybut is the simplest to setup and comes with a bunch of extra features, app store etc)
- btrfs (though raid5/6 aren’t considered ready for production use)
- mergerfs with snapraid (technically not real time but it’s the most flexible)
You can expand mirrored vedev based arrays, but you do it by adding vdevs, so you are looking at adding TWO drives at a time. You can also (sorta) expand Z1 arrays by adding whole additional vdevs, or by replacing each drive in the array one at a time.
As a point of reference, there’s a newer ZFS feature that will allow you to expand RAIDZ pools without creating new vdevs. Note, however, it doesn’t let you add or remove parity to change the RAIDZ level.
It’s rather new and will take some time for implementation into NAS platforms like TrueNAS.
As it was said, you may try unRAID which would handle even the different size drives.
As alternative, it looks like mdadm should fit your requirements. You can use smth like openmediavault for that.