How To Build A Proxmox Cluster

May 13, 2024

Forging a new cluster

Proxmox VE (Virtualization Environment) allows you to scale out your environment using clustering.

Even if you have no interest in the high availability features that this can provide, it eases the administrative load when you have multiple Proxmox nodes to manage.

Comparison with VMWare

VMware consists of ESXi hosts to provide compute, memory and disk storage (either directly attached or network attached), and a centralised management node in the form of the vCenter Server.

VMware environments have broadly fallen into two categories - the small scale deployments, often only of single ESXi hosts where there is no vCenter Server for centralised control, and the larger environments of many ESXi hosts which feature the vCenter Server.

The reason for the smaller environments not having a vCenter Server is most often down to cost - ESXi is free and does most of what the end user wants, although ESXi only is feature limited, and does not scale to allow connection to multiple hosts.

vCenter Server removes this scaling barrier, allowing centralised management and live migration of VMs between ESXi hosts. The vCenter Server cost is not trivial, and with recent Broadcomm licence changes, has become less appealing.

In comparison with the two-part architecture of VMware, Promox VE is based on its nodes alone.

You can start your environment with a single node - at the same free-as-in-beer price as an ESXi host was - and then you can add more hosts to it to scale it out. There is no need for a centralised management node - all the Proxmox VE host nodes are capable of operating this way after they are joined to the cluster. Connecting to any one node allows you to manage the resources on any of the member nodes in the cluster.

This gives Proxmox a big advantage over the VMware architecture - you can start small, and then build out - without having to learn a different management interface as you would when transitioning from ESXi to vCenter.

Video Demonstration

The following video explains how to scale out a Proxmox cluster from a single to multiple hosts:

Building A Proxmox Cluster - step by step

Pre-requisites

  • Install Proxmox on whichever hosts you want to join together to form a cluster.
  • Pre-configure any DNS names and static IPs that you wish to use.
  • Login to the Proxmox nodes as root@pam

In the Cluster section of your original node, click on “Datacenter”, then on the “Create Cluster” button. Enter a name for the cluster and click “Create”.

You can optionally choose which network links you want to use for the cluster.

Building a cluster step 1

When the cluster has finished creating, click on “Join Information” and “Copy Information” to copy the join info so that you can enter it on the joining node(s).

Building a cluster step 2

On each joining node, go to “Datacenter”, and click on “Join Cluster” - you should now paste in the Join Information.

You also need to enter the cluster password and click the Join button.

The node will join the new cluster, but you will encounter a connection error as the node completes the join process.

You can also specify the network links to use on the joining node.

Building a cluster step 3

You should now either reconnect to your joining node or the original node - the cluster resources, including all VMs and containers, will be manageable from any member node of the cluster.

Building a cluster step 4

Next steps

When your cluster is complete you can get cracking with setting up your workloads. You may want to look at:

  • VLAN networking on Proxmox.
  • Drivers for Guest Operating systems.
  • Shared storage.

Bonus Video

The following video demonstrates cluster member failure in a Proxmox Cluster.