1. Introduction to the NVIDIA vGPU Software License Server

The NVIDIA vGPU software License Server is used to serve a pool of floating licenses to NVIDIA vGPU software licensed products. The License Server is designed to be installed locally within a customer’s network, and be configured with licenses obtained from the NVIDIA Software Licensing Center.

1.1. Overview of NVIDIA vGPU software Licensing

NVIDIA vGPU software is a licensed product. Licensed vGPU functionalities are activated during guest OS boot by the acquisition of a software license served over the network from an NVIDIA vGPU software license server. The license is returned to the license server when the guest OS shuts down.

Figure 1. NVIDIA vGPU Software Licensing Architecture

Diagram showing how NVIDIA vGPU software license files are downloaded from the NVIDIA Software Licensing Center to the license server and how licensed clients borrow licenses from the server.

The licenses served by the NVIDIA vGPU software license server are obtained from the NVIDIA Software Licensing Center as downloadable license files, and installed into the license server through its management interface.

1.2. NVIDIA vGPU Software License Server High Availability

To provide NVIDIA vGPU software clients with continued access to NVIDIA vGPU software features if a single license server fails, you can configure the license server for high availability. High availability requires two license servers in a failover configuration:

  • A primary license server, which is actively serving licenses to NVIDIA vGPU software clients
  • A secondary license server, which acts as a backup for the primary license server

Configuring two servers in a failover configuration increases availability because simultaneous failure of two servers is rare. The primary and secondary license servers work together to ensure that licenses in the enterprise remain continually available to NVIDIA vGPU software clients.

If the primary license server fails, failover occurs and the secondary server can continue to serve licenses for up to the license server maintenance interval, which is three days.

Note: To ensure that licenses in the enterprise remain continually available after failure of the primary license server, return the primary server to service within three days of the failure. Furthermore, the remaining server becomes a single point of failure. Therefore, you should return the failed server to service as quickly as possible to restore high availability support for the license server.

During normal operation, the primary license server periodically updates the secondary server with information about the licenses that are being served to clients. However, when the primary server is returned to service after a failure, it is not updated with information from the secondary server about licenses that were served while the primary server was out of service.

For more information about configuring the license server for high availability, see High Availability Requirements.

1.3. Overview of the NVIDIA vGPU Software Licensing Process

The following table lists the major tasks in the process of licensing NVIDIA vGPU software and provides a cross-reference to instructions for performing each task.

Note: If you are configuring the license server for high availability, you must perform some tasks for both the primary license server and the secondary license server. For more information, see High Availability Requirements.
Task Instructions
Get your NVIDIA vGPU software and NVIDIA vGPU software License Server software. Virtual GPU Software Quick Start Guide
Install the NVIDIA vGPU software License Server software. Installing the NVIDIA vGPU Software License Server
Access the management interface of the license server. Accessing the License Server Management Interface
Get the MAC address of the license server. Obtaining the License Server’s MAC Address
HA license servers only: Enable failover support. Enabling Failover Support on the Primary and Secondary License Servers
Register your license server, generate licenses, and download license files. Registering Your License Server and Getting License Files
Install a license. Installing a License
View available licenses. Viewing Information About Installed Licenses
Reserve and release licenses. Reserving Licenses
Move a license to a new server.
  1. Removing Licenses from a License Server
  2. Registering Your License Server and Getting License Files
Convert a trial license server to a permanent license server. Converting an Evaluation License Server to a Permanent License Server
Configure licensed NVIDIA vGPU software products for use with license server. Virtual GPU Client Licensing User Guide
Troubleshoot the license server. Troubleshooting the NVIDIA vGPU Software License Server
Uninstall the license server software. Uninstalling the NVIDIA vGPU Software License Server

2. Installing the NVIDIA vGPU Software License Server

You can install the NVIDIA vGPU software license server on Windows and Linux systems that meet the license server’s platform requirements. If you require high availability for the license server, you must install the license server both on the system that you will use as the primary license server and on the system that you will use as the secondary license server.

The license server requires a Java runtime environment and an Apache Tomcat server. Before you install the license server software, ensure that the required software is already installed on each license server host machine that you are using:

  • On Windows, you need ensure only that the Java runtime environment is installed. The Apache Tomcat server is included in the license server installer for Windows.
  • On Linux, you must ensure that both the Java runtime environment and the Apache Tomcat server are installed.

Also ensure that you have obtained your NVIDIA vGPU software and NVIDIA vGPU software License Server software. For more information, refer to Virtual GPU Software Quick Start Guide.

2.1. Platform Requirements

Before proceeding, ensure that you have a platform suitable for hosting the license server.

2.1.1. Hardware and Software Requirements

  • The hosting platform may be a physical machine, an on-premises virtual machine (VM), or a VM on a supported cloud service. NVIDIA recommends using a host that is dedicated solely to running the license server.
  • The recommended minimum configuration is 2 CPU cores and 4 Gbytes of RAM. A high-end configuration of 4 or more CPU cores with 16 Gbytes of RAM is suitable for handling up to 150,000 licensed clients.
  • The hosting platform must run a supported operating system.
  • On Window platforms, .NET Framework 4.5 or later is required.
Note: Before proceeding with the installation, refer to Virtual GPU License Server Release Notes for details of supported operating systems and known issues.

2.1.2. Platform Configuration Requirements

  • The platform must have a fixed (unchanging) IP address. The IP address may be assigned dynamically by DHCP or statically configured, but must be constant.
  • The platform must have at least one unchanging Ethernet MAC address, to be used as a unique identifier when registering the server and generating licenses in the NVIDIA Software Licensing Center.
  • The platform’s date and time must be set accurately. NTP is recommended.

2.1.3. Network Ports and Management Interface

The license server requires TCP port 7070 to be open in the platform’s firewall, to serve licenses to clients. By default, the installer will automatically open this port.

The license server’s management interface is web-based, and uses TCP port 8080. The management interface itself does not implement access control; instead, the installer does not open port 8080 by default, so that the management interface is only available to web browsers running locally on the license server host. Access to the management interface is therefore controlled by limiting remote access (via VNC, RDP, etc.) to the license server platform.

Note: If you choose to open port 8080 during license server installation, or at any time afterwards, the license server’s management interface is unprotected.

2.1.4. High Availability Requirements

If you plan to configure high availability for the license sever by configuring a primary server and a secondary server, these requirements must be met:

  • Both servers must run the same version of the NVIDIA vGPU Software License Server software.
  • The clocks on both servers must be accurate and synchronized. NTP is recommended.
  • The same license configuration file must be installed on both servers. This file is configured to include the Ethernet MAC addresses of both servers.

2.2. Installing the NVIDIA vGPU Software License Server on Windows

The license server requires a Java runtime environment, which must be installed separately before you install the license server.

Note: If you require high availability for the license server, you must install the license server both on the system that you will use as the primary license server and on the system that you will use as the secondary license server.

2.2.1. Installing the Java Runtime Environment on Windows

If a suitable 32-bit Java version is not already installed on your system, download the current 32-bit Java runtime environment from the java.com: Java + You website and install it before running the NVIDIA license server installer.

Note: Install the 32-bit Java runtime, regardless of whether your platform is 32-bit Windows or 64-bit Windows. If a 64-bit Java runtime is already installed, remove it before installing the 32-bit version to ensure that future updates to the Java software can be applied correctly.
Figure 2. Java 32-Bit Runtime Installation on Windows

Screen capture showing the download and setup screens for Java for Windows.

2.2.2. Installing the License Server Software on Windows in Graphical Mode

  1. Unzip the license server installer and run setup.exe.
  2. Accept the EULA for the license server software and the Apache Tomcat software used to support the license server’s management interface.
    Figure 3. License Agreements on Windows

    Screen capture showing license agreements for the license server on Windows.

  3. Choose the destination folder where you want the license server software to be installed.
    Figure 4. Destination Folder Selection on Windows

    Screen capture showing the selection of the destination folder for the license server on Windows.

  4. In the Choose Firewall Options dialog box, select the ports to be opened in the firewall.

    To enable remote clients to access licenses from the server and prevent remote access to the management interface, use the default setting, which sets ports as follows:

    • Port 7070 is open to enable remote clients to access licenses from the server.
    • Port 8080 is closed to ensure that the management interface is available only through a web browser running locally on the license server host.
    Figure 5. Firewall Settings on Windows

    Screen capture showing firewall settings for the license server on Windows.

  5. After installation has completed successfully, click Done to exit the installer.
    Figure 6. Completed License Server Installation on Windows

    Screen capture showing the window that appears when the license server installation is complete on Windows.

After quitting the installer, verify the installation by accessing the License Server management interface as explained in Accessing the License Server Management Interface.

2.2.3. Since 2018.06: Installing the License Server Software on Windows in Console Mode

Note: Support for installation in Windows console mode is introduced in license server release 2018.06. It is not supported in earlier license server releases. The license server installer for earlier releases must be run in a graphical desktop environment. Installation in silent mode is not supported in any release.
  1. Extract the contents of the license server zip archive.
  2. Run the extracted setup binary.
    C:\> setup.exe -i console
    The Introduction screen of the InstallAnywhere installer is displayed.
  3. In the Introduction screen, press Enter to continue.
  4. In the License Agreement screen, press Enter each time you are prompted to page through the license agreement. When you reach the end of the license agreement, you are prompted to accept its terms.
  5. Type y to accept the terms of the license agreement and proceed with installation.
  6. In the Apache License Agreement screen, press Enter each time you are prompted to page through the license agreement. When you reach the end of the license agreement, you are prompted to accept its terms.
  7. Type y to accept the terms of the license agreement and proceed with installation.
  8. In the Choose Install Folder screen, specify where you want the license server software to be installed:
    • Press Enter to accept the default installation folder.
    • Enter the absolute path to the destination folder where you want the license server software to be installed.
  9. In the Choose Firewall Options screen box, select the ports to be opened in the firewall.

    The options for selecting ports to be opened in the firewall are presented as follows:

      ->1- License server (port 7070)
        2- Management interface (port 8080)
    • Press Enter to accept the default setting.
    • Enter a comma-separated list of numbers that represent your choice of ports to be opened.

    To enable remote clients to access licenses from the server and prevent remote access to the management interface, use the default setting, which sets ports as follows:

    • Port 7070 is open to enable remote clients to access licenses from the server.
    • Port 8080 is closed to ensure that the management interface is available only through a web browser running locally on the license server host.
  10. In the Pre-Installation Summary screen, review your choices and press Enter to start the installation. After installation has completed successfully, the Install Complete screen is displayed.
  11. In the Install Complete screen, press Enter to exit the installer.
After quitting the installer, verify the installation by accessing the license server management interface as explained in Accessing the License Server Management Interface.

2.3. Installing the NVIDIA vGPU Software License Server on Linux

The license server requires a Java runtime environment and an Apache Tomcat server, which must be installed separately before you install the license server software.

Note: If you require high availability for the license server, you must install the license server both on the system that you will use as the primary license server and on the system that you will use as the secondary license server.

2.3.1. Installing the Java Runtime Environment on Linux

Most Linux distributions install a Java runtime environment by default.
  1. Verify that your Linux installation has Java installed.
    [nvidia@localhost ~]$ java -version
    java version "1.7.0_51"
    OpenJDK Runtime Environment (rhel-2.4.5.5.el7-x86_64 u51-b31)
    OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)
    [nvidia@localhost ~]$
  2. If Java is not installed, use your Linux distribution’s package manager to install Java.
    • For distributions based on Red Hat, use the yum package manager to install the java package.

      [nvidia@localhost ~]$ sudo yum install java
    • For distributions based on Debian, use the apt package manager to install the default-jdk package.

      [nvidia@localhost ~]$ sudo apt install default-jdk

2.3.2. Installing and Running the Apache Tomcat Server on Linux

The license server’s management interface requires an Apache Tomcat server.
  1. Use your Linux distribution’s package manager to install the required Apache Tomcat packages.
    • For distributions based on Red Hat, use the yum package manager to install the tomcat and tomcat-webapps packages.

      [nvidia@localhost ~]$ sudo yum install tomcat tomcat-webapps
    • For distributions based on Debian, use the apt package manager to install the tomcatrelease package. For example, for Apache Tomcat 8, run:

      [nvidia@localhost ~]$ sudo apt install tomcat8
  2. After installing the packages, enable the Tomcat service for automatic startup on boot.
    • For distributions based on Red Hat, enable the tomcat service.

      [nvidia@localhost ~]$ sudo systemctl enable tomcat.service
    • For distributions based on Debian, enable the tomcatrelease service. For example, for Apache Tomcat 8, run:

      [nvidia@localhost ~]$ sudo systemctl enable tomcat8.service
  3. Start the Tomcat service.
    • For distributions based on Red Hat, start the tomcat service.

      [nvidia@localhost ~]$ sudo systemctl start tomcat.service
    • For distributions based on Debian, start the tomcatrelease service. For example, for Apache Tomcat 8, run:

      [nvidia@localhost ~]$ sudo systemctl start tomcat8.service
  4. Verify that the Tomcat service is operational by opening the URL http://localhost:8080 in a web browser. The home page of the default Tomcat web application should be displayed, as shown in Figure 7.
    Figure 7. Verifying the Apache Tomcat Installation

    Screen capture showing the home page of the default Apache Tomcat web application.

Note: Do not relocate the webapps folder, which is where Web applications are deployed on Apache Tomcat Server. If you relocate this folder, the installation of the license server software may fail.

2.3.3. Installing the License Server Software on Linux in Graphical Mode

  1. Extract the contents of the license server ZIP archive.
    [nvidia@localhost ~]$ unzip NVIDIA-ls-linux-2018.10.0.250983466.zip
  2. Add execute permission to the extracted setup binary file.
    [nvidia@localhost ~]$ chmod +x setup.bin
  3. As root, run the extracted setup binary.
    [nvidia@localhost ~]$ sudo ./setup.bin
  4. Accept the EULA to proceed with installation.
    Figure 8. License Agreements on Linux

    Screen capture showing license agreements for the license server on Linux.

  5. Choose the destination folder where you want the license server software to be installed.
    Figure 9. Destination Folder Selection on Linux

    Screen capture showing the selection of the destination folder for the license server on Linux.

  6. Specify the path to the folder on the local host that contains the webapps folder.

    Web applications are deployed on Apache Tomcat Server to the webapps folder.

    • For distributions based on Red Hat, the default path to this folder is /usr/share/tomcat.

    • For distributions based on Debian, the default path to this folder is /var/lib/tomcatrelease, for example /var/lib/tomcat8, for Apache Tomcat 8.

    Figure 10. Apache Tomcat Server Path on Linux

    Screen capture showing the selection of the Apache Tomcat Server path on Linux.

  7. In the Choose Firewall Options dialog box, shown in Figure 11, select the ports to be opened in the firewall.

    To enable remote clients to access licenses from the server and prevent remote access to the management interface, use the default setting, which sets ports as follows:

    • Port 7070 is open to enable remote clients to access licenses from the server.
    • Port 8080 is closed to ensure that the management interface is available only through a web browser running locally on the license server host.
    Figure 11. Firewall Settings on Linux

    Screen capture showing firewall settings for the license server on Linux.

  8. After installation has completed successfully, click Done to exit the installer.
    Figure 12. Completed License Server Installation on Linux

    Screen capture showing the window that appears when the license server installation is complete on Linux.

After quitting the installer, verify the installation by accessing the license server management interface as explained in Accessing the License Server Management Interface.

2.3.4. Since 2018.06: Installing the License Server Software on Linux in Console Mode

Note: Support for installation in Linux console mode is introduced in license server release 2018.06. It is not supported in earlier license server releases. The license server installer for earlier releases must be run in a graphical desktop environment. Installation in silent mode is not supported in any release.
  1. Extract the contents of the license server ZIP archive.
    [nvidia@localhost ~]$ unzip NVIDIA-ls-linux-2018.10.0.250983466.zip
  2. Add execute permission to the extracted setup binary file.
    [nvidia@localhost ~]$ chmod +x setup.bin
  3. As root, run the extracted setup binary.
    [nvidia@localhost ~]$ sudo ./setup.bin -i console
    The Introduction screen of the InstallAnywhere installer is displayed.
  4. In the Introduction screen, press Enter to continue.
  5. In the License Agreement screen, press Enter each time you are prompted to page through the license agreement. When you reach the end of the license agreement, you are prompted to accept its terms.
  6. Type y to accept the terms of the license agreement and proceed with installation.
  7. In the Choose Install Folder screen, specify where you want the license server software to be installed:
    • Press Enter to accept the default installation folder.
    • Enter the absolute path to the destination folder where you want the license server software to be installed.
  8. In the Choose Local Tomcat Server Path screen, enter the path to the folder on the local host that contains the webapps folder.

    Web applications are deployed on Apache Tomcat Server to the webapps folder.

    • For distributions based on Red Hat, the default path to this folder is /usr/share/tomcat.

    • For distributions based on Debian, the default path to this folder is /var/lib/tomcatrelease, for example /var/lib/tomcat8, for Apache Tomcat 8.

  9. In the Choose Firewall Options screen box, select the ports to be opened in the firewall.

    The options for selecting ports to be opened in the firewall are presented as follows:

      ->1- License server (port 7070)
        2- Management interface (port 8080)
    • Press Enter to accept the default setting.
    • Enter a comma-separated list of numbers that represent your choice of ports to be opened.

    To enable remote clients to access licenses from the server and prevent remote access to the management interface, use the default setting, which sets ports as follows:

    • Port 7070 is open to enable remote clients to access licenses from the server.
    • Port 8080 is closed to ensure that the management interface is available only through a web browser running locally on the license server host.
  10. In the Pre-Installation Summary screen, review your choices and press Enter to start the installation. After installation has completed successfully, the Install Complete screen is displayed.
  11. In the Install Complete screen, press Enter to exit the installer.
After quitting the installer, verify the installation by accessing the license server management interface as explained in Accessing the License Server Management Interface.

2.4. Installing and Securing the License Server in the Cloud

To support bring your own license (BYOL) deployments of NVIDIA vGPU software on supported cloud services, you can host the license server on a VM on a supported cloud service.

Note: If you are using BYOL, you can host the license server on a physical machine or an on-premises VM if you prefer.

The following cloud services support NVIDIA vGPU software running in GPU pass-through mode:

  • Amazon EC2
  • Google Cloud Platform
  • Microsoft Azure

For more information, see NVIDIA Virtual GPU Software Supported Cloud Services.

A license server that is hosted in the cloud is accessed over the public Internet. For increased security, protect the license server and the licenses installed on it as follows:

  • Use the features of the license server to secure the license server as as explained in Since 2018.10: Securing the NVIDIA vGPU Software License Server.
  • Restrict access to the license server by client machines in one of the following ways:
    • Use firewall settings on the license server host or elsewhere to limit the machines that can access the license server.
    • Configure the license server host and the licensed client VMs to operate within a virtual private network.

3. Since 2018.10: Securing the NVIDIA vGPU Software License Server

3.1. Controlling Access to the License Server Management Interface

For increased security, you can control access to the license server management interface by allowing access only to authorized users. When access to the license server management interface is controlled, authorized users must authenticate themselves to manage licenses on the license server.

3.1.1. Default License Server Administrative Credentials

When the license server is started, the default administrator account is created and assigned super user role.

This account grants a full range of privileges to administer the license server, including authorization to create and manage other user accounts that have limited administrative privileges or other license server administrator accounts.

The default credentials for the license server administrator account are as follows:

  • User name: admin
  • Password: Admin@123

For increased security, reset the administrator password immediately after enabling administrative security for the license server. For instructions, see Resetting the Default Administrator Password for the License Server.

3.1.2. Enabling Administrative Security for the License Server

When administrative security is enabled for the license server, any user attempting to administer the license server through the command line tool or the license server management interface must provide a set of authorization credentials. By default, administrative security is not enabled on the license server.

CAUTION:
To protect sensitive data that is being transmitted during administrative operations, use the HTTPS protocol for communications between the license server and its management interface when administrative security is enabled for the license server. For more information, see Configuring the License Server To Use HTTPS.

Perform this task in a command shell on the license server host.

Set the property security.enabled to true.

nvidialsadmin -config -set security.enabled=true

Updated the property:security.enabled with value:true successfully

In any subsequent nvidialsadmin command, users must provide the required credentials for authenticating with the license server. For more information, see Authenticating with the License Server.

If you no longer require administrative security to be enabled on the license server, set the property security.enabled to false.
nvidialsadmin -authorize admin admin-password -config -set security.enabled=false
User authentication succeeded.

Updated the property:security.enabled with value:false successfully

After setting the property security.enabled to false, restart the Apache Tomcat server and the flexnetls-nvidia service.

3.1.3. License Server Password Requirements

To help you set strong passwords, the license server enforces some requirements on the length and complexity of passwords.

A license server password must be 8-64 characters long, contain no white space, and contain all of the following:

  • At least one lowercase character
  • At least one uppercase character
  • At least one number
  • At least one special character (for example, ^, *, $, -, +, ?, _, &, =, !, %, {, }, /, and #)

The password is case sensitive.

3.1.4. Resetting the Default Administrator Password for the License Server

When the license server is started, the default administrator account is created and assigned super user role. For increased security, reset the administrator password immediately after enabling administrative security for the license server.

Perform this task in a command shell on the license server host.

Change the password of the admin user.

nvidialsadmin -authorize admin Admin@123 -users -edit admin new-password
new-password
Your choice of new password for the default administrator account. The password is case sensitive and must be a strong password that meets the requirements in License Server Password Requirements.

3.1.5. Listing All License Server User Accounts

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with only the -users option and no other options.

nvidialsadmin -users

3.1.6. Creating a License Server User Account

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -users and -create options.

nvidialsadmin -users -create new-username new-user-password[ roles]
new-username
Your choice of user name for the user that you are adding.
new-user-password
Your choice of password for authenticating the user that you are adding. The password is case sensitive and must be a strong password that meets the requirements in License Server Password Requirements.
roles
One or more roles that determine operations allowed by the user for managing licenses on the license server:
  • ROLE_READ grants the user privileges to perform read-only operations on the license server, for example, to query features, licenses, license reservations, or license server status. This role is assigned by default.
  • ROLE_RESERVATIONS grants the user privileges to create and manage license reservations.
  • ROLE_ADMIN grants the user administrator privileges to update license server policies (local license server only), create and manage other user accounts, and perform other administrative tasks.

You can assign multiple roles to a user by separating each role with the + sign, for example, ROLE_READ+ROLE_RESERVATIONS.

This example adds the user lsmgr with the password 3Nt3rl5vr and the ROLE_ADMIN role.

nvidialsadmin -users -create lsmgr 3Nt3rl5vr ROLE_ADMIN

3.1.7. Modifying a License Server User Account

You can modify the account of an existing license server user to change the password or the roles for the account.

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -users and -edit options.

nvidialsadmin -users -edit username user-password[ new-roles]
username
The user name of the user whose account you are modifying.
user-password
The password for authenticating the user whose account you are modifying.

You must specify the password, even if you are not changing it.

  • To leave the password unchanged, specify the user's existing password.
  • To change the password, specify a new password. The password is case sensitive and must be a strong password that meets the requirements in License Server Password Requirements.
new-roles
The new roles that determine operations allowed by the user for managing licenses on the license server.

Specify new roles only if you want to change the roles for the account. To leave the user's existing roles unchanged, do not specify any roles in the command.

You can assign multiple roles to a user by separating each role with the + sign, for example, ROLE_READ+ROLE_RESERVATIONS.

This example changes role of the user lsmgr to the ROLE_RESERVATIONS role. Because the user's existing password 3Nt3rl5vr is specified, the password is not changed.

nvidialsadmin -users -edit lsmgr 3Nt3rl5vr ROLE_RESERVATIONS

3.1.8. Deleting a License Server User Account

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -users and -delete options.

nvidialsadmin -users -delete username
username
The user name for the user whose account you are deleting.

This example deletes the user account lsmgr from the license server.

nvidialsadmin -users -delete lsmgr

3.2. Configuring the License Server To Use HTTPS

By default, the license server management interface connects to the license server over the HTTP protocol. For increased security, particularly if the license server is accessed over the public Internet, you can specify that the license server management interface connects to the license server over HTTPS.

To configure the license server to use HTTPS, follow this sequence of instructions:

  1. Obtaining an SSL Certificate for the License Server
  2. Configuring the License Server with an SSL Certificate
  3. Setting the License Server Connection Protocol to HTTPS

You can also specify HTTPS for users' connections from a web browser to the license server management interface. See Specifying HTTPS for Connections from a Web Browser to the License Server Management Interface.

3.2.1. Obtaining an SSL Certificate for the License Server

  1. Request an SSL certificate from a certificate authority (CA) in Java keystore format (not a PEM text file) and secured with a password.

    In the certificate, you can choose to identify the license server host through either its host name or its fully qualified domain name. In your certificate signing request (CSR) to the CA, ensure that the Common Name (CN) attribute of the CSR matches how the license server is identified in the certificate. For example, if the license server is identified in the certificate through its fully qualified domain name, set the CN attribute to the fully qualified domain name of the license server.

    If necessary, contact the CA that will provide your certificate for information about how to request a certificate in Java keystore format or convert an existing certificate to this format.

  2. Store the SSL certificate in the appropriate directory on the license server host.
    • On Linux, store the SSL certificate in the /opt/flexnetls/nvidia/ directory.
    • On Windows, store the SSL certificate in the directory that contains the flexnetls.settings file.
  3. Optional: To prevent the password from being stored in plain text in license server configuration files, obfuscate the password.
    java -jar flexnetls.jar --password=password
    password
    The password with which the certificate is secured.

    This example obfuscates the password abracadabra.

    java -jar flexnetls.jar --password=abracadabra
    abracadabra => OBF:1ri71v1r1v2n1ri71shq1ri71shs1ri71v1r1v2n1ri7

3.2.2. Configuring the License Server with an SSL Certificate

Before configuring the license server with an SSL certificate, ensure that the following prerequisites are met:

  • You have obtained the certificate from a trusted CA.
  • The license server is not blocked by a firewall.

How to configure the license server with an SSL certificate depends on whether the license server is running on a Windows or Linux platform.

3.2.2.1. Configuring the License Server with an SSL Certificate on Windows

  1. In the folder where the SSL certificate file is stored, create a license server configuration file in plain text that provides access to the certificate.

    Give the configuration file a meaningful name with the .cfg extension, for example, https-config.cfg.

    In this file, set the following properties:

    • The name of the SSL certificate file for the license server on the license server host
    • The password with which the certificate is secured
    • The port number for incoming HTTPS requests
    keystore.path=server-certificate-file-name
    keystore.password=password
    https.port=https-port
    
    server-certificate-file-name
    The name of the SSL certificate file for the license server on the license server host. Do not include the path to this file.
    password
    The password with which the certificate is secured. If the password is obfuscated, specify the entire obfuscated string, including the OBF: prefix, for example, OBF:1ri71v1r1v2n1ri71shq1ri71shs1ri71v1r1v2n1ri7.
    https-port
    The port number for incoming HTTPS requests, for example, 443.

    This example provides access to the SSL certificate file keystore.jks, which is protected by an obfuscated password. The port number for incoming HTTPS requests is 443.

    keystore.path=keystore.jks
    keystore.password=OBF:1ri71v1r1v2n1ri71shq1ri71shs1ri71v1r1v2n1ri7
    https.port=443
  2. In the flexnetls.settings file, add the option that specifies the name of the configuration file that you created in the previous step.

    HTTPS_SERVER_CONFIG=configuration-file-name
    configuration-file-name
    The name of the configuration file that you created in the previous step. Do not include the path to this file.

    This example specifies the name of the configuration file https-config.cfg.

    HTTPS_SERVER_CONFIG=https-config.cfg
  3. Open a Command Prompt window and change to the license-server-installation-folder\server folder.
    license-server-installation-folder
    The folder in which the license server software is installed. The default license server installation folder is %SystemDrive%:\Program Files (x86)\NVIDIA\License Server.

    For example:

    C:\>cd C:\Program Files (x86)\NVIDIA\License Server\server
    C:\Program Files (x86)\NVIDIA\License Server\server>
  4. In the Command Prompt window, run the commands to update the license server with your configuration changes and start the license server.
    1. Update the license server with your configuration changes.
      C:\Program Files (x86)\NVIDIA\License Server\server>flexnetls.bat -update
    2. Start the license server.
      C:\Program Files (x86)\NVIDIA\License Server\server>flexnetls.bat -start

3.2.2.2. Configuring the License Server with an SSL Certificate on Linux

  1. In the /opt/flexnetls/nvidia/local-configuration.yaml file, edit the https-in section to set attributes that provide access to the certificate.

    Specifically, set the following attributes:

    • Enable HTTPS
    • The port number for incoming HTTPS requests
    • The name of the SSL certificate file for the license server on the license server host
    • The password with which the certificate is secured
    https-in:
    # Set to true to enable HTTPS
    enabled: true
    # HTTPS listening port
    port: https-port
    # Path to keystore
    keystore-path: server-certificate-file-name
    # Keystore password. You can obfuscate this with java -jar flexnetls.jar -password your-password-here
    keystore-password: password
    https-port
    The port number for incoming HTTPS requests, for example, 443.
    server-certificate-file-name
    The name of the SSL certificate file for the license server on the license server host. Do not include the path to this file.
    password
    The password with which the certificate is secured. If the password is obfuscated, specify the entire obfuscated string, including the OBF: prefix, for example, OBF:1ri71v1r1v2n1ri71shq1ri71shs1ri71v1r1v2n1ri7.

    This example provides access to the SSL certificate file keystore.jks, which is protected by an obfuscated password. The port number for incoming HTTPS requests is 443.

    https-in:
    # Set to true to enable HTTPS
    enabled: true
    # HTTPS listening port
    port: 443
    # Path to keystore
    keystore-path: keystore.jks
    # Keystore password. You can obfuscate this with java -jar flexnetls.jar -password your-password-here
    keystore-password: OBF:1ri71v1r1v2n1ri71shq1ri71shs1ri71v1r1v2n1ri7
  2. Restart the license server.
    [nvidia@localhost ~]$ systemctl restart flexnetls-nvidia

3.2.3. Setting the License Server Connection Protocol to HTTPS

  1. In the license server management interface, select Settings. The Settings page opens.
    Figure 13. License Server Settings for Setting the Connection Protocol

    Screen capture of the Settings page showing settings for connecting to the license server over HTTPS.

  2. In the Settings page, set the properties for connecting to the license server over HTTPS and click Save.
    1. Set the License server host name property to the value of the CN attribute in the certificate signing request for your license server certificate. For example, if the CN attribute was set to the fully qualified domain name, set License server host name to the fully qualified domain name of the license server.
    2. Set the License server listen port property to the port number for incoming HTTPS requests, for example, 443. The port number is set in the license server configuration files. If necessary, ask the system administrator who configured the license server for the port number.
    3. Set the Connect using HTTPS property to Yes.
    The license server management interface will now connect to the license server over HTTPS.
To specify that the license server management interface connects to the license server over HTTP, set the License server listen port to the port number for incoming HTTP requests, for example, 7070, set. the Connect using HTTPS property to No, and click Save.

3.2.4. Specifying HTTPS for Connections from a Web Browser to the License Server Management Interface

By default, users connect from a web browser to the license server management interface over the HTTP protocol. For increased security, particularly if the license server is accessed over the public Internet, you can specify HTTPS for users' connections from a web browser to the license server management interface. Specifying HTTPS for these connections involves configuring an HTTPS connector for the Apache Tomcat server that the license server management interface uses.

  1. In the Tomcat configuration file catalina-base/conf/server.xml, add a Connector element to define an SSL Coyote HTTP/1.1 connector on a specific port, for, example, 8443.
    catalina-base
    The base directory of the Apache Tomcat instance.
    <!-- Define a SSL Coyote HTTP/1.1 Connector on the specified port -->
    <Connector
        protocol="org.apache.coyote.http11.Http11NioProtocol"
        port="port" 
        maxThreads="200" 
        scheme="https" 
        secure="true" 
        SSLEnabled="true"
        keystoreFile="path-to-server-certificate" 
        keystorePass="password"
        clientAuth="false"
        sslProtocol="TLS"
    />
    port
    The HTTPS port for users' connections from a web browser to the license server management interface, for example, 8443.

    Ensure that the port is not already in use by another service. For example, do not use the port for accessing the license server SSL certificate as described in Configuring the License Server with an SSL Certificate on Windows and Configuring the License Server with an SSL Certificate on Linux.

    path-to-server-certificate
    The full path to the certificate file on the license server host.
    password
    The password with which the certificate is secured. The password must be specified in plain text. You cannot use an obfuscated password.

    For more information, see Edit the Tomcat Configuration File in the Apache Tomcat SSL/TLS Configuration HOW-TO.

  2. Restart the Apache Tomcat service.
Users now must access the license server management interface from a web browser through HTTPS on the specified port, for example, port 8443.

4. Managing Licenses on the NVIDIA vGPU Software License Server

Managing licenses on the NVIDIA vGPU software license server involves installing licenses on the license server and controlling and monitoring the usage of installed licenses. You manage the license server in a web browser through the license server management interface.

Since 2018.10: You can also manage the license server from the command line.

4.1. Accessing the License Server Management Interface

Access the license server management interface to verify that the license server is operating correctly or to manage licenses on the license server.
  1. In a web browser, visit the home page for the license server management interface.
    • If the license server host does not permit remote access, open a web browser on the license server host and connect to one of the following URLs, depending on whether the connection protocol is HTTP or HTTPS:
      • HTTP: http://localhost:8080/licserver
      • Since 2018.10: HTTPS: https://localhost:https-port/licserver
    • If the license server host’s network firewall is configured to permit remote access to the license server, open a web browser on a remote machine and connect to one of the following URLs, depending on whether the connection protocol is HTTP or HTTPS:
      • HTTP: http://hostname:8080/licserver
      • Since 2018.10: HTTPS: https://hostname:https-port/licserver
    https-port
    The HTTPS port for users' connections from a web browser to the license server management interface, for example, 8443. This port is specified in the Apache Tomcat configuration as explained in Specifying HTTPS for Connections from a Web Browser to the License Server Management Interface.
    hostname
    The fully-qualified domain name or IP address of the license server host.
    Since 2018.10: If user and password authentication is configured for the license server management interface, the Login page is displayed.
  2. Since 2018.10: If the Login page is displayed, enter your user name and password for logging in to the license server and click Authorize.
    Figure 14. License Server Login Page

    Screen capture showing the Login page for the license server management interface.

The browser should display the home page for the license server management interface, as shown in Figure 15.

Figure 15. License Server Management Interface

Screen capture showing the home page for the license server management interface.

If the management interface is not displayed, consult Management Interface Connection Errors for troubleshooting steps.

4.2. Obtaining the License Server’s MAC Address

The license server’s Ethernet MAC address uniquely identifies your server to the NVIDIA Software Licensing Center. You will need this address to register your license server with the NVIDIA Software Licensing Center to generate license files.

Note: If you are configuring the license server for high availability, you will need the MAC address of both the primary license server and the secondary license server.
  1. In the license server management interface, select Configuration.
  2. On the License Server Configuration page that opens, in the Server host ID drop-down list, select the platform’s ETHERNET address.
    Figure 16. Obtaining the License Server's MAC Address

    Screen capture showing the License Server Configuration page with the Server host ID property highlighted.

    Note: You must use the same ETHERNET ID to consistently identify the server when generating licenses on the NVIDIA Licensing Portal. If your platform has multiple Ethernet interfaces, multiple ETHERNET entries may be displayed in the Server host ID drop-down list. To ensure that you use the same ETHERNET ID to consistently to identify the server, select one entry that corresponds to a primary (nonremovable) interface on the platform.

4.3. Enabling Failover Support on the Primary and Secondary License Servers

If you are configuring high availability for the license server, you must enable failover support on both the primary license server and on the secondary license server. Set the same options on both servers.

  1. In the license server management interface, select Configuration. The License Server Configuration page opens.
    Figure 17. License Server Settings for Enabling Failover Support

    Screen capture of the License Server Configuration page showing settings for enabling failover support.

  2. Under License Generation, use the Backup URI and Main URI fields to set the URI to each server in a failover configuration.
    1. In the Backup URI field, enter http://secondary-server:7070/fne/bin/capability.
    2. In the Main URI field, enter http://primary-server:7070/fne/bin/capability.
    secondary-server
    The fully-qualified domain name (for example, gridlicense2.example.com) or the IP address (for example, 10.31.20.46) of the secondary license server.
    primary-server
    The fully-qualified domain name (for example, gridlicense1.example.com) or the IP address (for example, 10.31.20.45) of the primary license server.
  3. Set the options under Settings for server to sync between License servers as follows:
    1. Set the Synchronization to fne enabled option to true.
    2. In the Main FNE Server URI field, enter http://primary-server:7070/fne/bin/capability.
      primary-server
      The fully-qualified domain name (for example, gridlicense1.example.com) or the IP address (for example, 10.31.20.45) of the primary license server.
  4. Click Save.

4.4. Registering Your License Server and Getting License Files

To be able to generate and download licenses from the NVIDIA Software Licensing Center, you must register your license server. Before downloading a license file, you must generate the file by mapping to it the add-ons that correspond to your licenses. The license file is empty by default and does not contain any licenses it until you map add-ons to it.

Note: If you require high availability for the license server, you must register a secondary server when the primary server is registered. If you do not register a secondary server when the primary server is registered, you cannot register the secondary server later.
  1. If you are not already logged in, log in to the NVIDIA Enterprise Application Hub and click NVIDIA LICENSING PORTAL to go to the NVIDIA Software Licensing Center.
  2. In the navigation pane of the NVIDIA Software Licensing Center page, under GRID Licensing, select Register License Server.
  3. On the Register License Server page that opens, provide the details of your license server.
    1. In the MAC Address field, enter the MAC address of your primary license server. Enter only the numbers and letters in the address. Do not enter any spaces or punctuation. If you have only one license server configured, enter its MAC address in this field.
    2. In the Backup License Server ID field, enter the MAC address of your secondary license server. Enter only the numbers and letters in the address. Do not enter any spaces or punctuation. If you have only one license server configured, leave this field unset.
    3. Optional: Provide an alias and site name for your license server.

      If you do not provide an alias, it is set to the MAC address of your license server. You can edit the alias after your license server is registered.

      If you do not provide a site name, your license server is registered without a site name. You cannot add a site name after your license server is registered.

    4. Click Create.


    Screen capture showing the Register License Server page.

  4. On the View Server page that opens, follow the Map Add-Ons link.

    Screen capture showing the View Server page.

  5. On the Map Add-Ons page that opens, in the Qty to add field, enter the number of licenses you want to add to your license file and click Map Add-Ons.

    Screen capture showing the Map Add-Ons page.

    You can also configure and register multiple servers and distribute your NVIDIA vGPU software licenses across them by mapping add-ons to servers as necessary.

    After clicking Map Add-Ons, you are returned to the View Server page.
  6. Back on the View Server page, follow the Download License File link and save the .bin license file to your license server for installation.
Note: The .bin license file is valid for 24 hours. If you do not install the file within 24 hours of downloading it, you must download it again.

4.5. Installing a License

NVIDIA vGPU software licenses are distributed as .bin files for download from the NVIDIA Software Licensing Center.

Note: If you have configured high availability for the license server, you must install the license both on the primary license server and on the secondary license server.
Before installing a license, ensure that you have downloaded the license file from the NVIDIA Software Licensing Center.
  1. In the license server management interface, select License Management.
  2. On the License Management page that opens, click Choose File.
    Figure 18. Selecting a License File

    Screen capture that shows a file browser that is opened from the License Management page.

  3. In the file browser that opens, select the .bin file and click Open.
  4. Back on the License Management page, click Upload to install the license file on the license server. The license server should confirm successful installation of the license file.
    Figure 19. Successful Upload of a License File

    Screen capture of the License Management page showing confirmation of a successful installation of a license file.

  5. If you have configured high availability for the license server, restart the license server service on the primary license server and on the secondary license server.
    • On Windows, use the Service Manager, which is accessible from Task Manager, to restart the FNLS-nvidia service.
    • On Linux, as root, restart the flexnetls-nvidia service.
      [nvidia@localhost ~]$ sudo systemctl restart flexnetls-nvidia

4.6. Verifying High Availability Setup of the License Server

The license server log file indicates the failover role of the given license server and its synchronization status.

For the location of the log file on your platform, refer to Log File Locations and Types.

In the license server log file, search for the string that designates the server role. The line that contains the string and the lines that follow it indicate the role and status of the server.

  • For the primary server, search for the string main server.
    23:29:25,655 INFO  Server is designated as a main server in a failover configuration
    23:29:29,041 INFO  Received sync request from the backup server
    23:34:31,815 INFO  Generated sync message for the backup server
  • For the secondary server, search for the string backup server.
    00:39:53,290 INFO  Server is designated as a backup server in a failover configuration
    00:39:55,388 INFO  Starting sync from main server
    00:39:56,784 INFO  Successfully completed sync from main server
    
Tip: When a client acquires a license from the primary server, the number of available licensed features is reduced by 1 on both the primary and the secondary servers. When the license server is operating, you can verify its high availability setup by confirming that the count of available licenses on the primary and the secondary servers changes as expected as clients acquire licenses from the server.

4.7. Viewing Information About Installed Licenses

From the license server management interface, you can find out which licenses are installed on the server, view detailed information about individual licenses, and see how licensed clients are using the installed licenses.

4.7.1. Viewing the Properties of All Installed Licensed Features

By viewing licensed feature properties, you can see the licenses that are installed on the server and get detailed information about each installed license feature.

In the license server management interface, select Licensed Feature Usage.

The Licensed Feature Usage page that opens lists all licensed features installed on the license server.

Figure 20. Viewing Licensed Feature Properties

Screen capture showing the Licensed Feature Usage page

For each licensed feature, the properties in the following table are displayed.

Table 1. Licensed Feature Properties
Property Description
Feature An abbreviated name for the feature.
Version The version number associated with the feature.
Count The number of licenses for the feature that are currently installed on the license server. Each concurrent user of a feature normally consumes one license.
Available The number of licenses for the feature that are currently available to borrow from the server. This number decreases as users borrow licenses from the server, and increases as licenses are returned.
Expiry The date on which the right to use the licensed feature expires. If the licenses are perpetual use licenses, they have no expiration date. Perpetual licenses are indicated by permanent in place of an expiration date.

4.7.2. Viewing the Details of a Single Licensed Feature

For each installed license feature, you can view detailed information about the feature.
  1. In the license server management interface, select Licensed Feature Usage.
  2. On the Licensed Feature Usage page that opens, click the individual licensed feature about which you want detailed information. The Licensed Feature Details page that opens shows information about the feature.
    Figure 21. Licensed Feature Usage Details

    Screen capture showing the Licensed Feature Details page.

4.7.3. Viewing Information About All Borrowed Licenses

By viewing information about all borrowed licenses, you can find out which licenses have been borrowed from the license server and are in use by a licensed client.

In the license server management interface, select Licensed Clients.

The Licensed Clients page that opens lists the NVIDIA vGPU software client virtual machines are using licensed features.

The example in Figure 22 shows that one NVIDIA vGPU software client virtual machine is using a Quadro-Virtual-DWS license.

Figure 22. Viewing License Usage

Screen capture of the Licensed Clients page showing one NVIDIA vGPU software client virtual machine that is using a Quadro-Virtual-DWS license.

4.7.4. Viewing the Details of a Single Licensed Client

  1. In the license server management interface, select Licensed Clients.
  2. On the Licensed Clients page that opens, click the Client ID of the licensed client about which you want detailed information. The Client Details page opens to show detailed information about the licensed client.
    Figure 23. Licensed Client Details

    Screen capture showing the Client Details page.

4.7.5. About the License Borrow Period

At the end of the borrow period, typically multiple days, a borrowed license is automatically freed by the license server for use by other clients, and becomes unavailable on the licensed client that previously held it. While active, a licensed client renews its license periodically to ensure the borrow period does not expire, if it continues to use the license and has ongoing network connectivity to the license server.

4.8. Reserving Licenses

Licenses are normally distributed to clients on a first-come, first-served basis. Reservations allow licenses to be set aside for specific clients, ensuring that those clients can always obtain a license.

4.8.1. Creating License Reservations

The license server management interface enables you to set up several new reservations and submit them to the license server in a single group.
Note: After creating a group of license reservations, you cannot use the management UI to delete individual reservations in the group or to add new reservations to the group. If you try to use the management UI to delete a single entry from the Reservation page, all entries on the page are deleted. For more information about this issue and its workaround, see Virtual GPU License Server Release Notes.
Note: In an HA configuration, create identical license reservations on the primary license server and the secondary license server. To ensure that the license reservations are identical on both servers, you can export reservations from one server and import them into the other server as explained in Exporting and Importing License Reservations.
  1. In the license server management interface, select Reservations. The License Reservations page opens.
  2. Add each reservation that you want to create to the list of pending reservations.
    Figure 24. Adding a License Reservation

    Screen capture showing the License Reservations page.

    1. On the License Reservations page, click Add.
    2. On the Add Reservation page that opens, provide the details of the client for which you are creating the reservation and click Add.
      Group Name
      (Optional) Enter the name you want to assign to this reservation group.
      Client ID
      Enter the client’s Ethernet MAC address without spaces. All letters in the MAC address must be in upper case.
      Feature Name
      Enter the licensed feature name as listed on the Licensed Feature Usage page, which is shown in Viewing the Properties of All Installed Licensed Features.
      Version
      Enter the version number listed for the feature listed on the Licensed Feature Usage page.
      Count
      Set to the number of licenses that you want to reserve for the client.
  3. After adding all reservations that you want to create, click Submit to commit the pending reservations to the license server.
    Figure 25. Submitting a Pending Reservation

    Screen capture showing the License Reservations page with pending reservations.

After the reservations are submitted, the License Reservations page shows a list of currently stored reservations on the server.
Figure 26. Listing Reservations

Screen capture of the License Reservations page showing currently stored reservations.

Note: If GRID Virtual Workstation licenses and Quadro vDWS licenses are available on the same license server, GRID Virtual Workstation licenses are assigned first, even to clients that have reserved Quadro vDWS licenses.

4.8.2. Deleting License Reservations

If a client no longer requires a license that is reserved for it, delete the reservation to release the license for distribution to other clients.
  1. In the license server management interface, select Reservations.
  2. On the License Reservations page that opens, select the reservations that you want to delete and click Edit.

    The License Reservations page is updated to replace the existing buttons on the page with the Delete button.

  3. On the updated License Reservations page, click Delete.
    Figure 27. Deleting a Reservation

    Screen capture of the License Reservations page showing the confirmation for deleting a request.

  4. In the confirmation dialog box that opens, click OK.

4.8.3. Exporting and Importing License Reservations

Exporting license reservations downloads the current reservation list as an XML file through your web browser. Importing license reservations from an XML file replaces the license server’s current reservation list with the contents of the file.
Note: Because importing license reservations from a file replaces the license server’s current reservation list, any reservations on the server that are not in the file are lost.
  1. In the license server management interface, select Reservations.
  2. On the License Reservations page that opens, do one of the following:
    • To export license reservations, click Export.
    • To import license reservations, click Import, browse to the XML file that contains the reservations, and click Upload.
    Figure 28. Exporting and Importing License Reservations

    Screen capture showing the License Reservations page with the Import and Export buttons highlighted.

4.9. Removing Licenses from a License Server

Remove licenses from a license server if they are no longer needed or in preparation for migrating them to a new server. Removing licenses involves generating and downloading a license file from which you have removed the add-ons that correspond to the licenses that you want to remove.

  1. If you are not already logged in, log in to the NVIDIA Software Licensing Center.
  2. In the navigation pane of the NVIDIA Software Licensing Center page, under GRID Licensing, select Search License Servers.
  3. On the Search Servers page that opens, select the license server from which you want to remove licenses.
  4. On the View Server page that opens, follow the Remove Add-Ons link.

    Screen capture showing the View Server page.

  5. On the Remove Add-Ons page that opens, in the Qty to Remove field, enter the number of licenses you want to remove and click Remove Add-Ons.

    Screen capture showing the Remove Add-Ons page.

    After clicking Remove Add-Ons, you are returned to the View Server page.
  6. Back on the View Server page, follow the Download License File link and save the .bin license file to your license server.
    Note: You must download the license file after you remove add-ons. If you do not download the license file, the licenses that correspond to the add-ons that you removed from the license file are not removed from the server.
If you removed licenses in preparation for migrating them to a new server, add them to the server as explained in Registering Your License Server and Getting License Files.

Converting an Evaluation License Server to a Permanent License Server

If you purchase NVIDIA vGPU software licenses after evaluating the software, you can use the same license server that you registered for your evaluation licenses to serve your permanent licenses.
  1. Log in to the NVIDIA Software Licensing Center with the account that you created for getting your evaluation licenses.
  2. Get the NVIDIA vGPU software for the licenses that you purchased. For instructions, refer to Virtual GPU Software Quick Start Guide.
  3. Get your new license files as explained in Registering Your License Server and Getting License Files.
    Note: Follow the steps only for mapping add-ons and downloading the license file. Do not try to register your license server again. If you try to register a license server that is already registered, the attempt fails and you are warned that the MAC address is already in use.

5. Troubleshooting the NVIDIA vGPU Software License Server

You can troubleshoot some common issues with the license server yourself without the need to obtain help from NVIDIA.

Note: Before troubleshooting, review Virtual GPU License Server Release Notes for information about known issues and potential workarounds.

5.1. Obtaining Diagnotsic Information from the License Server Log files

The license server log files contain diagnostic information to help with troubleshooting. If necessary, you can increase the amount of information in the log files by changing the log level of the license server.

5.1.1. Log File Locations and Types

Log files from the installer and license server are in the locations in the following table.

Table 2. Log File Locations
Host OS Log Location
Windows Installer C:\Program Files (x86)\NVIDIA\License Server\Logs
License server C:\Windows\ServiceProfiles\NetworkService\flexnetls\nvidia\logs
Linux Installer /opt/flexnetls/nvidia/Logs/
License server /var/opt/flexnetls/nvidia/logs

To confirm the location of the license server log files, use the license server management interface: Select Configuration and click the Properties tab.

The location of the log files is displayed on the License Server Configuration page in the Logging Directory field.



Screen capture of the License Server Configuration page showing the Logging Directory field.

The license server generates these types of runtime log files:

  • Management interface accesses are recorded in access_*.request.log files.
  • License server activity is recorded in flexnetls_*.log files.

5.1.2. Changing the License Server Log Level

The default log level of the license server is INFO.

To adjust the amount of information in the log files, set the log level to a different level.

  1. In the license server management interface, select Configuration and click the Properties tab.
  2. On the License Server Configuration page, in the Logging Threshold field, enter a new log level, for example WARN or ERROR, and click Save.
    Figure 29. Changing the License Server Log Level

    Screen capture showing the License Server Configuration page with the Logging Threshold field highlighted.

All messages at or below the level you set are recorded in the log file. For example, if you set the log level to WARN, fatal-event, error, and warning messages are recorded.

5.2. Management Interface Connection Errors

The management interface at http://hostname:8080/licserver might be unreachable because the license server host’s firewall disallows remote access to server TCP port 8080 or because the Apache Tomcat service is not running on the server.
  1. If you are trying to access the management interface from a remote machine, try accessing the interface locally from the license server host. To access the interface locally, open a web browser on the license server host and connect to the URL http://localhost:8080/licserver.
  2. If you can access the management interface locally, ensure that the license server host’s firewall is configured to allow remote access to server TCP port 8080.
  3. If you cannot access the management interface locally, verify that the Apache Tomcat service is running on the license server host.
    • On Windows, use the Service Manager, which is accessible from Task Manager, to restart the service if it is not running.
      Figure 30. Apache Tomcat Status in Windows Services Manager

      Screen capture of the Windows Services Manager showing the status of Apache Tomcat.

    • On Linux, check the status of the tomcat service.
      [nvidia@localhost ~]$ systemctl status tomcat.service
      tomcat.service - Apache Tomcat Web Application Container
         Loaded: loaded (/usr/lib/systemd/system/tomcat.service; enabled)
         Active: active (running) since Fri 2015-09-11 07:39:11 PDT; 9h ago
       Main PID: 1373 (java)
         CGroup: /system.slice/tomcat.service
                 └─1373 java -classpath /usr/share/tomcat/bin/bootstrap.jar:/usr/sh...

5.3. License Server Connection Errors

If the license server’s management interface cannot establish a connection to the license server, the management interface displays an error message.
Figure 31. License Server Connection Error

Screen capture of the Licensed Clients page showing a connection error.

  1. Verify that the license service is running.
    • On Windows, use the Service Manager, which is accessible from Task Manager, to restart the service if it is not running.
      Figure 32. License Server Status in Windows Services Manager

      Screen capture of the Windows Services Manager showing the status of the license server.

    • On Linux, check the status of the flexnetls-nvidia service.
      [nvidia@localhost ~]$ systemctl status flexnetls-nvidia.service
      flexnetls-nvidia.service - LSB: start and stop FlexNet License Server
         Loaded: loaded (/etc/rc.d/init.d/flexnetls-nvidia)
         Active: active (running) since Fri 2015-09-11 14:44:34 PDT; 2h 49min ago
        Process: 4502 ExecStart=/etc/rc.d/init.d/flexnetls-nvidia start (code=exited, status=0/SUCCESS)
         CGroup: /system.slice/flexnetls-nvidia.service
                 ├─4567 java -Dbase.dir=/var/opt/flexnetls/nvidia -jar /opt/flexnet...
                 └─4609 java -Dbase.dir=/var/opt/flexnetls/nvidia -jar /opt/flexnet...
  2. Inspect the license server log files, which are described in Log File Locations and Types.

5.4. License Upload Failures

Errors may occur during an attempt to upload a license file to the license server.

5.4.1. License Response Fails Trust Criteria

The license server reports a trust failure if it attempts to reload a license file that’s already loaded.

Verify that the license file being uploaded is not already active on the server.

5.4.2. Capability Response Rejected - Response Time Too Old

The license server reports this error if the license file you are attempting to upload has expired. Licenses generated on the NVIDIA licensing portal must be installed onto your license server within 24 hours of generation.

Generate a new license file on the licensing portal and promptly upload the new file to your license server.

5.4.3. Capability Response Rejected – Update Time Invalid

The license server reports this error if the license server is already configured with a license file that is newer than the license file you are attempting to upload.

You cannot roll back an active license to an older license file.

5.4.4. Capability Response Rejected - Response Enterprise ID Does Not Match the Server

The license server reports this error if you are trying to download a license file to a license server on which licenses from a different customer account are installed.

To resolve this issue:
  1. Stop the license server.
  2. Delete the license server's trusted storage database.
  3. Restart the license server.
  4. Download and install the new license.

5.5. Trusted Storage Database Errors

Errors in the trusted storage database, such as corruption of the database, can prevent the license server from reading the database. If it cannot read the database, the license server cannot start.

You can correct errors in the trusted storage database in one of the following ways:
  • Since 2018.06: Restoring the database from a backup
  • Deleting the database and then reinstalling licenses on the license server

5.5.1. Since 2018.06: Restoring the Trusted Storage Database from a Backup

The license server automatically backs up the database after every 1,000 license checkouts or after every five-minute interval in which a change has taken place, whichever event occurs first. If no change to the database occurs during a five-minute interval, the database is not backed up. Backups are triggered by changes such as the checkout, renewal, or release of a license.

5.5.1.1. Since 2018.06: Restoring the Trusted Storage Database from a Backup on Windows

Before restoring the trusted storage database from a backup, ensure that the following prerequisites are met:

  • The JAVA_HOME environment variable is set to the folder where the Java runtime environment is installed on the license server host.
  • The TRUSTED_STORAGE_DIR environment variable is set to %SystemDrive%:\Windows\ServiceProfiles\NetworkService\flexnetls\nvidia, which is the folder that contains the trusted storage database files.
  1. Open a Command Prompt window and change to the license-server-installation-folder\server folder.
    license-server-installation-folder
    The folder in which the license server software is installed. The default license server installation folder is %SystemDrive%:\Program Files (x86)\NVIDIA\License Server.

    For example:

    C:\>cd C:\Program Files (x86)\NVIDIA\License Server\server
    C:\Program Files (x86)\NVIDIA\License Server\server>
  2. In the Command Prompt window, run the command to restore the database.
    C:\Program Files (x86)\NVIDIA\License Server\server>flexnetls.bat -restore-database
The database is restored to the location defined in the TRUSTED_STORAGE_DIR environment variable.

5.5.1.2. Since 2018.06: Restoring the Trusted Storage Database from a Backup on Linux

Before restoring the trusted storage database from a backup, ensure that the following prerequisites are met:

  • The JAVA_HOME environment variable is set to the directory where the Java runtime environment is installed on the license server host.
  • The TRUSTED_STORAGE_DIR environment variable is set to /var/opt/flexnetls/nvidia/, which is the directory that contains the trusted storage database files.
  1. Change to the license-server-installation-dir/server directory.
    license-server-installation-dir
    The directory in which the license server software is installed. The default license server installation directory is /opt/flexnetls/nvidia.

    For example:

    $ cd /opt/flexnetls/nvidia/server
  2. Run the command to restore the database.
    $ flexnetls --restore-database
The database is restored to the location defined in the TRUSTED_STORAGE_DIR environment variable.

5.5.2. Deleting the Trusted Storage Database

Deleting the trusted storage database clears all information about license assignments and allocations.

After deleting the trusted storage database, reinstall your licenses on the license server as explained in Installing a License.

5.5.2.1. Deleting the Trusted Storage Database on Windows

  1. Close any web browser windows that are accessing the license server.
  2. Stop the FlexNet License Server - nvidia service.
    1. Start Task Manager and in the Windows Task Manager window that opens, click the Services button.
    2. In the Services window that opens, context-click FlexNet License Server - nvidia and from the menu that pops up, choose Stop.
  3. Delete all files in the %SystemDrive%:\Windows\ServiceProfiles\NetworkService\flexnetls\nvidia folder, which contains the trusted storage database files.
  4. Start the FlexNet License Server - nvidia service.
    1. Start Task Manager and in the Windows Task Manager window that opens, click the Services button.
    2. In the Services window that opens, context-click FlexNet License Server - nvidia and from the menu that pops up, choose Start.

5.5.2.2. Deleting the Trusted Storage Database on Linux

This task requires system administrator privileges.
  1. Close any web browser windows that are accessing the license server.
  2. Stop the flexnetls-nvidia service.
    # sudo systemctl stop flexnetls-nvidia.service
  3. Delete all files in the /var/opt/flexnetls/nvidia/ directory, which contains the trusted storage database files.
    # sudo \rm -rf /var/opt/flexnetls/nvidia/*
  4. Start the flexnetls-nvidia service.
    # sudo systemctl start flexnetls-nvidia.service

5.6. Issues when the License Server Is Used with Security Software

When the license server is used with security software, such as a firewall or antivirus software, issues may occur if the security software blocks certain applications or functionality.

The following issues are examples of the kinds of issues that may occur if security software blocks certain applications or functionality:

  • Failure of the license server to start
  • Access violation exceptions
  • Core dumps by the JRE

To determine whether security software is causing these issues, test your license server setup with the security software disabled or removed. If disabling or removing the security software resolves the issue, consider one of the following long-term fixes:

  • If your organization's software security policies allow, add an exception rule for the license server application.
  • Otherwise, contact NVIDIA Enterprise Support for assistance in determining the root cause of the issue. When you contact NVIDIA Enterprise Support, provide a detailed description of the symptoms of the issue and the exact versions of any security software that you are using on the license server host.

6. Uninstalling the NVIDIA vGPU Software License Server

You can uninstall the NVIDIA vGPU software License Server when it is no longer required.

6.1. Uninstalling the NVIDIA vGPU Software License Server on Windows

  1. Start the license server uninstaller. You can start the license server uninstaller in Windows Control Panel or in Windows Explorer from the license server installation directory.
    • In Windows Control Panel, open the Programs and Features pane, select License Server from the publisher NVIDIA, and click Uninstall/Change.
      Figure 33. Starting the Uninstaller from Windows Control Panel

      Screen capture of the Windows Control Panel showing how to uninstall the license server.

    • In Windows Explorer, open the license server installation directory and double-click the Change License Server Installation application.

      The default license server installation directory is C:\Program Files (x86)\NVIDIA\License Server.

      Figure 34. Starting the Uninstaller in Windows Explorer from the License Server Installation Directory

      Screen capture of Windows Explorer showing the Change License Server Installation application in the license server installation directory.

    Since 2018.06: If the license server software was installed in console mode, the uninstaller runs in console mode. Otherwise, the Configure License Server dialog box opens.
  2. If the Configure License Server dialog box opens, ensure that the Uninstall Product option is selected and click Next.
    Figure 35. Running the License Server Uninstaller on Windows

    Screen capture showing the Configure License Server dialog box with the Uninstall Product option selected.

  3. When prompted, confirm that you want to uninstall the license server.

6.2. Uninstalling the NVIDIA vGPU Software License Server on Linux

  1. Start the license server uninstaller.
    1. Change to the license server installation directory. The default license server installation directory is /opt/flexnetls/nvidia.
      [nvidia@localhost ~]$ cd /opt/flexnetls/nvidia
    2. As root, run the Change License Server Installation command.
      [nvidia@localhost ~]$ sudo ./Change\ License\ Server\ Installation
    Since 2018.06: If the license server software was installed in console mode, the uninstaller runs in console mode. Otherwise, the Configure License Server window opens.
  2. If the Configure License Server window opens, ensure that the Uninstall Product option is selected and click Next.
    Figure 36. Running the License Server Uninstaller on Linux

    Screen capture showing the Configure License Server dialog box with the Uninstall Product option selected.

  3. When prompted, confirm that you want to uninstall the license server.

A. Since 2018.10: Administering the License Server from the Command Line

The nvidialsadmin utility provides options for administering the license server from the command line.

Options are available for the following administrative operations:

  • Maintaining the license server
  • Managing administrative security
  • Viewing features installed on the license server
  • Monitoring license distribution to clients

A.1. Running the nvidialsadmin Utility

The nvidialsadmin utility is distributed as the nvidialsadmin.bat batch file on Windows and as the nvidialsadmin.sh shell script on Linux.

Before attempting to run the nvidialsadmin utility, ensure that the JAVA_HOME environment variable is set to the folder where the Java runtime environment is installed on the license server host.

Run the nvidialsadmin utility in a Windows or Linux command shell from the folder that contains the nvidialsadmin.bat batch file or the nvidialsadmin.sh shell script.

The nvidialsadmin utility is contained in the folder license-server-installation-folder/enterprise.

license-server-installation-folder
The folder in which the license server software is installed.

The default folders for the Windows and Linux platforms are as follows:

  • Windows: %SystemDrive%:\Program Files (x86)\NVIDIA\License Server\enterprise
  • Linux: /opt/flexnetls/nvidia/enterprise
Note:

You must run the nvidialsadmin utility from the folder that contains the nvidialsadmin.bat batch file or the nvidialsadmin.sh shell script. If you try to run the utility from another folder by specifying the path to the utility either in the PATH variable or on the command line, the attempt fails and the following error message is displayed:

Error: Unable to access jarfile nvidialsadmin.jar

A.2. Setting the License Server Base URL for the nvidialsadmin Utility

All nvidialsadmin commands require the base URL of the license server.

The format of the base URL of the license server is as follows:

scheme://address:port/api/version/instances/~
scheme
The URL scheme, which is either http or https.
address
The address of the license server, which can be a fully-qualified domain name such as gridlicense1.example.com, or an IP address such as 10.31.20.45.
port
The port number through which the nvidialsadmin utility accesses the licence server. The default depends on whether scheme is http or https.
  • For http, the default is 7070.
  • For https, the default is 443.
version
The API version of the license server, for example, 1.0.

The following examples show the different ways of specifying the address of the license server in the base URL:

  • Fully-qualified domain name:
    • http://gridlicense1.example.com:7070/api/1.0/instances/~
    • https://gridlicense1.example.com:443/api/1.0/instances/~
  • IP address:
    • http://10.31.20.45:7070/api/1.0/instances/~
    • https://10.31.20.45:443/api/1.0/instances/~

Set the license server base URL for the nvidialsadmin utility in one of the following ways:

  • Globally for all nvidialsadmin commands by specifying the FLEXNETLS_BASEURL environment variable
  • Individually in each nvidialsadmin command by setting the -server option

A.3. Getting Help for the nvidialsadmin Utility

For details about the nvidialsadmin utility and its options, get help information for the utility by entering the following command in a command shell on the license server host:

nvidialsadmin -help

A.4. Authenticating with the License Server

When administrative security is enabled for the license server, the -authorize option with your credentials must be the first option that you specify in any nvidialsadmin command.

  • To provide your password in the command, specify the credentials as follows:
    nvidialsadmin -authorize username password
  • To be prompted for your password and avoid typing the password in clear text in the command, provide the -passwordConsoleInput option .
    nvidialsadmin -authorize username -passwordConsoleInput
username
Your user name for authenticating with the license server.
password
Your password for authenticating with the license server.
Note: If you specify the wrong credentials more than three times, your license server user account is blocked for 10 minutes and a message similar to the following example is displayed:
Too many failed logins for user admin on instance WX0EDD7ALYMN. 
Logins will be blocked for 10 minutes

A.5. Checking the Status of the License Server

You can perform a status check to confirm that the license server is running correctly.

This check tells you whether the license server is active and provides additional information, such as:

  • Version information for the license server
  • The URLs for the main license server and, if HA is configured for the license server, the back-up license server

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -status option.

nvidialsadmin  -status
Copyright (c) 2015-2018 Flexera LLC. All Rights Reserved.

(version) Version            : 2018.09
(buildVersion) Build Version : 237146

The server is in active state.

Server: http://localhost:7070/ active
Backup Server: Not configured

A.6. Getting General Configuration Information for the License Server

You can get general informaton about the configuration of the license server, such as the IP address and host name of the server.

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -config option and set the -filter option to general.

nvidialsadmin -config -filter general
General License Server Information
-----------------------------------
(license_server_url) IP                  : 127.0.0.1
(host_name) Host Name                    : localhost
(publisher_name) Publisher Name          : nvidia
(host_id) Binding ID                     : ETHERNET (482AE30D8299)
(license_server_port) Port               : 7070
(licensing.backup.uri)                   : Not Configured
-----------------------------------

A.7. Listing Features Installed on the License Server

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -features option.

nvidialsadmin -features
================================================================================
Name              Count           Version         Type              Expiration
================================================================================

Quadro-Virtual-DWS 75000           5.0             CONCURRENT        permanent

Total number of features : 1

A.8. Listing the Distribution of License Server Features

Perform this task in a command shell on the license server host.

Note: For clarity, required options for authenticating the administrator user and specifying the license server URL are omitted from this example.

Run the nvidialsadmin utility with the -licenses and -verbose options.

nvidialsadmin -licenses -verbose
===================================================================================
Feature ID    Feature Name         Feature Version   Feature Count Used/Available
===================================================================================
1             vGPU-virtual               3.0                 0/25
2             Quadro-Virtual-DWS         5.0                 1/24
===================================================================================

Device Information:

-------------------------------------------------------------
Device Name                   Feature Registered(Used Count)
-------------------------------------------------------------
5C5F67C3836D                         Quadro-Virtual-DWS(1)
===================================================================================

        Total feature count           : 50
        Total feature count used      : 1
        Total uncounted features      : 0
===================================================================================

Notices

Notice

ALL NVIDIA DESIGN SPECIFICATIONS, REFERENCE BOARDS, FILES, DRAWINGS, DIAGNOSTICS, LISTS, AND OTHER DOCUMENTS (TOGETHER AND SEPARATELY, "MATERIALS") ARE BEING PROVIDED "AS IS." NVIDIA MAKES NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.

Information furnished is believed to be accurate and reliable. However, NVIDIA Corporation assumes no responsibility for the consequences of use of such information or for any infringement of patents or other rights of third parties that may result from its use. No license is granted by implication of otherwise under any patent rights of NVIDIA Corporation. Specifications mentioned in this publication are subject to change without notice. This publication supersedes and replaces all other information previously supplied. NVIDIA Corporation products are not authorized as critical components in life support devices or systems without express written approval of NVIDIA Corporation.

HDMI

HDMI, the HDMI logo, and High-Definition Multimedia Interface are trademarks or registered trademarks of HDMI Licensing LLC.

OpenCL

OpenCL is a trademark of Apple Inc. used under license to the Khronos Group Inc.

Trademarks

NVIDIA, the NVIDIA logo, NVIDIA GRID, vGPU, Pascal, Quadro, and Tesla are trademarks or registered trademarks of NVIDIA Corporation in the U.S. and other countries. Other company and product names may be trademarks of the respective companies with which they are associated.

Third-Party Software

This NVIDIA product contains third party software that is made available under their respective software licenses.

Apache Tomcat (https://tomcat.apache.org/download-80.cgi) is provided under the following terms: Copyright 2015 NVIDIA Corporation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.