Multiple ways to implement a VM, but which route to take? Why and how?

Louis2

Contributor
Joined
Sep 7, 2019
Messages
177
I intent to use one computer for both NAS and server functionality. Up to recent I did not manage due to bad vlan and IPV6 support. Trying the very latest SCALE version I think it could work (with correct vlan and ipv6 support :wink:).

However which VM-route to take, in which situation? (I am not a 'VM-expert')

There seems to be three ways:

1) virtualization
- build a VM based on an ISO; works great! I can connect the VM to a vlan etc.
* the menu's give me good impression about what to do / how to configure
* only problem is that it takes effort to keep the VM up to date

2) apps "Launch docker image"
- I need a good examples things like: ^apache <> wordpress <> mysql^ / ^axigen mailserver^ / ^graylog <> mongo db^
* pulling a docker container is no problem ...... however after that ...... it is completely hocus pocus to me
* the manage Docker Image menu and even more the Lauch Docker Image menu ..... hocus pocus
* not to mention the fact that there is / could probably be relation / dependency between Docker images (e.g. a application and a DB)

3) apps "applications"
- tja .... at this moment .... just my feeling of course .... but I do not think that those apps do offer the functionality and vlan support I had in mind
* the way to configure an app .... not clear enough

So my actual feeling is that I will go for a combination of solution 1) and solution 2)

However I would appreciate advice's and examples !!
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
Well, only one of the three you presented has anything to do with a VM, so doesn't the question answer itself? Neither "launch Docker image" nor the apps uses, or in any way relates to, a VM.
 

Louis2

Contributor
Joined
Sep 7, 2019
Messages
177
Yes and No, you are probably write using the definitions, however the three options all seems to be possibility's to reach the same goal: 'one server providing an alternative for multiple physical machines'

As stated the first one 'works' and is clear to me, however perhaps are option 2 and 3 better in certain circumstances!
But they should offer 'the same functionality' with the same 'security' (separation)
 

Basserra

Dabbler
Joined
Sep 21, 2020
Messages
28
I don't think I understand we understand your dilema here. The only "VM-route" is 1)virtualization the other two are containerization, which I'll also add that 2 & 3 are the same thing, with the exception that "3)apps" are mostly preconfigured (less customization). On the subject of VLANs; I haven't dug deep into it due to the orchestrator being k8s & the limitations of the TNScale_UI, I cannot seperate any container's networking. I would say use containers as much as you can due to lower overhead. But, if you need network seperation or an idea of greater seperation for security purposes, always use a VM in TNScale's case.
TNScale mainly uses Docker for containerization with k8s to orchestrate; LXC is another Linux containerization method that still differs from Docker as well as raw k8s (k8s is not Docker dependant). In my uses, I always try to use containers first, and if it's not enough/feasible, go virtual machines. Also, I'll add, Docker's mantra was always "one container per process" so if you need to combine say a webserver & database in one package, don't. Make a container for each then connect them together. But, if you can't, use a VM.

TL;DR If your use case is simple/home use, try to use containers. If you'd like more complex/unique use, use VMs.
Otherwise research the two seperately as I don't think comparing the two side-by-side is very helpful imo.

P.S. There have also been reports of issues regarding VLANs in TNScale with VMs in the past... So you may want to figure out those issues before going full send on VMs that're important to you. I never experienced them as I dealt with similar in Proxmox in the past. I think you have to fully configure VLANs & bridges before thinking your VM is fully deployed.
 

Basserra

Dabbler
Joined
Sep 21, 2020
Messages
28
Oh I forgot to add: Many people hate the limitations of TNScale but would still prefer to use containers. They create a standard VM and install Docker on it, along with Docker-Compose and Portainer(webUI based) to orchestrate it. You may want to experiment with containers in a VM before deciding which route is best for you.
 
Top