Whilst the title is a little catchy, I'm currently running 11 virtual machines on the cheapest piece of hardware you can imagine. This is my setup and how I made it.
Some days ago I wrote about cheap hardware. I bought some of those thin clients. Mainly because they were cheap. I wanted to compare this thin client stuff to my raspberry pi, maybe replacing my raspi, selling it for the price of 4 thin clients or so.
I bought a hell of a power machine (thin client) for 25€ packed with:
- 1,4 Ghz Dual Core
- 4 GB DDR 3 RAM
- 16 GB Flash storage
I did not append the storage because a 128gb storage card costs the same as the "machine" itself.
After installing the smallest netinstall debian without UI, I ran some stress tests to see how the passive cooling performs. Nod good, not bad.
Then I installed docker to test a small docker managing engine, sceptical if docker runs smoothly on such a machine. After docker was installed, I ran the docker command for installing yacht, that manages docker containers but runs in a container itself. Containerception.
Having yacht set up, I needed additional containers to manage. Having heard of Homer (a slightly overrated home-dashboard), I installed a container for it. Now I need stuff to link in Homer. As I own some power tracking devices which communicate over the network, I spun up docker containers for IOBroker, influxdb and grafana. Those three tools work perfectly together to collect, store and visualize data.
Additionally I installed some containers to test some software. This software not worth mentioning imho.
As IOBroker is pretty heavy on RAM (depends on how many adapters you install) and usually uses some cpu, I finally had some load on the thin client, which is still idling at around 3-5% CPU load, consuming about 10W. When using the software actively (creating dashbords, configuring adapters in IOBroker etc.), the system gets pretty busy but imho still has enough power to get the job done without making you wait.
Currently the setup consumes 6.4GB of storage, 1.8GB of ram and up to 5% CPU.
Using a configuration like this you are able to quickly spin up stuff. You can also easily connect the services to each other, uninstall software you don't need without harming or re-configuring the host system.