A Virtualizor cluster has one master, where you manage plans, users and billing integration, and any number of slaves that run the virtual servers. This guide adds a KVM slave to an existing master. If you have not installed the master yet, start with install the Virtualizor master.
Before you start
- OS: a fresh minimal AlmaLinux 8/9 or Ubuntu 22.04/24.04 (match the versions Virtualizor currently supports).
- Hardware: CPU virtualisation (Intel VT-x or AMD-V) enabled in the BIOS, enough RAM for your VPSs plus 2 GB for the host, and a spare disk or partition for VPS storage.
- Network: a main IP for the node and an IP block for VPSs routed to it.
- Licence: a Virtualizor licence for the slave's main IP.
- A hostname such as
node2.example.comand root SSH access.
Prepare the server
- Update the system and reboot:On Ubuntu use
dnf -y update && rebootapt update && apt -y full-upgrade. - Check virtualisation support:A number above 0 means it is available.
egrep -c '(vmx|svm)' /proc/cpuinfo - Create an LVM volume group on the spare disk for VPS storage, for example:
pvcreate /dev/sdb && vgcreate vg_kvm /dev/sdb
Install Virtualizor on the slave
- Download and run the installer with the KVM kernel option:
wget -N https://files.virtualizor.com/install.sh && chmod 0755 install.sh && ./install.sh email=admin@example.com kernel=kvm - Wait until the installer finishes, then reboot.
- The slave's own admin panel is at
https://SLAVE-IP:4085(log in as root).
Get the slave key and password
The master authenticates with the slave's API key and password. Find them in the slave's admin panel under Configuration → Slave Settings (or in /usr/local/virtualizor/universal.php as $globals['key'] and $globals['pass']).
Add the slave to the master
- Log in to the master admin panel (
https://MASTER-IP:4085). - Open Servers → Add Server.
- Enter a server name, the slave IP and the slave password (key), and save.
- Open the new server's settings and add storage: Storage → Add Storage, type LVM, path
/dev/vg_kvm. - Configure the network: Virtualizor creates the bridge (usually
viifbr0) automatically; confirm it in Configuration → Slave Settings on that server. - Add an IP pool for the node in IP Pool → Create IP Pool and assign it to the server.
Licence and hardening
- The licence is checked automatically for the slave IP; check Configuration → License.
- Allow only the master IP to reach port 4081-4085 on the slave in the firewall.
- Disable password SSH login and use keys; keep the host OS updated.
Verify
- Download an OS template for the slave in Media → OS Templates on the master.
- Create a test VPS on the new server and confirm it boots, gets its IP and is reachable.
Troubleshooting
- Server shows offline in the master: wrong key or a firewall blocking ports 4081-4085 between master and slave.
- VPS has no network: the bridge was not created; reboot the slave or check the main interface name in Slave Settings.
- Storage not found: the volume group name in storage settings does not match
vgsoutput.
