For a long time, ESXi was the obvious choice for a serious business virtualisation host. VMware's free hypervisor was genuinely excellent — mature, well-documented, and supported by almost every piece of enterprise hardware and software. We ran it on two physical hosts and had no intention of changing.
Then Broadcom acquired VMware in late 2023 and within months had killed the free ESXi licence entirely. For large enterprises this was an inconvenience. For small businesses and independent IT operators, it was a hard stop. We started looking at Proxmox VE seriously.
Why Proxmox
Proxmox VE is a Debian-based open-source hypervisor that supports both KVM virtual machines and LXC containers. It has a web UI, a full REST API, clustering, live migration, backup integration, and an active community. It is free to use — the subscription is for enterprise support and the stable update repository, not a licence gate.
The other options — XCP-ng, oVirt, plain KVM with libvirt — are all valid. We chose Proxmox because the management interface is genuinely good, the community documentation is comprehensive, and LXC container support was something we specifically wanted. Running lightweight containers for services like our WhatsApp gateway and CRM without the overhead of a full VM changes what is practical on modest hardware.
The Hardware
We run two Proxmox nodes in a cluster:
- Node A — Intel Core i7-8550U, 16 GB RAM, 466 GB disk. Hosts most production workloads.
- Node B — Same generation hardware, second physical node. Provides redundancy and houses the Proxmox Backup Server container.
Both nodes are joined in a Proxmox cluster called sandz-infra. This gives us a single pane of glass for both hosts, live migration between nodes, and HA options if we need them.
What Runs on It
The cluster runs a mix of VMs and LXC containers across client projects and internal tooling. A representative sample:
- VM: Client Web Applications — Node.js/Express services managed by PM2, one per client project. Ubuntu 24.04, nginx reverse proxy, Tailscale for remote access.
- VM: Security & Access Control Platform — React frontend, Node.js API, SQLite. Purpose-built for a client running physical access control and incident management.
- VM: Offline Knowledge Server — Docker Compose stack serving Wikipedia, technical documentation and OpenStreetMap tiles without an internet dependency. Built for a remote-site deployment.
- LXC: Automation Agents — Lightweight containers running scheduled tasks, AI-assisted workflows and API integrations. LXC keeps the overhead minimal.
- LXC: API Gateways — WhatsApp Business API, webhook handlers and third-party integrations live in dedicated containers so they can be updated or restarted independently.
- LXC: Proxmox Backup Server — Runs on Node B with a dedicated NVMe datastore. Block-level deduplication means backup storage grows far more slowly than with traditional snapshots.
Containers vs VMs: What We Learned
The short answer: use LXC containers for anything that is a standard Linux service with no special kernel requirements, and VMs for everything else. Containers boot in seconds, use a fraction of the RAM, and share the host kernel — which means you can run far more of them on the same hardware.
The practical threshold we settled on: if a workload needs Docker, or runs on a distro that is difficult to containerise cleanly, it gets a VM. If it is a Node.js or Python service on Debian or Ubuntu, it goes in an LXC container. We run Tailscale on most of them for remote access without opening ports.
"LXC containers changed what is practical on our hardware. Services that would have needed a full VM now run in containers with 256 MB of RAM and start in under two seconds."
Backups
Proxmox Backup Server (PBS) is excellent. It runs deduplication at the block level, so backup storage grows much more slowly than with traditional snapshot-based backups. We run PBS in an LXC container on Node B with a dedicated 400 GB NVMe datastore.
All VMs and containers back up nightly. Retention is set to keep 7 daily, 4 weekly, and 3 monthly backups. The whole thing is configured through the Proxmox UI and runs without any manual intervention.
Would We Go Back?
No. Proxmox has been more capable, more transparent, and more fun to operate than ESXi ever was. The open-source model means we understand what is happening at every layer. The API is clean and well-documented. The community is active. And the LXC support has fundamentally changed how we architect services.
If you are running ESXi on a free licence and trying to decide what to do post-Broadcom, Proxmox is the obvious next step. The migration is straightforward — export your VMs to OVF/OVA format and import them. Most things just work.
If you want to talk through a migration or discuss what Proxmox could look like for your business infrastructure, get in touch.