I have done a lot of reading here, actually just read a thread with somewhat similar hardware to me, but I’m still not really sure what to do here.
Hardware is an iXSystems TrueNAS Mini X+ system (I have physical space constraints and the small but capable chassis was ideal). I’ve got the following:
- Atom C3758 (8-cores, 2.2GHz)
- 128GB ECC DDR4 - 4x32GB (self-upgraded from the stock 2x16GB)
- Factory 250GB WD Blue NVMe (boot)
- 5x Seagate Exos X18 18TB [ST18000NM000J] - SATA
- 2x Crucial MX500 4TB [CT4000MX500SSD1] - SATA
- 1x Radian Memory 8GB RMS-200 in PCIe slot (gift from a friend)
If you’re not familiar with the RMS-200, these are basically RAM drives with a capacitor-backed 8GB flash storage, designed for massive write abuse. The RAM auto-copies to flash in the event of power loss, so the actual flash on the card doesn’t get written much. It presents to the OS as an NVMe drive. The speed is somewhat limited because it’s an x8 card in an x4 slot here, but it’s still really quick.
Planned usage:
- MacOS TimeMachine backups from my laptop - It is on WiFi 6E so I expect it to be able to hit ~1Gbps even though it is wireless most of the time
- SMB (or NFS??) file access for the Mac and my wife’s Windows laptop - Apple Lossless music stored here from all of my CDs; personal home folders/document storage; planning on ripping BluRays and DVDs to here as well (hence the relatively large amount of storage for a small system)
- Some sort of media/video sharing server (likely Jellyfin)? Due to lack of transcoding hardware on the TrueNAS hardware, I may instead just use it as storage space for the media, and run Jellyfin on a different system I have… meaning that the media would likely just be an NFS or SMB mount to a different Linux system.
- Backups from one or two Proxmox systems running other VMs (e.g. Jellyfin, maybe a PiHole VM, my virtualized OPNsense router, etc)
I might consider running some smaller TrueNAS “Apps”/utility containers on the TrueNAS system (likely something like sonarr/radarr/etc to yarrr some media), but the lack of transcoding hardware means that a “media server” probably needs to run elsewhere and the NAS will mostly just be a NAS.
I was thinking:
- RAIDZ2 of the 5 spinners - main pool (Z1 seems unwise with 18TB drives, no?)
- Mirror of the two SATA SSDs - flash pool - “app” / VM storage?
- Radian Memory as SLOG for the main pool? But I don’t know how much benefit I’ll get out of the scenarios above since I doubt there are a lot of sync-writes…
TL;DR: I’m mostly concerned with whether I should do Z1 or Z2 on the main spinning pool of 18TB drives, and then how to best utilize the pair of 4TB SATA SSDs and what to do with the 8GB Radian card.
Additionally, what’s the deal with swap on SCALE? I actually created the main pool and flash pool already (no data so I can re-do them), but all of those disks had 2GB partitions created for swap, but then swap isn’t actually turned on. I feel like having swap on the spinners is kind of pointless, so maybe I should re-do the pool so I can reclaim that 10GB of storage? 16-32GB carved off of each of the SATA SSDs would make more sense as swap… I doubt that I need 128GB of swap to match the 128GB of RAM? Chris Down, who has worked on Linux kernel memory management, suggests that Linux machines should have swap…