Needed RAM calculator

Hi, I think this question has a simple answer, or I hope so. I want to switch from UNRAID to TrueNas. From what I read in the docs it is really hungry for RAM. The min specs say 8GB + 1GB/1Tb. But that seems kind of extreme for my case. I plan on having 3 times 4 disks a 18-20TB as Z1(1parity disk every 4 drives).
That would be 8GB + 240GB = 248 GB.
Is that really how much RAM is needed and if is it then maybe better to build a new UNRAID system instead?
Maybe to my usecase:
I would run proxmox and install truenas as VM passing the complete PCIE HBA in it. I plan on mounting back to proxmox to run 2 Windows VMs one for development and one for gaming. In addition a Linux VM with all my current docker installation, around 30 containers. Nearly all of the files are media files, private Fotos and documents used from plex, iimich, gitlab-ce, nextcloud.
I am the only „heavy“ user of the system.

Would be great to get some guidance or links.

I had 700TB with 64gb of RAM without any problems. The ‘rule of thumb’ is outdated.

More RAM is more better, but you absolutely do not need 1gb/1tb.

I’m running 47 docker containers, 3 incus containers, and 2 linux VMs with TrueNAS on bare metal. 70-80GB of RAM is in use by the OS and services, depending on activity. Of the 70-80gb in use, torrent clients are using 46gb of it.

2 Likes

Agree that the rule of thumb is outdated. But 8 GB is the bare minimum, and 16 a practical minimum. Are you planning to run TrueNAS as a VM, and then further VMs inside TrueNAS? Why not just run them under Proxmox? The containers I understand, particularly the ones that would have direct access to data on the pool, but the VMs don’t make much sense to me.

Given the number of apps, I’d recommend not less than 32 GB + whatever you allocate to the VMs (if you do intend them to run under TrueNAS). More is always better, of course.

1 Like

You misread. It really isn’t. 8GB total RAM is totally fine.
But, the more RAM you have, the more RAM you can use for ARC.

Forget that stupid rule of thumb. It isn’t true.

Please don’t. It is extremely complicated to do right and you get and complex setup in the end. Also a TrueNAS NAS appliance has very different needs from a Proxmox hypervisor. So I would not mix the two together.

I don’t know what you mean by mounting back (hopefully not mounting their storage from TrueNAS to Proxmox) but don’t do it. Gaming on VMs is a PITA. And then there is anti cheat.

Coming from UNRAID, you have to understand that ZFS is a different filesystem. ZFS lets you fuck up things easily. Here are my newcomers rules:

2 Likes

I think, the 1GB/1TB of storage refers to the estimation in case, you use deduplication on your datasets. (but according to others, who actually use it, you are better off calculation with 5GB/TB of storage)
IN general the system will work fine with even 8GB, if you ONLY use it for the NAS functionality without deduplication.
(it will use it primarily as a write cache, so the data arrives from your network will be stored in RAM first and then copied to the storage. If you know this mechanism, your network speed (lets say Gigabit) and the raw write performance of your array, (lets say, sustained 150MB/sec) then TrueNAS needs almost no RAM cache.)
Of course more the merrier, (I would recommend 16GB for convenience)
If you however want to use containers or VM-s or massive deduplication, then you need ridicolus amount of RAM.
SO, in summary:

  • If you only use your system purely as a NAS, you can get away with 8GB of sysfet RAM
  • HOwever, even in this case, I recommend at least 16GB
  • If you want to use deduplication, it is beneficial to partition your storage to save on unneccessary RAM usage (create separate partitions for the data, that does not benefit from dedup, like audio and video content from the ones that does (multiple computers backup from oyur network (if this scenario applies)
  • Avoid deduplication, if you can (see above, plus, once you switched it ON on a dataset, you cannot disable it only by moving data to a place where it is disabled (I might be wrong with htis, if this is the case, please correct me!)
  • If you want use containers (which I do not really recommend, only if you are exerienced with them) you need at lest 32 GB
  • If you want to use VMs too, then 32GB is absolute minimum but 64GB (or even more) is better. (TrueNAS is not the best as a hypervisor according to my experience. There was bug in memory balloning, therfore you must provide the full RAM from beginning to the VM which will not be usable for the main system or for other VMs.)

I fully agree!
Also I dont recommend TN as a hypervisor (and to be honest not even for containers) .
It is perfect as a NAS appliance on bare metal or even a VM under for example Proxmox (I am migrating all my servers to this structure.)

1 Like

I disagree!
If you want to use Containers and VMs, virtualizing TrueNAS is the least painful solution!
I had previously my main NAS TrueNAS on bare metal and I used it for apps and for VMs. My georedundant backup was Proxmox with virtualized TrueNAS, and 3 other VMs.
Both were running for like 2 years now.
The local one was a constant pain to run (Ix always ducks around pulling support for stuff, the Hypervisor is buggy and low performance) while the georedundant one was worked after like 12 hours of setup and testing, and works reliably ever since. (my biggest problem is that some time the DuckDNS update crashes and I am not able to log in remotely. BUt then I check the actual IP in PLex and I can log in and restart the update app)
I decided to migrate both my local systems to this structure.
Under Proxomox, if your storage is on a HBA, you can forward the HBA with 3 clicks to the VM and it works immediately. (handing over separate HDDs by UID is more complicated, but not impossible to achieve)

I think, he means, that he wants to use (mount) the virtualized TN storage to be able to used in the two virtualized Windows machines. That is completely possible, since I do it in my new layout. (It is even nice under Proxmox, since the virtual network between VMs is a 10Gbit one (you save several hundreds of USD not needed to purchase 10GB external network.) and it actually works out of the box, not like under TrueNAS)

It will work, but you must fight WIn11 a lot to be able to work along with Proxmox (but I suspect here withy ANY Hypervisor…) MS did a lot of nasty things with Win11 recently that are so annoying.

  • You cannot even install it without the Virtio dirvers for storage and hetwork.
  • You must disable a lot of security features (I think it is called VBS, that makes some constant memory check on your RAM, making it really slow)
  • For me disk encryption was switched ON by default, and got ridiculously slow storage speed ona Gen3 NVMe drive
  • The VM Win11 does not answer to ping by default, you must enable it from the security menu
  • RDP does not work with the computer name, as it is stated in the message, after you enable it, but only if you connect through direct IP. (I think this could be solved by adding it to your local HOSTS file.
    This last 4 points was just the ones I had to solve yesterday. Before, Win10VMs worked without any problems after install.

That is something different. OP is talking about running a virtualized TrueNAS on Proxmox as hypervisor.

Proxmox is a great hypervisor and not so great NAS.
TrueNAS is a great NAS and not so great hypervisor.

Ok, but even that use case is meaningless. For the price you pay to get your network to 10GBit/s, (which is still horribly slow for modern games) you can get a local NVME drive that will run circles around TrueNAS. If you really need to offload games because you have so much of them, even a local HDD is a better solution.

Out of curiosity, where did you read this? I can’t find that rule anywhere in our current documentation.

1 Like

For games, or even as a main drive I also would not recommend this method.
For VM homes, I use a PCIe gen3 NVMe in Proxmox and use as Container and/or VM home.
Such NVMes are relatively cheap today (1TB for 50 USD is quite ON for such a purpose.)
And Gen3 is about 3-4000MB/sec easily.
(If wants more, can do 2xstriped drive with proper and frequent snapshoting and backup, like snapshot 30 minutes and backup every night to a 2TB HDD)
But for mass storage the samba shares are totally fine)

1 Like

I suspect, he mixed it up with the need for deduplication.
That has similar requirements. (but I read about it like 3 years ago, so my knowledge can also be outdated.)

I doubt it; that likely would have said something closer to 5 GB / TB. And that’s likely also out of date with recent changes to dedup.