Proxmox
Using an existing Proxmox installation may cause issues with existing customizations as it is impossible for Ludus to account for every Proxmox setup. If starting from scratch the bare metal Debian 12 install is recommended.
Existing Proxmox 8 servers can install Ludus without a reboot.
Ludus will make the following changes - do NOT do any actions below yourself before running the install script:
- Extract files to
/opt/ludus
- Install the following packages to the Proxmox host: ansible, packer, dnsmasq, sshpass, curl, jq, iptables-persistent, gpg-agent, dbus, dbus-user-session, and vim
- Install the following python packages to the host: proxmoxer, requests, netaddr, pywinrm, dnspython, and jmespath
- Create the proxmox groups
ludus_users
andludus_admins
- Create the proxmox pools
SHARED
andADMIN
- Create a wireguard server wg0 with IP range
198.51.100.0/24
- Create an interface
vmbr1000
with IP range 192.0.2.0/24 that NATs traffic - Create user ranges with IPs in the 10.0.0.0/16 network starting at 10.2.0.0/8 and incrementing the second octet for each user
- Create user interfaces starting at
vmbr1002
incrementing for each user - Create the pam user
ludus
and pam users for all Ludus users added - Create the
ludus-admin
andludus
systemd services that listen on 127.0.0.1:8081 and 0.0.0.0:8080
Install
- Run the install script. Be careful to choose your datastores correctly!
# All-in-one command
curl -s https://ludus.cloud/install | bash
# If you want to check out the install script
curl https://ludus.cloud/install > install.sh
cat install.sh
chmod +x install.sh
./install.sh
- Follow the Quick start guide as normal starting at Create a User.
If you made a mistake, you can update the values in /opt/ludus/config.yml
to reflect the install.
After updating the config, restart the ludus processes with systemctl restart ludus-admin
and systemctl restart ludus
.
If you changed the datastores you are using with Ludus, you will need to give permissions to the ludus_users
and ludus_admins
group. As root on your Promox host, run the following:
pveum acl modify /storage/<your new storage> -group ludus_users -role DatastoreUser
pveum acl modify /storage/<your new storage> -group ludus_admins -role PVEDatastoreAdmin
If you encounter networking issues like VMs not getting IP addresses or having internet access, see this guide.