I asked ChatGPT to recommend a TrueNAS Scale storage configuration for my config. How would you rate its answer?

I’m only starting out with TrueNAS Scale and there’s just so much information out there, plus everyone’s first response is RTFM, I thought I’d ask your friendly neighborhood AI what it would recommend for the drives I have.

The question:

I have four 12TB hard drives, two 1TB nvme drives, a 4tb nvme drive and a 280GB Optane drive. How should I set up storage in TrueNAS Scale so that large files are stored on the HDDs and apps and VMs use the 4TB drive?

The answer:

To set up your storage in TrueNAS Scale with the given drives, you can follow these steps to ensure large files are stored on the HDDs and your apps and VMs use the 4TB NVMe drive:

Step 1: Set Up Storage Pools

  1. Create a Pool for HDDs:

    • Pool Name: HDD_Pool
    • Disks: Use the four 12TB hard drives.
    • RAID Configuration: Choose RAIDZ2 for better redundancy and performance (this allows for two disk failures).
  2. Create a Pool for the 4TB NVMe Drive:

    • Pool Name: App_Pool
    • Disks: Use the 4TB NVMe drive.
    • RAID Configuration: Since it’s a single drive, it will be set up as a stripe (no redundancy).
  3. Create a Pool for Smaller NVMe and Optane Drives:

    • Pool Name: Fast_Storage
    • Disks: Use the two 1TB NVMe drives and the 280GB Optane drive.
    • RAID Configuration: You can choose to mirror the 1TB NVMe drives for redundancy and use the Optane drive as a special vdev for metadata and SLOG (Separate Intent Log) to boost performance.

Step 2: Configure Datasets and Shares

  1. Datasets for HDD Pool:

    • Create datasets within the HDD_Pool for large files and other bulk storage needs.
    • Example Datasets: Media, Backups, Archives.
  2. Datasets for App Pool:

    • Create datasets within the App_Pool specifically for apps and VMs.
    • Example Datasets: VM_Storage, App_Storage.
  3. Datasets for Fast Storage:

    • Create datasets for high-speed access needs within the Fast_Storage pool.
    • Example Datasets: Temp_Data, Cache.

Step 3: Configure App and VM Storage

  1. For Apps:

    • When setting up applications, configure their storage to use the App_Storage dataset from the App_Pool.
  2. For VMs:

    • Configure VM storage to use the VM_Storage dataset from the App_Pool.

Step 4: Configure Network Shares

  1. Create SMB or NFS shares for the datasets in the HDD_Pool for access to large files over the network.

    • Example Shares: \\truenas\Media, \\truenas\Backups.
  2. Configure access permissions according to your needs for different users or services.

Step 5: Optimize Performance

  1. Enable Caching: Make use of the Fast_Storage pool for caching to enhance performance for frequently accessed data.
  2. Set Up SLOG: Use the 280GB Optane drive as an SLOG device to accelerate synchronous writes, improving performance for apps and VMs.

By organizing your storage in this manner, you ensure that your large files benefit from the high capacity of the HDDs, while your apps and VMs take advantage of the high speed of the 4TB NVMe drive. The additional NVMe and Optane drives will enhance overall system performance through caching and logging.


Then I tried to install Jellyfin app and it offered to set up its own storage. So apparently (some?) apps can do this for themselves, great, so then how much do I need to be involved with storage configuration?

I’m coming from an older Synology/DSM where I just created folders and accessed them. I mainly want to run Jellyfin or home theater and store backups from devices at home. Also run some lab stuff when I wanna try out something new, be it k8s, high-availability, VMs.

I’m not a fan of multiple pools. The entire point of ZFS is to have one pool for all your storage to minimize work and trouble. You may as well use LVM or partitions if you plan to fragment your data.

2 Likes

True…

We deploy multiple pools, but have to design for future recoveries and tiered data.

Our HDD’s will be in vdevs of 6 in RAIDZ2 when possible. This is because most HBA’s use 4 wide SFF connectors and we prefer to keep the total number of drives per connector less than the redundancy of the vdev.
ie: 2x 8i HBA’s serving a 12 drive backplane have at most 2 drives per SFF connector so if a channel is lost, the ZRAID2 array is recoverable.

We’ve had controllers drop out and write garbage to drives on a single channel.

1 Like

If the system has to serve very different workloads, multiple pools make sense.
For example an NVME pool for ISER Luns with databases on it and an HDD pool for NAS with more sequential workloads is not a bad idea

1 Like

I mean, for this requirements, I wouldn’t use the ChatGPT suggestion either and since in my world everything is backed up twice anyway, I wouldn’t do Raidz2 with only 4 disks, since I don’t need the availability at home and if something goes that wrong you just have to restore from backup.
Hence RaidZ with 4 HDD, the 2 x 1TB NVME as special vdev for metadata with everything smaller then xKB (determine your requirements) on the meta vdev.
The 4TB NVME as VM storage with auto replication to the HDD pool, done
The optane drive, I dont know check where you have sync writes and put it there

1 Like

I think context is missing in this topic: how much usable storage do you need? How reliably you want it to be? What’s the use case?

Going off of what you have and arbitrarely deciding for a mixed use case I’d say you should set up a RAIDZ1 with the four 12TB HDDs, create a metadata mirrored pool for the 12TB HDDs using the 1TB SSDs, the 280GB Optane to be used as SLOG and the 4TB as cache.

The 4TB SSD is wasted as cache, not gonna lie, but I think it’s the only meaningful use you can make for it and being that big you could run VMs off of it and it would all be consolidated in one pool.

you would probably be better off getting another 4tb nvme drive, and then building a 4tb nvme mirror pool, and a 2x VDEV 12tb mirror for the HDDs. you will have the same amount of HDD space but more performance and easier expansion.

your needs do not seem to be in line with needing a SLOG or any advanced features. you MIGHT get away with doing a mirrored 1tb ssd pool instead of buying another 4tb disk depending on how much space you need. then put the 4tb nvme disk in your gaming PC.