Hello there,
I am rebuilding my TrueNAS scale and i need some advise regarding my pool configuration.
The hardware is:
CPU: E3-1245v6
MB: X11SSH-F
RAM: 32GB ECC DDR4 2400
Storage:
2x8TB IronWolf Pro
and i have some spare small nvme and ssd disks
I am going to host the following on the TrueNAS
Nextcloud
Plex (sonarr radarr prowarr)
minio
vaultwarden
some other apps like (adguard/wireguard/homepage/and other varios tools)
NFS/SMB shares
I am also going to use the NAS for kubernetes storage (iscsi/nfs dynamic provisioners).
I was thinking of something like a single pool with:
2x8TB(ironWolf pros) in mirror
the 256GB nvme to use as L2ARC
to add 2x120GB SSD in mirror for SLOG
to add 2x120GB SSD in mirror for Metadata(not sure if that would be enough)
What do you think ? Is it worth building such a pool and will it be properly utilized as it appears that I will have different workloads running on the NAS ?
It seems mostly fine considering your use-case. Just keep in mind that you’re only going to see benefits from SLOG on synchronous writes.
Only thing I’d recommend against is the special / metadata vdev. If you lose this vdev you’ll lose the entire pool, and to my knowledge (unless changed recently) you cannot remove a special vdev once added to a pool.
So the Metadata Vdev is not that important? What will I lose if I skip it ?
The idea is that I want somewhat not so slow HDD for nextcloud for instance so I can quickly browse the files(pictures mainly) and the DB and redis to be with good performance.
Every day is a learning day! Thanks for correcting me.
For your use-case, not much at all. Metadata can be cached in ARC/L2ARC in any case.
You won’t see any benefit from using SLOG either unless like I mentioned you’re using sync writes. From what you’ve listed your writes are by and large going to be async.
More sensible setup might be to create a small SSD (2x2-Wide Mirror perhaps) pool to store application data (vaultwarden, etc) instead of having it on spinning disks, then store any bulk data on the larger HDD pool (i.e. plex media, which can then be mounted into the app via a host path).
Actually you are right, I may end up adding only L2ARC (the spare 250GB nvme that I have) to the big DATA pool.
Create one small pool FAST-DATA for instance with 2x1TB SSDs mirror
Host all the apps on the FAST-DATA pool including the databases(make snapshots and backups to the DATA pool + maybe backblaze) and use the big DATA pool only for NextCloud Data and Media files and such
I am only concerned about the iscsi performance if i chose the DATA pool for provisioning kubernetes volumes there.