Best Home Server Virtualization Projects in 2024
As we get more into 2024, if you are looking at virtualization projects and labs to get started learning, there are many great learning projects you can spin up on your home lab server. While you may have experimented with virtualization software before, there are new ways to use virtualization that you may not have tried as of yet. Let’s dive into the best home server virtualization projects in 2024 and tasks to see what new things you can learn for business and just personal experimentation.
Table of contents
1. Nested Virtualization
I commonly find that even though many know about nested virtualization and what it can do, they have not tried it as a virtualization tool yet or don’t understand what it allows them to do on a home server.
Nested virtualization in this context means running a hypervisor as a virtual machine (VM) and potentially running VMs under that nested hypervisor. This is a great project to start in 2024 because it allows you to run very complex configurations or test out things like clustering multiple hypervisor nodes without having the physical hardware to do that.
What do we mean by that? Well, since we can simulate having multiple hypervisor nodes that are generally run on bare metal (by running a hypervisor inside a VM) we can create clusters and play around with things we otherwise couldn’t without the physical hardware.
For instance, I have recently been playing around with Proxmox clustering and Ceph HCI. I was able to do this all in virtual machines without 3 or more Proxmox physical nodes.
2. Setting Up a Virtualization Cluster
Most who get started with a home virtualization lab may start by running a single physical machine with guest operating system configurations running in VMs. However, by using nested virtualization, as we have discussed above, you can start experimenting with setting up a virtualization cluster at the same time as you can run multiple virtual machines with high availability and protection against failures.
If a node goes down, your VM will failover to the remaining nodes. Once you get familiar enough with how a virtualization cluster works with a nested environment, you can take this to your core home lab infrastructure and start running multiple physical nodes to host your lab environment. Many are using mini PC configurations to have cost-effective physical hypervisor hosts with power efficiency and still lots of performance to run your applications in with a good experience.
If you are one who enjoys the process to build your own hardware, you may even choose to build your own computer for a lab host using hand-picked components and case. This is fine too. There are many hardware options to choose from on the market today for the purpose of running a home lab.
No matter what device you choose, start simple and within your budget. Scalability and additional capabilities will come later. It is hard not to want everything at the start. However, this is part of the gradual process of building your lab with products you choose to meet your needs.
This is very much how I started in my home lab: single virtualization host > played around with nested environments > then brought this into a physical host configuration running on multiple physical nodes running multiple operating systems. I graduated along the way to a true server environment with IPMI interface, server rack gear and lots of functionality.
To play around with virtualization clusters, you can also start with desktop virtualization software like VMware Workstation or Oracle VM VirtualBox. Keep in mind with a physical virtualization cluster, you will need to meet the requirement of shared storage, as we will discuss one type of storage you can use in the next point.
3. HCI Storage
One of the coolest things you can experiment with in a home virtualization lab is HCI storage. HCI stands for hyper-converged infrastructure. With HCI storage, you don’t have to have a separate physical storage appliance like a SAN or NAS like TrueNAS. Instead, an HCI setup aggregates local storage devices in your virtualization servers to create a logical pool of storage that each contributes to.
These modern solutions also provide advanced data security and storage features like encryption, deduplication, and compression.
Depending on the technology or number of hosts and storage storage installed, additional copies of your data are created using resiliency algorithms. This allows you to lose a host and still have access to your data. Even if the host was the owner of the virtual machine, the other hosts have a copy of the data, so they can restart the virtual machine and it can come back online as normal.
You can play around with technologies like VMware vSAN if you are running VMware vSphere, or Ceph storage if you are using something like Proxmox. Either provides a great solution for HCI storage.
If you are spinning up a physical virtualization cluster, as in point 2, you will need to have shared storage as a requirement to allow the cluster to have full access to the data.
4. Building a Docker Container Host
Another great virtualization project to tackle if you haven’t already is building a Docker container host. Actually, it doesn’t take much to do this. A Docker container host is created by simply installing a Linux virtual machine and then installing Docker. You can also run containers in a Windows environment as well. However, for what most will want to do, Linux-based container hosts running something like Ubuntu 22.04 LTS as lightweight virtual machines are the way to go.
Building a Docker container host is a great project to start since it will allow you to start playing around with containers in your lab environment. Containers have revolutionized the way we can spin up self-hosted services, create CI/CD pipelines and automate an environment.
Since containers are at the heart of modern workloads and cloud computing technologies, building and learning containers will help with ramp up your cloud skills.
You can also take advantage of LXC containers if you are running a Linux hypervisor host like Proxmox. LXC containers are a type of container that allows you to have a virtual machine-like environment but in a much smaller footprint.
Check out my post here comparing the two if you want a more in-depth discussion of the differences: LXC vs Docker: Pros and Cons Explained.
Learning Docker containerization is a stepping stone to running full-blown Kubernetes environments. Kubernetes is a container orchestration tool that allows running containers in a highly available configuration. Containers and Kubernetes are also at the heart of modern DevOps development processes, configurations, and automation.
5. Exploring Network Virtualization
Outside of compute and storage virtualization, network virtualization is one of the coolest forms of virtualization you can use. Network virtualization allows the creation of virtualized networking that can extend subnets to different physical locations or allow the creation of networks with infrastructure as code.
You can experiment with tools like VMware NSX and Proxmox that make network virtualization possible for lab scenarios so you can learn these skills for enterprise purposes and goals.
Network virtualization is particularly useful for testing complex network configurations and scenarios in a controlled environment. It allows for the simulation of various network conditions, providing invaluable insights for IT professionals and enthusiasts. Additionally, it offers a layer of abstraction that simplifies network management and enhances security.
6. Learn a Different Hypervisor
Learning a new hypervisor technology allows for learning new skills and understanding the differences between various virtualization platforms. When you learn other hypervisors, you can successfully transition from VMware to Windows Server virtualization with Hyper-V, Red Hat virtualization with KVM, or VMware to Proxmox or XCP-ng, the open-source Citrix Hypervisor.ย
As we continue to see the fallout from the VMware acquisition by Broadcom, I think this is going to be more important than ever before. So many have learned and become proficient in VMware vSphere since it has been the predominant technology in the enterprise. However, now, with the price increases and uncertainty, many are exploring other virtualization solution options.
7. Mix in some public cloud resources
To maximize and round out your understanding of on-premises resources and tying these into public cloud environments, spin up a free account in Amazon AWS or Azure using the free credits that both provide to start playing around with cloud computing and even VPN configurations to tie these environments back in with your home lab environment.ย
Doing this allows traveling full circle and understanding the real-world nuances that have to be considered with on-premises and public cloud interoperability.
Other considerations
No matter what projects you try, just remember to have fun and enjoy the learning experience. The benefits will outweigh any frustrations you experience when running your apps and following various example configurations on the net. Choosing the right starting home server can also be important. Get something with enough memory and CPU resources where you have the flexibility to run any platform you choose.
Also, consider configuring backups for your lab for disaster recovery. While it isn’t technically a “production” environment, losing hours worth of tinkering and work can be discouraging and frustrating. You can back up your deployment with an NFR of Veeam or Synology Active Backup as an example, or if you are using Proxmox or XCP-ng, they have built-in and free backup servers integration with the ability to backup your virtual machines and containers.
Wrapping up best home server virtualization projects in 2024
There are so many excellent home server virtualization projects you can learn in 2024 that will expand your horizons of understanding, learning, and proficiency with new skills. Understanding the full range of technologies available to you with virtualization projects like nested virtualization, clustering, HCI, network virtualization, learning different hypervisors, and tying in cloud technologies are great stepping stones to understanding the full range of technologies found in the enterprise.
Keep in mind this best home server virtualization projects in 2024 list presented here is only a suggestion. You can create and take advantage of many other projects this year, depending on specific disciplines you may want to conquer. The sky is the limit for home labs everywhere.ย