Fixes

Troubleshooting

Common checks for provisioning, templates, networking, licensing, billing integrations, console access, and customer service issues.

VMNexor documentation is actively evolving. Some features, wording, and screenshots may change during beta.

Start with the failure area

  • Billing issue: check WHMCS or the active billing provider first
  • VMNexor issue: check service state, logs, and recent actions
  • Proxmox issue: check Proxmox tasks, node state, storage, and template availability
  • Guest OS issue: check networking, DNS, guest agent, and template preparation

VM fails to provision

  • Confirm the selected plan exists and is active
  • Confirm the selected template exists on the expected node/storage
  • Check Proxmox task output
  • Check disk/storage capacity
  • Check IP pool availability
  • Check that VMNexor can reach the Proxmox API
  • Try a disposable known-good template to isolate template-specific faults

Provisioning is stuck

  • Check whether the Proxmox task is still running
  • Check VMNexor queue worker status
  • Check scheduler status
  • Look for failed jobs or repeated retries
  • Avoid starting another provisioning attempt until the current state is understood

Linux VM has no network or DNS

  • Confirm the assigned IP and gateway are correct
  • Check whether the template uses netplan, interfaces.d, dhcpcd, or systemd-resolved
  • Inspect /etc/resolv.conf inside the VM
  • Test ping to gateway first, then external IP, then DNS name
  • Confirm routed /32 templates were tested for that OS family

Windows password or login fails

  • Confirm QEMU Guest Agent is installed and running
  • Check whether the template expects first-login password setup or injected password handling
  • Confirm Cloudbase-Init completed successfully
  • Verify the expected admin account exists
  • Check the Windows event logs if available

Console does not load

  • Confirm the VM exists and is running
  • Check the console relay service status
  • Check browser WebSocket errors
  • Confirm Nginx is proxying the console route correctly
  • Confirm firewall rules allow the relay flow
  • Try a fresh session after logging out and back in

Suspend or unsuspend does not match billing

  • Check the billing provider action log
  • Confirm the billing provider can reach VMNexor
  • Check VMNexor service state
  • Confirm the VM still exists in Proxmox
  • Manually reconcile only after understanding which system has the correct state

License or feature state looks wrong

  • Check the configured license key
  • Confirm the license server URL is correct
  • Clear and rebuild Laravel config cache
  • Check local license runtime/state files
  • Confirm the server has outbound HTTPS access
  • Review license validation logs

Useful service checks

systemctl status php8.4-fpm --no-pager\nsystemctl status vmnexor-queue --no-pager\nsystemctl status vmnexor-scheduler --no-pager\nsystemctl status proxmox-console-relay --no-pager

Useful Laravel checks

php artisan route:clear\nphp artisan view:clear\nphp artisan config:clear\nphp artisan cache:clear\nphp artisan config:cache

Support escalation information

  • Customer account email
  • VMNexor service ID
  • Proxmox VMID
  • Node name
  • Template used
  • Time of failure
  • Exact error text
  • Recent billing action if relevant