I recently decided to try out Proxmox/KVM for my home lab hypervisor. So far, I’m impressed with it for my use case. It is relatively easy to install and configuration is pretty straight forward (basic linux know-how helps). It could be used for production with a support contract, but I believe vSphere still has the edge by a wide margin for more mainstream consumers.
Without disagreement, it makes more sense to run vSphere in your home lab if your goal is to understand and build competency on the hypervisor you’ll most likely encounter at an employer. But, I just need to run workloads on a home server, and I don’t care what runs them, as long as they run (I actually do care about a ew things, but Proxmox checks the list). 85% of my VMs are identical (Linux serving as a K8s node).
I’m happy to not manage vSphere licensing for my home lab. IMO, VMware would be well served to figure out a limited vCenter unsupported mode, as they have long had with ESXi.
Proxmox is more than ‘good enough’ for me at home. It is less memory intensive than vCenter (the more CPU and memory left for my lab workloads, the better) and provides everything I need. VM templates, memory management, and IaaS/C support; check, check, and check.
The biggest challenge I had with setup was understanding how to expose storage. I won’t aim to write it up here. You can google it. Long story short, work from the datacenter object level down. Once you figure out how to divide storage up and provide it, the rest is simple. It’s not an ideal model, but for a home lab it’s fine.
It is not nearly as compact of a kernel that ESXi is. I believe (not 100% sure) that it is sort of a hybrid Type 1/ Type 2 hypervisor. So a full Linux kernel comes along with it. In my home lab, I have always installed the base ESXi server to boot from a small USB stick. With Proxmox, I took up 75% of the space on the stick. This was causing failures when uploading large ISOs for VM templates, as the temp directory did not have enough storage available. I created a symlink for my temp directory to point to the local server disk array and resolved it.
All-said, I’m happy I converted my home lab to Proxmox. It works, it’s never going to require me to manage license files, has a decent UI, and IaaS/C integration. I never used the base hypervisor (the one I run on my home server to load VMs) as a lab environment. Even with vSphere as the base, I would load nested vSphere environments to work with vSphere. I can still do that. So in the end, there is no difference to my actual lab workload capability.
I will need to migrate or re-create base VM templates and then convert IaaS scripts. Not a huge lift for my lab. The pros are greater than the cons for me.