Proxmox Type 1 Hypervisor

Proxmox is the Foundation of a Homelab Link to heading

Homelab

Discovering Proxmox at the beginning of the selfhosting process is like giving a neanderthal access to a fully functioning kitchen. At first glace, selfhosting may seem daunting and appear to require significant investments in new computer hardware. Forunately, virtualization technology allows you to create a very powerful homelab with an extremely small and power efficient footprint. Virtualization technology is not necessarily a new concept, but its presence in the world has significant increased over the past two decades. Today, virtualization is the backbone of a vast majority of the internet. In August 2022, IBM celebrated 50 years of virtualization innovation, showcasing this timeline of development. Robert Goldberg’s 1973 thesis “Architectural Principles for Virtual Computer Systems” first introduced the two different types of Hypervisors or Virtual Machine Managers, which is the technology used to allows virtual access to physical hardware. In this paper, he defines the Type 1 and Type 2 Hypervisors as follows: A Type 1 hypervisor runs directly on a bare machine, while a Type 2 hypervisor runs on top of an existing operating sytem. This article from AWS gives a great visual representation how this technology works and the differences between the two. Proxmox, VMware ESXI, Xen, Hyper-V, Red Hat Enterprise Virtualization and Kernel-Based Virtual Machine (KVM) are all examples of Type 1 hypervisors. Common Type 2 hypervisors are Oracle VirtualBox and VMware Workstation.

“The Cloud” is one of the most popular ideas in technology today, and rightfully so as it provides significant advantages to end users. Reducing physical server footprint means that less responsibility, cost, and expertise is required of individuals, allowing them to focus on innovation, creativity, and technology and transfer the risk of operating and maintaing the infrastructure to a centrally-managed location. But at its most basic layer, “The Cloud” is just someone else’s servers using the aforementioned virtualization technology to deliver you (the end user) compute ability in the traditional Big Three formats: Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). Therefore, to really understand “The Cloud” you should understand virtualization technology. I have learned a lot by selfhosting my own cloud using a 5 node proxmox cluster. This core technology has taught me about the importance of backup strategies and shared storage. It has also allowed me to quickly spin up and experiment with new Operating Systems, applications, and technology. Finally, it optimially utilizes your technology. Running a Debian server on a Dell 7040 Micro is great, but running 10 individual Debian servers on that same 7040 Micro is truly maximizing computing efficiency while limiting power consumption.

In practice, it is easy to understand if you are working on a Type 1 or Type 2 hypervisor due to the presence (or lack) of a base operating system. In my homelab, Proxmox is the Operating System running on all 5 of my servers, which are mostly nothing more than repurposed enterprise workstations: Dell 7040, HP Elitedesk 800 G3 Mini, HP T730, HP T620+. The installation process is as simple as installing any other operating system: download the ISO, put it on a USB flash drive, plug it into your target machine, boot into the installer, and follow the on-screen directions. Once complete with the installation, you will be given the address of the web interface (typically the static IP you set for the machine, default port 8006) where you will manage the machine. Additionally, there is both a mobile client and Android app available. Proxmox is a one-stop-shop for management and provides shell access to the base OS and VMs, as well as logs and system monitoring. Proxmox is based on Debian with a custom kernel and allows access to KVM technology as well as Linux Containers (LXC). Finally, you can cluster multiple individual Proxmox nodes together and centrally manage, synchronize, backup, and restore all devices and VMs from one single web interface. Live migration is also available to move running virtual machines from one node to another to eliminate downtime.

Now this all sounds great, and well…it is. If you are beginning to get into the world of selfhosting or builing a server at home, consider Proxmox (or any of the other Type 1 Hypervisors available) as your base OS. I guarantee it will increase efficiency of your hardware and allow you to easily start the next project you were thinking about.