Virtual Machines | How It Works

Virtual Machines | How It Works

Virtualization

Virtualization is when you take the resources your computer is capable of and split it into multiple, capable, individual machines. If you had to write a dozen novels by tomorrow, which would you rather do; write out the entire book in sequence with one pencil? Or, have 12 assistants and each one writes its respective novel simultaneously? Virtualization allows you to more efficiently use what you need it to do when you need it.

In server terms, you have Windows, you only use your computer to write essays on Word, maybe organize some math in Excel, and scroll through Facebook on your browser. All of these together only use 20% of your gaming computer's potential. So, you split up your overpowered processor to allocate 10% to a Plex server, using 100GB of your 2TB hard drive. You now have a virtual machine. If you specifically allocate a dedicated amount of resources to a particular task, that is virtualization. The best part of this is that the two parts don't mix.

Say your Plex server got a virus. Since the resources will not touch your main machine's hardware as it is logically, and for all intents and purposes, physically separated you can just wipe that machine and start over and nothing will have happened to your main computer.

Type I and Type II Hypervisors

A Hypervisor is what handles the containment and installation of virtual machines inside of it.

A Type I hypervisor is where you use the virtualization software as your primary operating system, and everything inside is like an application. Imagine Windows 10, but every icon you click is an operating system. You can actually have multiple different installations of Windows 10 on the same machine.

Similarly, a Type II hypervisor is where you have software installed on your main operating system that you then use to host virtual machines inside of. Where before you would boot into ProxMox, now you have your computer booting into Windows, and you open an application that you can create and use virtual machines. The issue with this occurs when you want to shut down your computer or restart for updates, you also shut down the virtual machines. With ProxMox, you can shut down the windows machine but still have the other operating systems running.

Hypervisor Type 1 Performance

My home server is the only computer I have to really invest in because I have everything hosted on it. I then use Mini-PCs everywhere else I need a computer like my TVs to stream all the content from my main server! I can stream Steam games from a Windows VM, host a website on a Debian container, utilize PiHole to block ads on another Debian container, and even use my server as my home router with OPNSense and save money on networking hardware. This setup makes it so I not only have the benefit of security but if I had a bad patch or anything go wrong I can reset that particular VM back to a working state or wipe it entirely and not panic about losing anything permanently on my other machines.

I'm even using it to host a few websites, like the one you're seeing now! It's been pretty useful for many reasons! A benefit to ProxMox is that it operates headless, so once it's installed, it can just hang out in your server rack or closet!

Headless Operation

When you run a computer without a monitor, mouse, or keyboard, it is considered "headless". There is no "head" to the beast. When you run a server on ProxMox, everything can be run from any internet browser on any computer so you really have no use for a monitor or keyboard other than the initial installation.

When you try to access ProxMox, you will be navigating to "https://your.ip.add.ress/8006" in your internet browser from a computer that is SEPARATE from the server. So, all you need is an IP address once it's installed and you're operating a "headless server" and can now disconnect your peripherals and run it strictly off the network.