To experiment with Proxmox High Availability (HA), I tried it out using nested hosts. To validate that nested virtualization is supported, the following command should return a ‘Y’.
cat /sys/module/kvm_intel/paramaters/nested
I created guest VMs pve1, pve2 and pve3 on my main Proxmox server. Note that when creating the VMs, the CPU type needs to be ‘host’ in order to enable virtualization on the nested servers. I cloned the first VM twice changing the host names and the machine ids. My main clusters run on 4th generation Intel systems that are inexpensive and very low power. For the first time, creation of these guest VMs pushed the limits of my system and took a long time to complete.
On the nested hosts, enter the following commands. Note that pve1 summary will show “Guest Agent not running” in the IPs section. After these commands, this section wil show the IP address.
apt install qemu-guest-agent
systemctl start qemu-guest-agent
systemctl enable qemu-guest-agent
Before enabling HA, you must enable shared storage using Ceph, the name of which is derived from the marine animals cephalopods. Ceph uses storage from each of the nodes, three in this case, such that you can remove any one of the nodes and the remaining two still have a complete set of the data. The VM hard drive must be moved to the Ceph storage pool. Brandon Lee has an excellent video for enabling Ceph.