What are current recommendations for boot and applications pool size and type?

Hi guys, long time reader, first time poster.
I’ve done extensive search that came out with somewhat conflicting results, so I decided that I’d better ask. I’ve almost completed the process of putting together the necessary hardware for SCALE, but I’m uncertain about storage for boot pool and apps pool, namely:

  1. Device capacity for boot pool? The general recommendation revolves around 16GB, but I’ve seen mentions that SCALE writes system logs to boot pool, and reports that failed/misconfigured apps may also use boot pool for their data, which may fill 16GB very quickly and make system unresponsive. So is 16GB recommendation still up-to-date? Or is it 32GB? Or 128GB?
  2. Should I care about mirroring of the device used for booting? I’ve read opinions that TrueNAS should be generally regarded as somewhat of an appiance firmware - it’s no big deal if it’s lost, just reisntall it and import data pools. Is it still the case, or installation on mirrored devices is recommended?
  3. How latency-sensitive and bandwidth-sensitive is TrueNAS for its boot device? Is it recommended to install TrueNAS on NVMe, and will there be noticable difference from SATA SSD in terms of performance and responsiveness?
  4. What are general recommendations wrt “rewriteability” or TBW for a boot SSD? Are they subject to being rewritten often when they serve for a boot drive?

Same questions go for apps pool:

  1. Recommended size. Is 0.5TB sufficient or should I look at 1TB drives?
  2. Redundancy. Should apps pool be given any mirroring?
  3. Technology. Is NVMe definitely preferrable over SATA for this pool, or there’s not much difference?
  4. Longevity. Are apps pool devices rewritten often and so should I look for a datacenter-quality SSD, or can get away with more consumer-like storage, e.g. Crucial MX500?

Thank you in advance for answers!

So don’t misconfigure your apps. This should be a non-issue. At least 16 GB is fine, though it’s unlikely you’ll find a SSD that small.

IMO, no. Keep a current backup of your config file, and you’ll be fine. It’s unlikely the system would boot from the mirror anyway.

Not at all. Sure, booting will be slower with a slower boot device, but most of the OS is going to live in RAM most of the time due to ZFS caching.

For apps, well, I have 2 TB NVMe SSDs mirrored, and around 200-300 GB used–that’s with storing both the apps and much of their data (e.g., Plex metadata, but not the media) there.

16gb Is the minimum, enough for many use case, but as already said will be hard to find SSD so small.
Exception for 16gb Optane/pseudo Optane NVME that are easy to find around 3~4€ each: i use them for both my systems and they are very good for the little price (but need to mention, they not supporto smart test)

IMHO, no. Better have a spare disk not plugged where install the os fresh + config upload on need (important part Is have always a fresh backup config, make a bootable device - plug the disk - install require literally few minutes)

IMHO not so important. What you will probably care about more than that Is to preserve SATA port for data pools instead.
USB - SATA adapter are viable, better a pciex - NVME adapter, they work fine also in X1 slots (like i’m doing)

IMHO also not so rilevant. Just as comparison my boot pool has 650gb of data written in 5300 hours, i can safely assume that he will die way before reaching his limite for other reasons :smile:

I think that here your are asking a wrong question. You should understand what Is your “size” goal, keep It a bit higher, and then understand what Is the best compromise by disk price - redundancy you need

IMHO, yes. Redundancy on app pools in the past has saved me to restore a backup/service down twice

Not definitely but IMHO the better choice

This Is totally related on apps you run

Thank you for your inputs! I think I have some food for thought and for further planning.
It just so happens that I do have An M10 Optane 32GB drive, but my motherboard has only one m.2 slot and no SATA headers. I have some free hybrid SATA/NVMe u.2 slots though. So the dilemma is either

  • to install TN on this m.2 drive and use two u.2 NVMe drives for apps pool (which sounds like a bit of waste of disk space and money, as they don’t make them in small sizes AFAIK), or
  • to buy something like m.2 → 6xSATA card on ASM1166 controller and use 1 SATA drive for TN install and 2xSATA for apps. I’ve seen threads and discussions showing that ASM1166 is generally frowned upon around here, but I won’t use it for data, just for OS and apps.