Jump to content

FreeNAS Hardware Requirements for VM and Docker Containers

Hey guys, I wanted to ask for some advice for a capstone project I have in which I want to build a server that can run multiple VMs and Docker Containers for applications. I wanted to know what kind of CPU I should go for that can have the capabilities for these requirements. Since I'm on a tight budget, I'm going to use the spare parts I have:

M.2 Gen 3x2 256GB with Read speeds 1000MB/s and Write speeds 800MB/s

8GB (2x4) 2666MHz RAM (Non ECC) 

I know that the Non ECC will cause more corruption but I just need the RAM for this project. I'll get the PSU, Motherboard and Case but I wanted to get an idea for a CPU that can run what I require of the FreeNAS server (TrueNAS). I was thinking a Ryzen 3 3200G which I found for $140 CAD since it has an integrated GPU. I know of the short comings of the Ryzen series in a NAS server (can't use ECC RAM and capabilities limited) but due to the requirements of VMs as well as running apps on the Docker container, I think it will be ok. If a cheap Intel CPU can run the server just fine, I'll probably pick that up but I don't know about it's iGPU if it will run well under that load.

I'm open to any suggestions.

Link to comment
Share on other sites

Link to post
Share on other sites

What containers and vms are you running?

 

Id go with a different os as FreeNAS/TrueNAS isn't great at vms. How about proxmox?

 

How about a i3 10100, should be a bit faster than the 3200g, and also has a igpu, and should be cheaper. The igpu performance won't matter at all here.

 

Id get more ram, thats the biggest limit for vms.

Link to comment
Share on other sites

Link to post
Share on other sites

46 minutes ago, Electronics Wizardy said:

What containers and vms are you running?

 

Id go with a different os as FreeNAS/TrueNAS isn't great at vms. How about proxmox?

 

How about a i3 10100, should be a bit faster than the 3200g, and also has a igpu, and should be cheaper. The igpu performance won't matter at all here.

 

Id get more ram, thats the biggest limit for vms.

The containers would run only one application for each container and solely that application (for example, one container would only run Matlab, and another container would only run Photoshop. Something like that.) The VMs would just be different OS like Windows and Linux such that different users can use their own os. This is more of a proof of concept for me and stuff will change a bit but that's kind of the jist I'm going for. I wanted to try that on a NAS I would build.

 

As for Proxmox, I'll check that out and I'll check the CPU out too. As for ram, would a total of 16gb be good or more?

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, Kombonut said:

The containers would run only one application for each container and solely that application (for example, one container would only run Matlab, and another container would only run Photoshop. Something like that.) The VMs would just be different OS like Windows and Linux such that different users can use their own os. This is more of a proof of concept for me and stuff will change a bit but that's kind of the jist I'm going for. I wanted to try that on a NAS I would build.

 

As for Proxmox, I'll check that out and I'll check the CPU out too. As for ram, would a total of 16gb be good or more?

Can you make a list of containers and vms, and how much ram those need?

 

ALso docker is linux mostly so apps like photoshop isn't running in a container. Also I don't think docker supports a gui.

 

Id aim for 32gb of ram if you can, but really depends on the exact apps your using.

Link to comment
Share on other sites

Link to post
Share on other sites

38 minutes ago, Electronics Wizardy said:

Can you make a list of containers and vms, and how much ram those need?

 

ALso docker is linux mostly so apps like photoshop isn't running in a container. Also I don't think docker supports a gui.

 

Id aim for 32gb of ram if you can, but really depends on the exact apps your using.

I haven't thought ahead of exactly what applications I would want to run, exactly what VM to run or quantity of VMs or applications. For minimum requirements, I wanted 2 containers for 2 programs with the required RAM it will need based on the application I choose and 2 VMs: Windows and Linux, for one user (will add more VMs for users). I wanted to scale up to see what the system I make can be capable of. This is an independent class project for my college so I'd rather have it small scale for the time I have to complete it.

 

I checked out Proxmox and it aligns with the idea I have. I'll do more research and hopefully understand more with what I have to do. Thanks for the suggestion of Proxmox.

 

Also, docker has a GUI using Portainer and it can run Windows programs from what I read on the website.

 

Edit: I see what you mean for Photoshop. Probably can't run but it's more of an example then what I want.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×