View .md

VDS with Proxmox

Connect Proxmox VE to FeatherPanel with an API token, register VM templates and an IP pool, then create and manage VDS instances for your users.

On this page

A VDS (virtual dedicated server) in FeatherPanel is a virtual machine on a Proxmox VE host. The panel clones a template, sets resources and network through cloud-init, and gives the owner a VM page to manage it.

1. Create a VPS location

VDS nodes can only join locations of type VDS / VPS. Create one under Locations. The type cannot be changed later.

2. Create a Proxmox API token

In Proxmox, create an API token for the account the panel should use (Datacenter, Permissions, API Tokens). Give the account the rights for what the panel will do on that node: creating, cloning, configuring, starting and deleting VMs, and using the storages and bridges you pick.

3. Add the VDS node

Admin area, Nodes (VDS), Create VDS Node. Then, on Edit VDS Node:

TabSettings
DetailsName, description, location.
ConnectionProxmox user (root@pam or apiuser@pve), token ID (without the user prefix), token secret, hostname or IP, scheme, port, TLS verification, timeout.
AdvancedExtra HTTP headers and query parameters sent with every API request, for a reverse proxy in front of Proxmox.
Storage ConfigurationStorages for disk images, the EFI disk (efidisk0), TPM state (tpmstate0) and vzdump backups.
IP PoolPublic IPv4 addresses with CIDR, gateway and notes. Add one or a bulk list. Mark the Proxmox host’s own address as primary so it is not assigned to a VM.
TemplatesVM templates registered by name and Template VMID (below).
InfoLive Proxmox VE version, CPU, memory and storage use, and the cluster nodes visible from this endpoint.

Use Test connection on the node list to check the token, host and TLS settings.

Templates

A template is a VM you converted to a template in Proxmox (right-click the VM, Convert to template), for example a Debian or Ubuntu cloud image. In the Templates tab, Add template lists the VMs on the node; pick one and its name and VMID are filled in. Set the guest type to QEMU/KVM or LXC. For LXC you can note a default root password, which is only shown to users: the panel does not set it. The tab has a QEMU/KVM and an LXC tutorial.

4. Create a VDS instance

Admin area, Virtual Servers (VDS), Create VDS Instance:

  1. Node & template. VDS node, Proxmox cluster node, and a QEMU/KVM template.
  2. Resources. Memory (MB), CPUs, cores per CPU, disk (GB), storage, bridge, start on boot, one free pool IP per network interface, backup limit (0 disables backups) and backup retention.
  3. Details & owner. Hostname (letters, numbers and hyphens), owner, cloud-init user and password. The password is only shown here, so store it.
  4. Review & create. The panel clones the template and reports progress until the VM is ready.

Managing instances

Edit instance has Details (hostname, notes, owner), Network, Resources, Disks (resize, for example +5G, or remove) and Task history. Suspend needs a reason for staff and emails the owner; unsuspend gives access back. An IP that is in use by a VM cannot be deleted from the pool.

API

MethodPathPermission
GET, PUT/api/admin/vm-nodesadmin.nodes.view, admin.nodes.create
GET, POST/api/admin/vm-nodes/{id}/test-connectionadmin.nodes.view
GET/api/admin/vm-instancesadmin.nodes.view
PUT/api/admin/vm-instancesadmin.nodes.create
GET/api/admin/vm-instances/creation-status/{creationId}admin.nodes.view

Frequently asked questions

Do I need to install anything on the Proxmox host?

No daemon is needed. The panel talks to the Proxmox VE API over HTTPS with an API token.

Should I use LXC or QEMU/KVM templates?

QEMU/KVM. The panel warns that LXC is not recommended for public hosting because it lacks KVM virtualization and isolates guests less well.

Is the VDS firewall available?

Not yet. The Firewall and DHCP Agent tabs on a VDS node are placeholders for features still in development.