SimpleVM 10.1
In SimpleVM, a host cluster is a group of two or more physical servers that operate together as a unified virtualization platform. Clustering enables key features such as live virtual machine (VM) migration and high availability.
This provides functionality comparable to cluster and live-migration capabilities found in other virtualization platforms such as VMware ESXi, Microsoft Hyper-V, and Proxmox VE.
Clustering host servers in SimpleVM delivers the following capabilities:
Move running virtual machines between hosts with no interruption to services or applications (comparable to live-migration features in other major hypervisors).
With shared storage configured, virtual machines can be restarted on another host in the cluster if a host fails (manual failover).
Combine CPU, memory, and storage resources across multiple hosts for improved utilization and workload distribution.
Add hosts easily as your environment grows while maintaining high resilience.
SimpleVM supports clusters of various sizes. The most common configurations are:
The simplest redundant configuration, consisting of two hosts. Virtual machines can be live-migrated between the two nodes. This setup is often used in smaller environments.
A three-host (or larger) configuration that provides better resilience and quorum stability compared to a two-node cluster. This is a recommended starting point for most production deployments.
SimpleVM clusters are fully flexible—you can begin with either configuration and easily expand later by adding more hosts as your environment grows.
Before you begin, verify that the following requirements are met on all hosts that will participate in the cluster:
Reliable, low-latency network connectivity exists between all hosts that will form the cluster.
Choose the procedure that matches your cluster size.
On both hosts (repeat the entire procedure on Host A and Host B):
sudo systemctl enable --now sshd
sudo firewall-cmd --permanent --new-zone=cluster
sudo firewall-cmd --permanent --zone=cluster --add-source=<ip-of-peer-host>
sudo firewall-cmd --permanent --zone=cluster --add-service=ssh
sudo firewall-cmd --permanent --new-service=qemu-nbd
sudo firewall-cmd --permanent --service=qemu-nbd --set-short="QEMU-NBD"
sudo firewall-cmd --permanent --service=qemu-nbd --set-description="QEMU NBD Migration Ports"
sudo firewall-cmd --permanent --service=qemu-nbd --add-port=49152-49215/tcp
sudo firewall-cmd --permanent --zone=cluster --add-service=qemu-nbd
sudo firewall-cmd --reload
sudo ssh-keygen -t ed25519
sudo ssh-copy-id <your-admin-user>@<fqdn-or-ip-of-peer-host>
When prompted, enter the password for your admin user (required only once).
On every host in the cluster (repeat the entire procedure on all nodes):
sudo systemctl enable --now sshd
sudo firewall-cmd --permanent --new-zone=cluster
sudo firewall-cmd --permanent --zone=cluster --add-source=<ip-of-peer-host-1>
sudo firewall-cmd --permanent --zone=cluster --add-source=<ip-of-peer-host-2>
# ... repeat for every peer host in the cluster
sudo firewall-cmd --permanent --zone=cluster --add-service=ssh
sudo firewall-cmd --permanent --new-service=qemu-nbd
sudo firewall-cmd --permanent --service=qemu-nbd --set-short="QEMU-NBD"
sudo firewall-cmd --permanent --service=qemu-nbd --set-description="QEMU NBD Migration Ports"
sudo firewall-cmd --permanent --service=qemu-nbd --add-port=49152-49215/tcp
sudo firewall-cmd --permanent --zone=cluster --add-service=qemu-nbd
sudo firewall-cmd --reload
sudo ssh-keygen -t ed25519
sudo ssh-copy-id <your-admin-user>@<fqdn-or-ip-of-peer-host-1>
sudo ssh-copy-id <your-admin-user>@<fqdn-or-ip-of-peer-host-2>
# ... repeat for every other peer host in the cluster
When prompted, enter the password for your admin user on each remote host (required only once per host).
After completing the configuration steps on all hosts, the SimpleVM cluster is fully configured. Live VM migration is available between all hosts in the cluster, and high availability (manual failover) is available when shared storage is configured. No additional cluster creation or management commands are required.