Question 2 Servers, 1 CPU --- What to use, should I do it at all ?

Spaxxy

Honorable
Nov 26, 2016
5
0
10,510
I couldn't figure out which forum to post this in, so if a mod needs to move the thread, please do.

I am trying to restructure my server soon, as I have programs that I would like to run that ONLY run on linux, and some that ONLY run on Windows. I would like to get information on how to run both efficiently and effectively. For the Linux programs, I am planning on using containers/Docker or such, while with the Windows 10 install the programs I use have their own core scheduling stuff, so it should be fine.

I know with Unraid you can do some technowizardry to run multiple instances of Windows or such with GPU passthrough and have everything working great, like LMG did when they did their 2, 7, and 8 (10) gamers 1 CPU videos.

However, I do not have the money to buy Unraid.

I did hear that I could use KVM to do most of what was done, with the exception that GPU passthrough wasn't as good (at the time of the post , which was ages ago) but all the information I have found in my google searches don't really tell me if I can do hardware passthrough that works reliably.

Most of what I am running doesn't require powerful/efficient graphics passthrough, I am using a GT 745 right now and it's fine. Now, while I don't need POWER, I DO need reliability. I am using this to host servers, not to play games, uptime is really important for me (not for all my servers, but for the majority of them I am not the main user).

Maybe, when it comes to uptime and such, I would be better off running two separate servers, and that might be what I do, though I would like to avoid building a whole separate box to keep in my room while I am already cramped on space...

The main programs that ONLY run on Linux are programs that I could run on a toaster tucked away in the corner, or possibly even a Raspberry Pi, however I do not own one. That being the case though, some of the programs I am running on Windows now would benefit from a switch to Linux, so it has been on my agenda to look into this for some time now.

The main servers I host are game servers for other people, though there are more than a few personal servers that require a mixed workload in there as well. I will note that I am near the limit of the capabilities of my RAM and CPU and my GPU does do quite a bit of work in some instances. I am upgrading hopefully soon, so I'd like to figure this out before I buy parts...

If anyone can help point me in the right direction, or maybe even tell me why I shouldn't or such, please do so!
 

Cj-tech

Reputable
Jan 27, 2021
461
53
5,740
I couldn't figure out which forum to post this in, so if a mod needs to move the thread, please do.

I am trying to restructure my server soon, as I have programs that I would like to run that ONLY run on linux, and some that ONLY run on Windows. I would like to get information on how to run both efficiently and effectively. For the Linux programs, I am planning on using containers/Docker or such, while with the Windows 10 install the programs I use have their own core scheduling stuff, so it should be fine.

I know with Unraid you can do some technowizardry to run multiple instances of Windows or such with GPU passthrough and have everything working great, like LMG did when they did their 2, 7, and 8 (10) gamers 1 CPU videos.

However, I do not have the money to buy Unraid.

I did hear that I could use KVM to do most of what was done, with the exception that GPU passthrough wasn't as good (at the time of the post , which was ages ago) but all the information I have found in my google searches don't really tell me if I can do hardware passthrough that works reliably.

Most of what I am running doesn't require powerful/efficient graphics passthrough, I am using a GT 745 right now and it's fine. Now, while I don't need POWER, I DO need reliability. I am using this to host servers, not to play games, uptime is really important for me (not for all my servers, but for the majority of them I am not the main user).

Maybe, when it comes to uptime and such, I would be better off running two separate servers, and that might be what I do, though I would like to avoid building a whole separate box to keep in my room while I am already cramped on space...

The main programs that ONLY run on Linux are programs that I could run on a toaster tucked away in the corner, or possibly even a Raspberry Pi, however I do not own one. That being the case though, some of the programs I am running on Windows now would benefit from a switch to Linux, so it has been on my agenda to look into this for some time now.

The main servers I host are game servers for other people, though there are more than a few personal servers that require a mixed workload in there as well. I will note that I am near the limit of the capabilities of my RAM and CPU and my GPU does do quite a bit of work in some instances. I am upgrading hopefully soon, so I'd like to figure this out before I buy parts...

If anyone can help point me in the right direction, or maybe even tell me why I shouldn't or such, please do so!
Personally, if I was hosting a variety of servers, I would setup a virtual machine for each. That way, if one is compromised or corrupted, the rest are still fine. Other benefits include advanced customization of the system for each instance and the ability to adjust the resources for each VM as needed. Windows 10 Pro has hypervisor built-in that allows you to run VMs with Linux or Windows.

It is hard to recommend hardware without knowing how many servers you are running, what type of server it is, how active it is, etc.

As for multiple servers, it’s good to have a contingency plan in case of complete failure. However, I’m not sure how serious these servers are… in either case, regular backups of each Virtual Machine or at least the important files would be necessary.
 

Spaxxy

Honorable
Nov 26, 2016
5
0
10,510
Personally, if I was hosting a variety of servers, I would setup a virtual machine for each. That way, if one is compromised or corrupted, the rest are still fine. Other benefits include advanced customization of the system for each instance and the ability to adjust the resources for each VM as needed. Windows 10 Pro has hypervisor built-in that allows you to run VMs with Linux or Windows.

It is hard to recommend hardware without knowing how many servers you are running, what type of server it is, how active it is, etc.

As for multiple servers, it’s good to have a contingency plan in case of complete failure. However, I’m not sure how serious these servers are… in either case, regular backups of each Virtual Machine or at least the important files would be necessary.

Thanks for responding!

I have pretty much made up my mind on what I'm doing, as I am writing this I considered some more problems with the application of this idea and me being on the edge looking into it more since I posted already, I'm basically giving up on this specifically in my case. I have elaborated down below as to my reasoning and case though, for future people who may find themselves in a similar place.

To respond to what you said:

I was planning on running Linux as the main OS and using Dockers and such to control performance usage for my different instances of programs.
I was planning on using the Windows VM to be the "dump" place, where the programs that ONLY run on windows would be (which, right now, the main one has options to select specific CPU cores and memory allocation, which is nice)
I am upgrading my server PC ASAP, and I'll be using a mix of new and used parts to do so. I HAVE already decided on the main hardware, other than the CPU which is ultimately going to come down to a R9 3900x or R9 3950x (used off eBay in both cases)
I don't backup as much as I should, and it's a problem. I honestly should invest money into new drives for my NAS box.

I'd like to clarify some things, more for people in the future who may be looking into this as I have:

I run a vast array of programs on my server box as it is right now: JellyFin, Game Servers, File Servers, etc.
I am planning on adding more Game Servers to my box, so I need to upgrade from what I have now.
I am building a "new" server for a single box and giving my friend the old parts, so building a second server and running them in parallel wouldn't solve the problem for me, unless I built 2 new computers.
Since I am upgrading either way, I wanted to look into this stuff because there are programs I want to use that ONLY run on Linux and have no "viable" alternative for Windows, but they aren't something I want to play around with getting to work in a VM.
The new programs I want to run, as far as I know, could probably easily be run on a decent Raspberry Pi or alternative.
However, I figured I'd look into this seriously because some of the game servers I run ALSO benefit from being run in a linux environment.
Thinking about it though, even after all this I'm gonna want to say that I'm almost definitely better off just buying a SBC for cheap...
For me, it is coming down to complexity and what will inevitably be performance loss.
Yes, the programs that will benefit from being run on a Linux box will benefit, but the programs which run in the Windows VM may have lots of problems, as well as performance loss due to overhead.
For me, I can just throw money at the problem and buy a Raspberry Pi to do the same thing.