Virtual GPUs (vGPUs)

Overview

Virtual GPU (vGPU) support lets you partition NVIDIA GPUs on compute resources into virtual GPUs and assign them to virtual server plans. When a customer creates a server that uses a vGPU-enabled plan, SolusVM automatically finds a compute resource with a matching GPU profile and attaches an available vGPU to the server.

Important:

vGPU-enabled servers do not support the Disaster Recovery feature.

Prerequisites

Before you enable vGPU support, ensure that you meet the following requirements:

  • Your SolusVM version is 2.0.0-41401 or newer.
  • Each compute resource that will host vGPU-enabled servers has a compatible NVIDIA GPU.
    • vGPU requires a GPU that supports SR-IOV-based vGPU partitioning using the NVIDIA GRID vGPU framework (Vendor-specific VFIO). For the official list of supported GPUs, see NVIDIA’s list of vGPU-supported GPUs.
    • We test SolusVM using the NVIDIA L4.
      • If you plan to deploy multiple GPU-equipped compute resources, test with one compute resource first before purchasing or renting additional hardware.
      • If you encounter issues with a different supported GPU, contact SolusVM support.
  • You have obtained NVIDIA vGPU software licenses from NVIDIA.

    Important:

    SolusVM does not supply or resell NVIDIA licenses, and WebPros cannot advise you on which license to purchase.

  • You have installed NVIDIA GRID drivers on each GPU-equipped compute resource.

Install NVIDIA GRID drivers

Note:

The following steps assume that you use Ubuntu 24.04.

To install NVIDIA GRID drivers, perform the following steps:

  1. To install the necessary operating system updates, run the following command:

    apt-get update && apt-get upgrade && apt-get dist-upgrade
  2. To blacklist the nouveau driver, add blacklist nouveau to the /etc/modprobe.d/blacklist.conf file.

  3. Reboot the server.

  4. To download the necessary linux-headers packages, run the following command:

    apt-get install linux-headers-$(uname -r)
  5. Download the vGPU software and host driver from the NVIDIA app center and install them.

  6. Reboot the server.

  7. To ensure that your system can detect the NVIDIA driver, run the following command:

    nvidia-smi
  8. Upload your NVIDIA vGPU license to the NVIDIA License System.

    Important:

    If you do not perform this step, your vGPU will not function. For steps, consult your NVIDIA license’s documentation.

Configuring vGPU on a Compute Resource

After enabling vGPU support, select a vGPU profile for each GPU-equipped compute resource. A vGPU profile determines how SolusVM partitions the GPU. Each profile produces a specific number of homogeneous vGPUs with specific capabilities and memory allocations.

To configure vGPU on a compute resource:

  1. Go to Compute Resources and open the compute resource with the GPU.
  2. Select the vGPU tab and click Edit.
  3. Select a vGPU profile from the menu. The interface displays the capabilities of the selected profile, the number of vGPUs it produces, and the NVIDIA license that the profile requires.
  4. Click Save.

SolusVM applies the profile to the GPU and saves the selection on both the management node and the compute resource. After partitioning, the vGPU tab displays all detected GPUs, the vGPUs within each GPU, and which virtual machine uses each vGPU.

Note:

You cannot change a vGPU profile while any virtual machines use vGPUs from that GPU. Detach all vGPUs from that GPU before selecting a new profile.

Creating a vGPU-enabled plan

To offer vGPU support to customers, create a plan and assign a vGPU profile to that plan. When a customer creates a server that uses this plan, SolusVM places the server on a compute resource with a GPU that uses the matching profile and has an available vGPU.

Note:

Register at least one GPU-equipped compute resource and configure its vGPU profile before creating vGPU-enabled plans. SolusVM populates the vGPU profile options in the plan form from registered compute resources.

To create a vGPU-enabled plan:

  1. Go to Compute Resources > Plans and click Add Plan.
  2. Configure the plan settings.
  3. In the vGPU Profile menu, select the profile to associate with this plan.
  4. Click Save.

To allow customers to select a vGPU profile when ordering through WHMCS, see vGPU Profile.

Managing vGPU on Virtual Servers

After you create a vGPU-enabled plan and customers start provisioning servers, you can manage vGPU attachment on individual virtual servers.

Attaching or Detaching a vGPU

To migrate a vGPU-enabled server, detach the vGPU, perform the migration, and then re-attach the vGPU on the destination compute resource.

To attach or detach a vGPU:

  1. Shut down the virtual server if it is running.
  2. Go to Virtual Servers and open the server.
  3. Click the vGPU tab.
  4. Click Attach or Detach.

For more information, see Migration of Servers Between Compute Resources.

Checking a server’s vGPU configuration

The server overview shows the vGPU profile that the server’s plan specifies, even if the server does not currently use a vGPU. This information reflects the plan configuration, not the current attachment state.

To confirm whether the server currently uses a vGPU, check the server’s vGPU tab or the vGPU tab on the compute resource.

Guest OS requirements

For a vGPU to function inside a virtual server, you must install the matching NVIDIA guest driver in the guest operating system. You obtain guest drivers from the NVIDIA app center in the same software bundle as the host drivers. The guest driver version must match the host driver version.

Note:

  • SolusVM does not display NVIDIA license status in the interface. Verify your license status directly with NVIDIA.
  • You can also prepare a custom OS template that includes pre-installed guest drivers. For build instructions, see the SolusVM OS image cookbook.