Guidance for meeting my requirements

couchbed

Dabbler
Joined
Dec 14, 2022
Messages
19
Hello, all! I've spent the last few days testing and researching to figure out a setup that will work well for me. My head is spinning a bit and I have some ideas, but I'm hoping that more experience people here can help to point me in a direction that is least likely to waste my time.

I'll start with the requirements that I am trying to meet:
1. A safe and somewhat fault-tolerant NAS that I can use to store the majority of my data.
This part is fairly straight-forward. I'm planning to get two 4TB drives and mirror them. I also plan to set up an off-site backup at some point, but that's outside of the scope of the current project.
2. Secure access to my data from anywhere in the world
I have researched a lot about Nextcloud and it looks like the solution for me. However it seems that creating remote access is not so straight-forward. There are a lot of ways to do it and some look more secure than others. The most attractive option that I found is using a Cloudflared tunnel, but I've had trouble getting that set up. I'm also considering having a VPN set up so that I can still access SMB shares on my laptop from outside the network.
3. An instance of Home Assistant running on the TrueNAS server
I want to use Home Assistant, so if it can run on this box, that simplifies things a lot for me.
4. Secure remote access to the Home Assistant instance
I've seen people accomplish this with Cloudflare as well, so I'm hoping I can kill two birds with one stone there.

Second, here is the hardware that I am working with:
The system is built on a Dell Optiplex 7010 SFF with a 2-core 4-thread i3 cpu. It currently only has 4 GB of RAM, but I have a set of 16 GB in the mail to replace that. It's currently booting off of a 16 GB SD card, but I've got two 64 GB SSDs in the mail to set up a mirrored boot pool.

Here's what I've tried so far:
I installed TrueNAS CORE and got things working pretty smoothly. I installed the Nextcloud app and that spun up and worked on the local network great. However, I then discovered that the Home Assistant app for CORE is no longer being supported, and I also couldn't find a great way to set up secure access with Cloudflare. I believe that I could create a VM in CORE to accomplish those things, but I'm concerned about trying to run a VM on the admittedly limited hardware I have. That brings me to:

Question 1) With an i3 cpu and 16 GB of RAM, would I be able to run a VM and have usable performance? The NAS will only have max 2-3 users hitting it at once, so I'm not asking for much, but that CPU is a pretty small pie, so the less I can slice it up the better.

After doing some more research I discovered that TrueNAS SCALE might be a better option because I can run the services I want (Nextcloud, Cloudflared, Homeassistant) as docker containers that don't have to have a dedicated amount of memory and will just use what they need when they needed. I installed SCALE and have been a bit disappointed with it so far. It is much less responsive than CORE was, and the things that I've tried to do on it that just worked on CORE just haven't worked on SCALE. Nextcloud hangs up when deploying and doesn't run half of the time and I have to try running it again. The settings are all very obtuse and hard to figure out if you don't already know what they do.

Question 2) I know I'm currently running SCALE with less than the minimum requirements for memory, but is that what's causing the issues? I will find out when the extra memory arrives, but if you have any insight in the meantime, please let me know.

I know that SCALE is much younger than CORE and half of my problems with it are that I can't find good documentation and tutorials on how to set it up to do what I want. I'm not confident in Linux (or FreeBSD) so getting into the CLI and poking around myself is a bit useless at the moment. I want to learn so that I can solve these problems on my own, but I also don't want to waste a bunch of time if it just isn't going to work. So to help me not bark up the wrong tree,

Question 3) Given all of the above, would you choose SCALE or CORE for my system? Are my requirements achievable with CORE on my hardware? Any recommendations for the exact apps/containers/services that can help get the job done?

I appreciate any advice you have for me. Either way I will keep chipping away at the problems, but anyone that can lend a light in the darkness would be amazing. Thanks!
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
Question 1) With an i3 cpu and 16 GB of RAM, would I be able to run a VM and have usable performance?
Not officially... 16GB is the minimum, so with that, file sharing is covered, but no apps/VMs.

Question 2) I know I'm currently running SCALE with less than the minimum requirements for memory, but is that what's causing the issues?
8GB is known for many years to be the smallest safe amount of RAM to be runnning ZFS without issues, so with only 4GB, probably.

Question 3) Given all of the above, would you choose SCALE or CORE for my system? Are my requirements achievable with CORE on my hardware? Any recommendations for the exact apps/containers/services that can help get the job done?
For the file sharing/VPN/nextcloud points, certainly fine for both... many people do those things with success on both platforms (and usually use a reverse proxy to make it work in a more user-friendly way than needing a VPN).

For Home Assistant, the reverse proxy option is also helpful and can work on both.

You'll probably want to run it as a VM (if you want add-ons), so there's that, which then raises the issue that on CORE, you can't really pass through USB devices to a VM (only entire PCIe USB controllers... which is done by a bunch of folks with success using a USB add-on card) on CORE.

It's probably possible with SCALE, but may be less reliable than using a PCIe passthrough card, so you may even want to do it there.

All that assumes you will eventually want something for connscting your devices via a USB device like a zigbee or z-wave stick or something similar. If you don't need that, ignore the last few lines, either platform is fine.
 

couchbed

Dabbler
Joined
Dec 14, 2022
Messages
19
Thanks for the thoughtful answer! That is helpful.
Not officially... 16GB is the minimum, so with that, file sharing is covered, but no apps/VMs.
It looks like the official docs say 8GB: /_includes/tnhardwareguide/#minimum-hardware-requirements

Official guidelines aside, realistically would you expect it to work alright with 16 GB? And would containers in SCALE be a more efficient use of the limited resources than a VM on either platform?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
It looks like the official docs say 8GB: /_includes/tnhardwareguide/#minimum-hardware-requirements

Yes, it usually takes a little while for this to ripple down. The download page clearly says 16GB. I would expect the documentation will follow when another release rolls through.

And would containers in SCALE be a more efficient use of the limited resources than a VM on either platform?

Containers (Linux) or jails (FreeBSD) are definitely more efficient at resource use.
 
Top