Newb Seeking advice about optimal storage configuration

MDRVa

Dabbler
Joined
Nov 10, 2023
Messages
13
Hello. Am new to TrueNAS, and am beginning to think I may not have set up an optimal storage configuration. Hoping to get a bit of help or confirmation -- I have searched and read, but I want to be sure that I'm understanding before I proceed.

The hardware is a retired Desktop Tower with a 3770k and 32gb of RAM. Storage is 4 x 4tb drives (with one "cold" spare) and 2 8tb drives. All NAS drives (the low end sata ones). Brand new build, so no data anywhere yet. Just looking around and getting up to speed. Lots to learn. Used WHS 2011 for a long time, but it's time to move on.

The use case is strictly a home server with a variety of file types: Some "work like" files -- Word, Excel, and a small Access DB. Some music (flac) files, and movies and video. Some downloaded apps in storage. Pretty standard stuff. One primary purpose is backup, with a tentative plan to use Veeam, assuming I get that far.

I installed the OS with no problem, and connected to the interface -- no issues there. Then I followed my initial plan and set up two pools -- one RAID set up with single redundancy (~10tb usable); and a mirror using the 2 8tb drives. Pretty sure that will work fine. This will not be the only location where data will be stored, but the point is to keep it all safe, so I'm trying to be reasonably careful.

Trouble is that more searching and reading has led me to what "may" be a better understanding of the considerable advantages of ZFS and how I should use them. It now seems that maybe I'm thinking in an "old school" manner that doesn't take proper advantage of ZFS has to offer. This article in particular seems to suggest I'm headed in the wrong direction:


If I'm following here (and I may not be), there's an argument to be made that I'd be safer, better off, and more future-proof if I instead built a single pool made up of three mirrors -- two 4tb Mirrors and one 8tb mirror grouped in a single pool -- losing about 2tb of current space, but gaining safety, possibly better ability to recover from a drive failure, and notably the ability to add larger disks to the array if needed when they become cheap/available (not that I expect to need that anytime soon -- this is a LOT of space for my use case). I'm just starting to get a feel for the relationship between pools and vdevs, and this seems like it might be more in keeping with the concepts that drive ZFS.

So the question is, should I change course here and rebuild the system that way? Arguments pro or con? Performance matters, but not that much (gigabit ethernet, maybe 2.5g down the road). More concerned about utility and safety. Looking for confirmation, and perhaps hints about how to remove the existing pools and reconfigure if that's the advice.

Also interested in the potential advantages of adding read cache -- I have some options, but wonder whether that may just be adding complexity for no good reason. Is 32gb enough (with compression) to handle a couple of users at home, or would cache really quicken things up?

Finally -- sorry for three questions at once . . . If I keep the current configuration, is there a preferred location for the system dataset pool and/or for Plugin storage?

Thanks very much in advance for thoughts and suggestions.
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
Plugin storage?
The appropriate place for plugin storage is /dev/null--plugins are a dead feature walking, will be removed entirely in the next year or so, and shouldn't be used at all in new deployments. If you need a plugin-like experience, you should be using SCALE instead with its Apps.
system dataset
It defaults to your first data pool, which is generally fine.
Is 32gb enough (with compression) to handle a couple of users at home, or would cache really quicken things up?
32 GB of RAM isn't enough to make effective use of L2ARC.

As to the question on pool layout, ZFS is really designed to work with pooled storage--unless you have data with markedly different performance or redundancy requirements, it's generally best to put everything into one pool. The article you link to makes some good points. I don't agree with it as an absolute statement--as you can tell from my .sig, I'm running RAIDZ2 in my pool, and the "OMG resilvering is so stressful" argument is (IMO) FUD--but it's true that resilvers are faster, that expanding the pool just takes another pair of disks, or that expanding a vdev only requires replacing two disks. And you can actually remove vdevs from mirrored pools, which you can't do with RAIDZn pools.
 

MDRVa

Dabbler
Joined
Nov 10, 2023
Messages
13
Thanks very much for that. A bit disappointed that plugins will be going away. Backup is a primary function for this server, so I need Asigra, Veeam, or something to replace that function from Windows Home Server. Hope this doesn't represent a sort of deprecation of the free version. But again, I'm still on the nearly vertical portion of the learning curve and I'm not even sure I've latched onto the correct product with TrueNAS. But I like what I see so far, so I'll press on for now. I suppose backup that resides fully on the client side is possible, but that's at least not how I've been used to doing it. Also likely to experiment with syncthing for similar sorts of reasons. Am I going to lose all that next year just after I get it all set up and working?

Appreciate the answers on System dataset and L2ARC.

Very much appreciate the comments on the pool issues. I hear you on the "resilvering so successful" point (I have done that on RAID arrays, and it takes forever; but it does work). What would seem very strange, however, would be combining the RAID set up I have with the 8tb mirror into a single pool. If RAID is good for long continuous reads (as I read), and if the mirrors are better for random stuff (same), that would mean I'm storing various forms of data on two types of arrays -- and, unless ZFS is smart enough to allocate storage based on the type of file (which would certainly be impressive) -- I'd have no idea what's going where. And, though this may just be a beginner reaction, it seems weird to combine the RAID setup with the mirror in a single pool. Not sure you were meaning to suggest that, but the multiple mirrors in a pool seems . . . tidy in comparison. So I'm somewhat inclined to stay with my two pool setup, or do as the article suggested and make three two drive mirror vdevs and combine them in one pool. But please to tell me if I'm wrong, as this is all very new and strange. I read the basic directions early on, but until I read the article referenced above, I didn't really "get" the relationship between vdevs and pools.

Marginally inclined to go with the multi-mirror setup. But the two pools I have would seem to be fine as well. Any strong recommendation one wary or another on that point?

Tempted to try the Asigra backup, as it's right there, apparently works well, and will do more than I require. Still trying to understand the Veeam alternative. But I don't want to learn all about something that'll be gone in sixty seconds . . .

Many thanks,
 

MDRVa

Dabbler
Joined
Nov 10, 2023
Messages
13
Dan -- learned a lot, changed some things, and made a long post over in Community\Introductions about what I've learned and what I'm still trying to figure out. Interested in your thoughts -- that forum seemed the better place for the conversation once I found it. Thanks
 
Top