Freebsd 11: Raid stripe + ZFS and Mirror?

Hi All,

Not sure if it can be done... but

I have 4x120 GIG SSD's and 1x500 GIG SSD on USB3

Currently I can install ZFS + auto and create the raid stripe with GELI on a single 480 gig stripe that halls ass. I'm totally happy with the performance.

Except ..

It automatically assigns the full 480 gigs to the stripe and continues to install the default file system / layout .. There is no option to create my own disk layout. Did I miss a step? or can you not partition the device with auto strip/zfs?

The next issue: Is it possible to mirror the strip to said 5th USB device? or is my only option a cron/dd job?

In regards to the file system layout.. There seems to be some discrepancy if running jails is an issue on the root device? I would think you would want a separate partition or even another disk?

You don't partition or create slices on zfs (you could, but it makes no sense). Instead you should accept the basic layout from the installer an set dataset properties, e.g. quotas as needed (19.4.8 Handbook).

As above, you could mirror the usb-ssd with your 4 disc vdev but it makes no sense, either. I haven't tried zfs's trim on usb devices and it might work or not. If not, the performance will degrade over time. But even if trim works on usb, such asymmetrical setups aren't the best idea.
I would make very regular backups to the usb-ssd and keep it in the closet, rest of the time.

One last thought... I hope you don't plan to store valuable data on your 4 disc vdev. Without redundancy and 4 times the risk of hardware failure....
Think about a striped mirrors setup, it's fast and reliable. The best you can do with 4 discs. Just a thought though, you decide ;)

Hey thanks,

So you think raid 10 would be better and just go with 240 gigs, forget the 500 and rsync the server to my nas?
or even just make 1 pool and add the 4 devices as normal sad's ?

I haven't been able to find any information on an said "hardware failure". Are you suggesting the drive would become a paper weights? or meaning the array would fail because of "lost/corrupted etc" when writing across the 4 drives and you would have to rebuild it.?

Other research seems to indicate that over time the array will actually get slower and slower and or fail from top writes. So I'm not real sure sad's in any raid configuration would be wise?

Thanks for the notes
With risk of hardware failure I mean the risk to loose the whole zfs pool if any disk fails:

1 x single harddrive/ssd = normal risk
2 x harddrive/ssd stripe = double the risk
4 x harddrive/ssd stripe = four times the risk

2 x harddrive/ssd mirror = half the risk
4 x harddrive/ssd striped mirror = half or quarter the risk, depending on which drive fails

This has nothing to do with with the smart-status or the age of the drives. It's just statistics.
So, no matter in which condition your ssds are, keep the above in mind.
Only one disk failing in a four disk stripe and all the data in the pool is lost, you won't get the chance to rebuild anything!

So yes, a "raid 10" with striped mirros is better. You lose half the capacity, but you go from 4 x risk to half the risk.
Actually, a striped mirrors zfs pool is faster than a classic raid 10 would be (with a raid controller, no zfs).

As you say, I would also rsync date between FreeBSD server and NAS. That will give you quite some data security. You could have some offline backups on the usb-ssd if you have no use for it elsewhere.
Adding USB-devices to a pool is a very bad idea - USB performance and reliability is terrible and will completely ruin the performance of the whole pool.

With this setup i'd go for a RAIDZ1 over the SSDs - they are fast enough so the performance penalty by RAIDZ doesn't really matter, you can lose one drive without losing the whole pool and still get 66% of the storage capacity.
For local backups you can then replicate the pool to the external drive on a regular basis, e.g. by taking hourly snapshots and send|receive them to the USB-drive. I'd still do backups to another system (e.g. the NAS) just to be on the safe side.