I read some about ZFS layouts, and want to ask for validation. At the moment, I have a non-ZFS 5x18TB raid6 pool (so 54TB capacity, 5 disks is hard limit). I use only around 10TB right now (VM backups, large media/video files and also small media files, some not too important personal backups and some temporary files), considering my use I expect this to reach max 30TB or so. There are usually only one concurrent user of the pool, and most of the use is large files. I do not plan to have an active dataset on this pool, I am using local storage for VMs or processing media files etc. I can increase the capacity of local storage if more needed.
I am planning to upgrade this to TrueNAS soon, and I can have 8 disks (8 is hard limit again, and I already have 8 same disks, HC550) but I have possibility of adding more RAM (planning to have 16-32GB at the moment), adding a few SATA and/or NVMe SSDs or Optane. Besides the reason I would like to run an open platform, the main reason I am upgrading is I cannot saturate 10G network link with my current pool, I guess it is not very surprising since 3x drive is max. 750MB/s. I can sometimes reach around 500MB/s but not always, that is probably due to the maximum capability of the (embedded) storage unit I am currently using. So I am considering striped mirrors or raidz2. I do not need too much redundancy, 1 disk redundancy is OK for me (I have offsite backup for more important things), I say raidz2 only because of the large capacity of the disks, to avoid problems during rebuild/resilver. I understand ZFS performance decrease with use, so I plan to use 50% of available capacity as my max capacity.
I use SMB and NFS. No iSCSI other than just experimenting with it. My read and write patterns are not too asymmetrical, it is not like 10:1, so I prefer to have similar speed for both.
My questions and I hope I calculate this right:
(assumption streaming read/write speed of single drive is 250MB/s)
striped mirrors:
- 4x 2-way mirror has 72TB, 50% is 36TB which is acceptable but not ideal. I dont think I need extra IOPS.
- the streaming read speed of this (2000MB/s) is more than 10G, but write speed (1000MB/s) is a little less than 10G.
raidz2:
- 8-wide raidz2 has 108TB and half is 54TB which is quite ideal. I understand IOPS will be 1/4 of the striped mirrors or less, but I guess it will not matter for me.
- both the read and write speeds are at 10G range (1500MB/s).
Looking at these, raidz2 looks better. Two issues I dont have a clear idea:
- I read about optimum width of various raidzs, and I think 6 is optimum for raidz2. If I use 6 disks, raidz2 becomes not this much attractive compared to striped mirrors, it has everything worse than better redundancy (comparing to 4x 2-way mirrors) which I dont think I need. Or should I not consider this at all and keep it 8-wide raidz2 ?
- I do not need it to be very quickly re-available after a failure but also I do not want it to be not-available for a day or more. I guess it makes striped mirrors attractive ? or a resilver on raidz2 would not be that big a problem ?
I am planning to upgrade this to TrueNAS soon, and I can have 8 disks (8 is hard limit again, and I already have 8 same disks, HC550) but I have possibility of adding more RAM (planning to have 16-32GB at the moment), adding a few SATA and/or NVMe SSDs or Optane. Besides the reason I would like to run an open platform, the main reason I am upgrading is I cannot saturate 10G network link with my current pool, I guess it is not very surprising since 3x drive is max. 750MB/s. I can sometimes reach around 500MB/s but not always, that is probably due to the maximum capability of the (embedded) storage unit I am currently using. So I am considering striped mirrors or raidz2. I do not need too much redundancy, 1 disk redundancy is OK for me (I have offsite backup for more important things), I say raidz2 only because of the large capacity of the disks, to avoid problems during rebuild/resilver. I understand ZFS performance decrease with use, so I plan to use 50% of available capacity as my max capacity.
I use SMB and NFS. No iSCSI other than just experimenting with it. My read and write patterns are not too asymmetrical, it is not like 10:1, so I prefer to have similar speed for both.
My questions and I hope I calculate this right:
(assumption streaming read/write speed of single drive is 250MB/s)
striped mirrors:
- 4x 2-way mirror has 72TB, 50% is 36TB which is acceptable but not ideal. I dont think I need extra IOPS.
- the streaming read speed of this (2000MB/s) is more than 10G, but write speed (1000MB/s) is a little less than 10G.
raidz2:
- 8-wide raidz2 has 108TB and half is 54TB which is quite ideal. I understand IOPS will be 1/4 of the striped mirrors or less, but I guess it will not matter for me.
- both the read and write speeds are at 10G range (1500MB/s).
Looking at these, raidz2 looks better. Two issues I dont have a clear idea:
- I read about optimum width of various raidzs, and I think 6 is optimum for raidz2. If I use 6 disks, raidz2 becomes not this much attractive compared to striped mirrors, it has everything worse than better redundancy (comparing to 4x 2-way mirrors) which I dont think I need. Or should I not consider this at all and keep it 8-wide raidz2 ?
- I do not need it to be very quickly re-available after a failure but also I do not want it to be not-available for a day or more. I guess it makes striped mirrors attractive ? or a resilver on raidz2 would not be that big a problem ?