For context, primary use will be as a NAS, but I’ll host gameserver(s) & VMs on the side.
My Questions:
I do a lot of Photography, so I’m expecting to upload tens of thousands of photos every year to the NAS, I’d like to improve viewing/loading times wherever possible, would L2ARC drive make a noticeable difference? Using SMB for viewing.
I currently have 16gb of ram, 8gb which will be allocated to gameservers & VMs which leave 8gb to the NAS, which I guess is awfully little for 2x18tb drives, how much should I aim for?
Specs:
CPU: Ryzen 5800x
MBO: MSI B550-A Pro
Ram: 16gb DDR4 3200MHz ECC (unbuffered)
GPU: Quadro P200 (transcoding)
Network Card: 10GB Dual Card
HDD: 2x 18TB Exos SAS drives
OS Drive: A400 240gb (Just a cheap reliable drive)
Ps: I picked 5800x/B550 for the singlethread speed for gameservers, in process making the NAS overkill is just a plus.
L2ARC is nice to have but if you are planning on uploading way more photos than would fit the cache it would probably not be of much use. Loading photos should already be a task that your mirror could serve relatively well.
I would definitely recommend getting more RAM. ECC is a great idea but just 8GB available for that much storage is probably gonna be a problem/bottleneck.
Below you say you want to use the P200 for transcoding so I suppose you’ll be hosting Jellyfin/Plex or something similar. That will need RAM too…
I would also heavily recommend an SSD pool for gameservers or apps. Those will benefit a lot from the way better response times and random r/w performance. The drives probably don’t need to be very large but I’d advise using drives rated for high TBW.
The OS drive on the other hand doesn’t need to be that big. A 16GB optane drive would be enough for example. Your choice is still perfectly fine though.
Browsing 10s of thousands of photos off a single pair of HDs will be a very 1990ies kind of experience.
L2ARC or ARC (=RAM) doesnt auto populate through magic. If you constantly browse different pictures, they will all be loaded from your HDs.
Traversing folder structures, and viewing thumbnails could possibly benefit from a metadata only L2ARC or even a metadata special vdev (pool critical , if lost so is your data!).
But honestly you’ll want as much RAM as you can afford. Min 32GB, better 64GB.
If you want VMs and game servers, then the 16 GB RAm will not be enough!
I ahree with the other in this topic.
32GB would be the absolute minimum, I recoomnd, but 64GB the best!
My System has a Ubuntu VM, with 8GB of RAM it runs Crafty and Minecraft servers on it, but already a vanilla server pushes the limits of the 8GB slightly.
So, I prefer to recreate the VM with at least 32 GB RAM.
Also, I recommend, that you buy a NVMe M.2 SSd (1-2TB) to use it as the VM drive. I think, they are quite cheap now, and they will make a big difference.
What is your backup strategy?
What do you mean by 90s feel?
Browsing folders with photos instead of an app?
I’ve been doing this way for years.
Majority of photographers I’ve seen does the same strategy. It’s just so many raws from single shootdays, one shoot folder can be 3000 photos.
Not seeing what difference it makes with 2 hdds instead of several for the feel.
Also I forgot to say I am adding NVME for gameserver/VMs.
The plan is 2 nvme drives in raid 1 for some protection.
I’ll definitely be installing more ram up to 32-64gb thanks!
Since I’m accessing the same photos over and over again, I was hoping L2ARC would help a lot in that aspect.
Backup will be a second NAS, an old synology nas I used before, it’ll be in a second location.
I would also like to buy a cheap HDD for cold storage that I could store in a 3rd location.
There is some nuance being missed with regards to “browsing photos”.
Ironically, a Linux desktop (such as KDE) is superior to Windows when it comes to browsing folders over SMB that contain tons of photos.
The reason for this? Windows generates Thumbs.db on the server. The cached thumbnails have to be read over the network if you use Windows File Explorer. Meanwhile, most “desktop Linux distros” cache the thumbnails on your client. A Linux file manager, such as Dolphin, will read them from your local client’s drive or RAM.
Another point is “browsing vs. loading”. If you’re scrolling through a folder that holds many photos, you only care about the directory listing and the thumbnails. Only when you want to open a particular image does it require reading the file’s data from your server’s harddrives or ZFS ARC. Either way, it has to travel over the network. (Unless it’s cached locally in your client’s RAM.)
To reap better “browsing” performance, you want to prioritize metadata in the ARC.
I guess what I really wanted then is thumbnail/directory listing, being able to browse through a folder with 1000 photos and have the thumbnails load fast.
What are the best steps to accomplish that?
More ram helps the most?
Will L2ARC help with thumbnails, accessing the same folder several times?
The ARC option for metadata balancing is default 500, what should I put it to if I want quick thumbnail loading?
If there are other steps I could do, I’d love to hear them =)