NVIDIA License System User Guide

Documentation for system administrators that explains how to install, configure, and manage the NVIDIA License System.

1. Introduction to NVIDIA License System

The NVIDIA License System is used to serve a pool of floating licenses to licensed NVIDIA software products. The NVIDIA License System is configured with licenses obtained from the NVIDIA Licensing Portal.

Note:  NVIDIA vGPU software releases earlier than 13.0 do not support NVIDIA License System. For full details of NVIDIA vGPU software releases that support NVIDIA License System, refer to NVIDIA License System Release Notes.

1.1. Introduction to NVIDIA Software Licensing

To activate licensed functionalities, a licensed client leases a software license served over the network from an NVIDIA License System service instance when the client is booted. The license is returned to the service instance when the licensed client is shut down.

1.2. About Service Instances

A service instance is required to serve licenses to licensed clients.

NVIDIA License System supports the following types of service instances:

  • Cloud License Service (CLS) instance. A CLS instance is hosted on the NVIDIA Licensing Portal.
  • Delegated License Service (DLS) instance. A DLS instance is hosted on-premises at a location that is accessible from your private network, such as inside your data center.
To provide isolation for performance, security, and ease of administration, you can deploy multiple service instances as needed. For example, you can deploy service instances in distinct physical locations by deploying a DLS instance in each of your data centers. You can also use a mixture of CLS and DLS instances to serve your licenses to licensed clients.
Note: You cannot mix CLS and DLS instances in a high availability (HA) cluster of service instances. Each node in an HA cluster must be a DLS instance.

1.2.1. About Cloud License Service (CLS) Instances

A Cloud License Service (CLS) instance is hosted on the NVIDIA Licensing Portal.

Because a CLS instance is hosted on the NVIDIA Licensing Portal, you do not need to download licenses from the NVIDIA Licensing Portal and upload them to the instance.



Diagram showing how a licensed client leases a license from and returns a license to a CLS instance hosted on the NVIDIA Licensing Portal

Hosting a CLS instance on a cloud service provides robustness and dynamic scalability for the CLS instance. Because a CLS instance is maintained by NVIDIA and the cloud service provider, feature and maintenance updates are generally transparent to users.

1.2.2. About Delegated License Service (DLS) Instances

A Delegated License Service (DLS) instance is hosted on-premises at a location that is accessible from your private network, such as inside your data center.

Because a DLS instance is fully disconnected from the NVIDIA Licensing Portal, you must download licenses from the NVIDIA Licensing Portal and upload them to the instance manually.



Diagram showing how a licensed client leases a license from and returns a license to a DLS instance hosted on-premises and how licenses must be downloaded from the NVIDIA Licensing Portal and uploaded to the instance

1.3. About the NVIDIA Licensing Portal

The NVIDIA Licensing Portal provides access to the entitlements that you purchased and the licenses that they contain.

To be able to download NVIDIA vGPU software licenses, you must create at least one license server on the NVIDIA Licensing Portal and allocate licenses in your entitlements to the server. You can also distribute your licenses across multiple license servers as necessary, add new licensed products to an existing server, and delete license servers that you no longer require.

To help you manage your entitlements and licenses on the NVIDIA Licensing Portal, you can add other users as registered contacts in the organization associated with your NVIDIA Enterprise Account. To secure your entitlements and licenses, NVIDIA Licensing Portal provides role-based access for all registered contacts. For more information, see Managing Contacts on the NVIDIA Licensing Portal.

By default, all entitlements are associated with a top-level organization and are accessible to all contacts in the organization. If you need to allow only specific groups of contacts within your organization to access specific entitlements, you can partition your entitlements into isolated segments. However, if a single collection of entitlements that spans your entire organization meets your business needs, you can leave all your entitlements in the top-level organization.

To partition your entitlements into isolated segments, NVIDIA Licensing Portal provides the ability to create virtual groups and assign entitlements and contacts to them. For more information, see Managing Virtual Groups.

1.4. High Availability for NVIDIA License System DLS Instances

To provide licensed clients with continued access to licenses if a DLS instance fails, you can configure DLS instances for high availability.

High availability requires two DLS instances in a failover configuration:

  • A primary DLS instance, which is actively serving licenses to licensed clients
  • A secondary DLS instance, which acts as a backup for the primary DLS instance

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

If the primary DLS instance fails, failover occurs. The secondary DLS instance becomes the primary instance and begins to serve licenses. The DLS instance that failed becomes the secondary instance when it is returned to service. The next time that failover occurs, the roles of the primary DLS instance and secondary DLS instance are reversed again.

Note: To ensure that licenses in the enterprise remain continually available after failure of the primary DLS instance, return the failed DLS instance to service as quickly as possible to restore high availability support. After failure of a DLS instance, the remaining instance becomes a single point of failure.

During normal operation, the primary DLS instance continually updates the secondary DLS instance with information about the licenses that are being served to clients.

For more information about configuring DLS instances for high availability, see Configuring an HA Cluster of DLS Instances.

2. Installing and Configuring the DLS Virtual Appliance

To simplify the installation and administration of the DLS, the DLS is distributed as a software image to be installed or deployed on a supported platform. The DLS is a secure, hardened environment in which access to the application software is strictly controlled.
The following types of DLS software image are available:
  • A virtual appliance image to be installed in a VM on a supported hypervisor
  • A containerized software image for bare-metal deployment on a supported container orchestration platform

Each DLS software image is configured with a fixed set of user accounts. You cannot add other user accounts to the software image. Furthermore, modifications to the configured accounts are strictly controlled.

In each VM-based virtual appliance image, the DLS application software is containerized to allow limited access to the OS so that non-root users can install security compliance and scanning tools in the VM. However, a container orchestration platform cannot control or restrict access to the OS on which the platform is running.

As far as possible, the container-based and VM-based DLS appliances are functionally equivalent. Therefore, whether to use a container-based or VM-based DLS appliance depends on whether a container orchestration platform or hypervisor best meets the requirements of your IT infrastructure. For additional guidelines, refer to the following resources from the vendors of platforms that support NVIDIA License System:

2.1. Platform Requirements for a DLS Virtual Appliance or Containerized DLS Software Image

Before proceeding, ensure that you have a platform suitable for hosting a DLS virtual appliance or containerized DLS software image.

  • The hosting platform must be a physical host running a supported hypervisor or container orchestration platform.
  • The minimum resource requirements for the VM in which the DLS virtual appliance or DLS container will run is as follows:
    • Number of vCPUs: 4
    • RAM: 8 Gbytes
    • Disk Size: 10 Gbytes
  • 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’s date and time must be set accurately. NTP is recommended.
Note: Before proceeding with the installation, refer to NVIDIA License System Release Notes for details of supported hypervisors, details of supported container orchestration platforms, and known issues.

2.2. Host Name Resolution Requirements for a DLS Virtual Appliance

The platform that hosts a DLS virtual appliance must be identified by its IP address or its fully qualified domain name. If you want to identify the platform by its fully qualified domain name, ensure that the required DNS entries are set before installing the DLS virtual appliance. If you want to identify the platform by its default host name, you must set a DNS entry that maps the default host name to the fully qualified domain name.

The process for setting these DNS entries is separate from the process for installing the DLS virtual appliance. Use the standard interfaces of the name resolution service that you are using to set the required DNS entries.

Determining Whether the Forward Pointer and Reverse Pointer DNS Entries Are Correct

For each mapping between a domain name and an IP address, ensure that you set both the forward pointer and reverse pointer DNS entries. A DLS virtual appliance requires the reverse pointer entry to determine the domain name of the DLS virtual appliance when creating a client configuration token.

To determine whether the forward pointer and reverse pointer DNS entries have been set correctly, type the following commands in a shell on any UNIX or Linux host on the same network as the DLS virtual appliance:

  • For the forward pointer entry, type:

    $ host domain-name
    domain-name
    The domain name for which you want to determine whether the forward pointer DNS entry is correct.

    If the DNS entry has been set correctly, the command displays the IP address that is mapped to the domain name.

  • For the reverse pointer entry, type:

    $ host ip-address
    ip-address
    The IP address for which you want to determine whether the reverse pointer DNS entry is correct.

    If the DNS entry has been set correctly, the command displays the domain name that is mapped to the IP address.

How a DLS Instance Determines Whether a Fully Qualified Domain Name Is Set

How a DLS instance determines whether a fully qualified domain name is set depends on the type of DLS instance.

  • VM-based DLS virtual appliance: When the VM that hosts a DLS instance starts, the DLS instance checks whether a fully qualified domain name is mapped to the IP address of the VM. If a name is mapped to the IP address of the VM, the DLS instance retrieves the name to display in the user interface of the NVIDIA Licensing application on the appliance.
  • Containerized DLS Software Image: The fully qualified domain name is set through an environment variable. When the container within which the DLS software image is deployed is started, the DLS instance checks whether this environment variable is set.

    Note: Licensed clients outside the container must be able to resolve the fully qualified domain name. The environment variable must not specify a name that can be resolved only by the container orchestrator.
    • If this environment variable is set, the DLS instance retrieves the name to display in the user interface of the NVIDIA Licensing application on the appliance.
    • If this environment variable is not set, a user cannot connect to the container in which the DLS software image is deployed through a fully qualified domain name, even if a fully qualified domain name is mapped to an IP address in the DNS server.

    For more information, refer to Setting Properties for a Containerized DLS Software Image.

How the Host Name of the VM or Container that Hosts a DLS Instance Is Set

How the host name of the VM or container that hosts a DLS instance is set depends on the type of DLS instance.

  • VM-based DLS virtual appliance: The host name is preset in the virtual appliance image.
    • The host name of a standalone DLS virtual appliance is preset to nls-si-0.
    • The host names of the DLS virtual appliances in an HA cluster are preset to nls-si-0 and nls-si-1.
    The host name can be changed as explained in Changing the Host Name of a VM-Based DLS Virtual Appliance.
  • Containerized DLS Software Image: The host name is set through an environment variable. If this environment variable is not set, the container orchestration platform sets the host name to the container ID. For more information, refer to Setting Properties for a Containerized DLS Software Image.

2.3. Communications Ports Requirements

To enable communication between a licensed client and a CLS or DLS instance, specific ports must be open in your firewall or proxy server. If you are using an HA cluster of DLS instances with a firewall or proxy server between the DLS instances, additional ports must be open in your firewall or proxy server.

Communications Ports Between a Licensed Client and a CLS Instance

To enable communication between a licensed client and a CLS instance, the following ports must be open in your firewall or proxy server:

Port Protocol Egress / Ingress Protocol / Service From To
80 TLS, TCP Egress License acquire, renewal Client CLS
443 TLS, TCP Egress License Release Client CLS

Communications Ports Between a Licensed Client and a DLS Instance

To enable communication between a licensed client and a DLS instance, the following ports must be open in your firewall or proxy server:

Port Protocol Egress / Ingress Protocol / Service From To
80 TLS, TCP Egress License acquire, renewal Client CLS
443 TLS, TCP Egress License Release Client CLS
Note:
  • The following ports for client to DLS connections are no longer required, but are supported for backward compatibility: 8081, 8082.
  • For a container-based DLS appliance, ports 80 and 443 might not be available for the DLS appliance to bind to, either because the container orchestrator administrator has restricted access to these ports or because the ports are in use by other containers. In this situation, you must set the environment variables DLS_HTTP_PORT and DLS_HTTPS_PORT to the ports that the DLS appliance must bind to. For more information, refer to Setting Properties for a Containerized DLS Software Image.

Communications Ports Between DLS Instances in an HA Cluster

If you are using an HA cluster of DLS instances with a firewall or proxy server between the DLS instances, the following ports must also be open in the firewall or proxy server:

Port Containerized Instance VM-Based Instance Protocol Egress/Ingress Protocol/Service From To
443 - TLS, TCP Both Licensing Services Primary DLS Secondary DLS
4369 EPMD (peer discovery) Both RabbitMQ, Erlang Primary DLS Secondary DLS
5671 AMQP, TLS Both RabbitMQ Primary DLS Secondary DLS
8080 HTTPS Both Licensing Services Primary DLS Secondary DLS
8081 HTTPS Both Licensing Services Primary DLS Secondary DLS
8082 HTTPS Both Licensing Services Primary DLS Secondary DLS
8083 HTTPS Both Licensing Services Primary DLS Secondary DLS
8084 HTTPS Both Licensing Services Primary DLS Secondary DLS
8085 HTTPS Both Licensing Services Primary DLS Secondary DLS
✔ Port is used.

- Port is not used.

The following ports that were required to be open in earlier releases are no longer used:
  • 22
  • 1883
  • 5672
  • 8883
  • 15672
  • 25671
  • 25672
  • 61613
  • 61614

Communications Ports in the Container Orchestrator

The following ports must be available in the container orchestrator to allow the DLS appliance container to bind to them:
Port Service
8080, 18080 Administration Service
8081, 18081 Authorization Service
8082, 18082 Licensing Services
8083, 18083 File Installation
8084, 18084 Service Instance
8085 Virtual Appliance Service
9001 Process Manager (supervisord)
25672 RabbitMQ

2.4. Sizing Guidelines for a DLS Appliance

Use the measured performance numbers to determine the optimum configuration for your container-based or VM-based DLS appliances based on the expected number and frequency of requests from licensed clients.

Note: For the corresponding data for a CLS instance, refer to Performance Data for a CLS Instance.

2.4.1. Throughput for a DLS Appliance

Throughput measures the number of clients that a VM-based or container-based DLS appliance can process in 1 second.

Note:
  • All measurements were taken with a CPU clock speed of 2.6 GHz.
  • For a VM-based DLS appliance, the disk size is preset to 10 Gbytes in the virtual appliance image. If you want to retain diagnostic log files for longer than the default period of three months, the increase the disk size in the appliance.
  • The measurements for a container-based DLS appliance were taken from a Docker container in an Ubuntu VM. Only the containers for the DLS appliance were running in the VM while the measurements were taken.
Number of vCPUs Total RAM (GB) RAM Consumed (GB) Throughput (Clients per Second) Average Response Time (ms)
4 8 4 3 31
6 12 6 5 39
8 12 8 6 32

2.4.2. Scalability for a DLS Appliance

Scalability measures the maximum number of licensed clients that a VM-based or container-based DLS appliance can serve in a specific interval. A DLS appliance serves a licensed client by performing a licensing operation for the client, namely the borrowing, return, or renewal of a license. Registration of a licensed client is not considered a licensing operation because it occurs only once for any client.

These measurements capture the maximum number of licensed clients that DLS appliances with varying numbers of vCPUs and amounts of RAM can serve for different lengths of time for which a license is borrowed up to 24 hours.

Note:
  • Intervals in the table are the renewal intervals when a client contacts the DLS appliance to request a licensing operation.
  • The renewal interval is set to 15% of the length of time for which a license is borrowed.
  • The measurements assume that a license is borrowed for at least 10 minutes.
  • The measurements were taken with the throughput measured in Throughput for a DLS Appliance.
  • All measurements were taken with a CPU clock speed of 2.6 GHz.
  • The measurements for a container-based DLS appliance were taken from a Docker container in an Ubuntu VM. Only the containers for the DLS appliance were running in the VM while the measurements were taken.
Length of Time License Is Borrowed Interval Maximum Number of Licensed Clients
4 vCPUs, 8 GB of RAM 6 vCPUs, 12 GB of RAM 8 vCPUs, 12 GB of RAM
10 minutes 1.5 minutes 270 450 540
1 hour 9 minutes 1,600 2,700 3,200
6 hours 54 minutes 9,700 16,000 19,000
12 hours 1.8 hours 19,000 32,000 38,000
24 hours 3.6 hours 38,000 64,000 77,000

2.4.3. Burst Load Performance for a DLS Appliance

Burst load performance measures the time that a VM-based or container-based DLS appliance requires to process the requests received from a large number of clients in a short interval of time. Burst load performance does not measure concurrency or throughput.

Note:
  • Burst processing times are illustrative only because they are for retry logic in performance tests that use simulated client drivers. Times may differ with real client drivers.
  • The test systems were configured with 4 vCPUs and 8 GB of RAM.
  • The measurements for a container-based DLS appliance were taken from a Docker container in an Ubuntu VM. Only the containers for the DLS appliance were running in the VM while the measurements were taken.
Number of Clients Interval Processing Time
100 0-1 second 10 seconds
1,000 0-2 seconds 1 minute
5,000 0-100 seconds (1 minute and 40 seconds ) 5 minutes
10,000 0-200 seconds (3 minutes and 20 seconds) 10 minutes

2.5. Installing a VM-Based DLS Virtual Appliance

To simplify the installation process, a VM-based DLS virtual appliance is supplied as a virtual appliance image to be installed on a supported hypervisor.

After verifying the requirements in Platform Requirements for a DLS Virtual Appliance or Containerized DLS Software Image and reviewing the guidelines in Sizing Guidelines for a DLS Appliance, install and configure the DLS virtual appliance by following this sequence of instructions:

  1. Installing the DLS Virtual Appliance Image on a Supported Hypervisor
  2. If necessary: Setting the IP Address of a DLS Virtual Appliance from the Hypervisor
  3. Registering the DLS Administrator User
  4. Optional:Creating an HA Cluster of DLS Instances
  5. Optional: Setting the Static IP Address of a DLS Virtual Appliance

2.5.1. Installing the DLS Virtual Appliance Image on a Supported Hypervisor

DLS virtual appliance images are available for several hypervisors. You use standard interfaces of the hypervisor to install the DLS virtual appliance on your chosen hypervisor.

The DLS virtual appliance image for each supported hypervisor except Red Hat Enterprise Linux KVM specifies the minimum configuration for the VM as listed in Platform Requirements for a DLS Virtual Appliance or Containerized DLS Software Image. You are not required to specify the VM configuration when you install the DLS virtual appliance for these hypervisors. After installing the DLS virtual appliance, you can use standard interfaces of the hypervisor to change the configuration of the VM if necessary.

2.5.1.1. Installing the DLS Virtual Appliance on Citrix Hypervisor

The DLS image for Citrix Hypervisor is distributed as a ZIP archive that contains an XVA file, which is a format that is specific to Xen-based hypervisors.

Use the Citrix XenCenter Import wizard to perform this task on the Citrix Hypervisor host on which you want to run the DLS virtual appliance.

For additional information, see Import VMs From XVA on the Citrix product documentation website.

  1. Download the ZIP archive that contains the XVA file that contains the DLS virtual appliance image to the hypervisor host.
  2. Extract the contents of the ZIP archive that you downloaded.
  3. In Citrix XenCenter, from the File menu, choose Import.
  4. Browse for and select the downloaded XVA file, and click Next.
  5. Select the server on which the imported VM will be placed and click Next.
  6. Select the storage repository where the virtual disks for the newly imported VM will be stored and click Import.
  7. Select the default virtual network interfaces in the template for the virtual appliance and click Next.
  8. Review the settings for importing the virtual machine and click Finish to create the virtual machine.
  9. Start the VM that you created.
Allow approximately 15 minutes after the VM is started for the installation of the DLS virtual appliance to complete and for the DLS virtual appliance to start. What to do after the DLS virtual appliance starts depends on whether the VM has been assigned an IP address automatically, for example, by a DHCP server:

2.5.1.2. Installing the DLS Virtual Appliance on Microsoft Windows Server with Hyper-V

The DLS image for Microsoft Windows Server with Hyper-V is distributed as a ZIP archive.

Use Hyper-V Manager to perform this task on the Microsoft Windows Server with Hyper-V host on which you want to run the DLS virtual appliance.

For additional information, see Import a Virtual Machine on the Microsoft documentation website.

  1. Download the ZIP archive that contains the DLS virtual appliance image to the hypervisor host.
  2. Extract the contents of the ZIP archive that you downloaded.
  3. From the Hyper-V ManagerActions menu, choose Import Virtual Machine.
  4. Browse for and select the folder to which you extracted the DLS virtual appliance image and click Next.
  5. When prompted to choose the type of import, select the Copy the virtual machine (create a new unique ID) option and click Next.
  6. Browse for and select the folders in which you want to store virtual machine (VM) files and click Next.

    Screen capture showing the window in Hyper-V Manager for selecting the folders for VM files

  7. Browse for and select the folder for storing the virtual disk.
    Note: If you are creating two VMs for a cluster of DLS instances, ensure that you choose a unique folder for each VM to prevent errors from Hyper-V Manager.
  8. Review the settings for importing the VM and click Finish to create the VM.
  9. After the VM has been created, specify the virtual switch that the VM should use.
    1. From the Actions menu under the name of the imported VM, choose Settings.
    2. Under Hardware in the left navigation bar of the Settings window, select Network Adapter, select the virtual switch from the Virtual switch drop-down list, and click Apply.
  10. Start the imported VM.
    1. From the Actions menu under the name of the imported VM, choose Connect.
    2. In the Virtual Machine Connection window that opens, click Start.
A command window opens when the installation of the imported VM is started. Use this window to log in to the DLS virtual appliance only if you need to set the IP address of the DLS virtual appliance from the hypervisor.
Allow approximately 15 minutes after the VM is started for the installation of the DLS virtual appliance to complete and for the DLS virtual appliance to start. What to do after the DLS virtual appliance starts depends on whether the VM has been assigned an IP address automatically, for example, by a DHCP server:

After the VM has started, you can get its IP address from the Networking tab for the VM in Hyper-V Manager.

2.5.1.3. Installing the DLS Virtual Appliance on Red Hat Enterprise Linux KVM

The DLS image for Red Hat Enterprise Linux KVM is distributed as a ZIP archive that contains a QEMU copy-on-write (QCOW2) image file. After preparing the QCOW2 file, install the image by using Virtual Machine Manager to create a VM from the QCOW2 file.

Perform this task from the Red Hat Enterprise Linux KVM host.
  1. Download the ZIP archive that contains the QCOW2 image file to the Red Hat Enterprise Linux KVM host.
  2. Extract the contents of the ZIP archive that you downloaded.
  3. Copy the QCOW2 image file to the /var/lib/libvirt/images directory on the Red Hat Enterprise Linux KVM host.
  4. Start Virtual Machine Manager.
  5. Add a connection to the Red Hat Enterprise Linux KVM host.
    1. In the Virtual Machine Manager window, from the File menu, choose Add Connection.
    2. In the Add Connection window that opens, set the options in the following table and click Connect.
      Option Setting
      Hypervisor From the drop-down list, select QEMU/KVM.
      Connect to remote host over SSH Select this option.
      User Name In this text-entry field, type root.
      Hostname In this text-entry field, type the IP address or the fully qualified host name of the Red Hat Enterprise Linux KVM host.
    The connection is added to the Virtual Machine Manager window.
  6. Context click the connection that you added in the previous step and choose New. The Create a new virtual machine wizard starts.
  7. In the first New VM window, select the Import existing disk image option and click Forward.
  8. In the second New VM window, import the downloaded QCOW2 image file and choose the operating system to install.
    1. Click Browse.
    2. In the Choose Storage Volume window that opens, select the downloaded QCOW2 image file and click Choose Volume.
    3. Back in the second New VM window, type Ubuntu 20.04 in the search box and from the list of operating systems that opens, select Ubuntu 20.04 (ubuntu).
    4. Click Forward.
  9. In the third New VM window, set Memory to 8192 MiB and CPUs to 4, and click Forward.
  10. In the final New VM window, specify the VM name and the network that the VM will use.
    1. In the Name text-entry field, type your choice of name for the VM that you are creating.
    2. Select the Customize configuration before install option.
    3. From the Network Selection drop-down list, select the network that the VM will use.
    4. Click Finish.
  11. In the window for reviewing a new VM, in the left navigation bar, select Display Spice and from the Type drop-down list, select VNC Server.
  12. Click Apply to save your changes to the configuration and click Begin Installation.
  13. After the VM is created, click the play button to start the VM on the Red Hat Enterprise Linux KVM host.
A command window opens when the VM starts. Use this window to log in to the DLS virtual appliance only if you need to set the IP address of the DLS virtual appliance from the hypervisor.
Allow approximately 15 minutes after the VM is started for the installation of the DLS virtual appliance to complete and for the DLS virtual appliance to start. What to do after the DLS virtual appliance starts depends on whether the VM has been assigned an IP address automatically, for example, by a DHCP server:

2.5.1.4. Installing the DLS Virtual Appliance on VMware vSphere

The DLS image for VMware vSphere is distributed as a ZIP archive that contains an Open Virtual Appliance (OVA) file.

Use the VMware vSphere Client to perform this task on the ESXi server on which you want to run the DLS virtual appliance.

For additional information, see the following topics on the VMware Docs site:

  1. Download the ZIP archive that contains the OVA file that contains the DLS image for VMware vSphere.
  2. Extract the contents of the ZIP archive that you downloaded.
  3. Log in to vCenter Server by using the VMware vSphere Client.
  4. From the VMware vSphere ClientActions menu, choose Deploy OVF Template.
  5. Select the Local file option, browse for and select the downloaded OVA file, and click Next.
  6. Enter the your choice of virtual machine name, select a location for the virtual machine, and click Next.
  7. Select a compute resource where the virtual machine will be created and click Next.
  8. Review the details of the template that you are deploying and click Next.
  9. Select the storage for the virtual appliance configuration and disk files and click Next.
  10. Leave the destination network as-is, set the IP allocation option to Static - Manual, and click Next.
  11. Set the virtual network and IP allocation properties for the VM and click Next.
    1. In the ipaddress text-entry field, type the IP address that you want to assign to the VM.
      Note: To change this address after completing the installation, you must follow the instructions in Changing the IP Address of a VMware VM Set During DLS Appliance Installation. If you use any other method to change this address, it reverts to its original setting when the VM is restarted.
    2. In the netmask text-entry field, type the subnet mask of the VM's network in classless inter-domain routing (CIDR) format without the leading slash character (/). To get a subnet mask in CIDR format from its decimal equivalent, refer to the table on page 2 of IETF RFC 1878: Variable Length Subnet Table For IPv4. For example, the subnet mask in CIDR format of the decimal equivalent 255.255.255.0 is 24.
    3. In the gateway text-entry field, type the IP address of the VM's default gateway.
      Note: If you leave the gateway field empty, the DLS virtual appliance uses DHCP settings.
    4. Optional: In the dns_server_one text-entry field, type the IP address of the first DNS server to be used for name resolution.
    5. Optional: In the dns_server_two text-entry field, type the IP address of the second DNS server to be used for name resolution.
  12. Review all the details of the virtual machine that you are creating and click Finish.
  13. Start the VM that you created.
Allow approximately 15 minutes after the VM is started for the installation of the DLS virtual appliance to complete and for the DLS virtual appliance to start. What to do after the DLS virtual appliance starts depends on whether the VM has been assigned an IP address automatically, for example, by a DHCP server:

2.5.2. Setting the IP Address of a DLS Virtual Appliance from the Hypervisor

If the VM that hosts a DLS virtual appliance has not been assigned an IP address automatically, you must set the IP address from the hypervisor. Each DLS virtual appliance provides a shell script specifically for this purpose and is configured with a user account for running the script.

Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
Note: The IP address of a VMware VM that hosts a DLS appliance can be set when the appliance is installed from an OVF template. If the IP address was set this way, you must follow the instructions in Changing the IP Address of a VMware VM Set During DLS Appliance Installation. If you use any other method to change this address, it reverts to its original setting when the VM is restarted.
  1. Use the hypervisor management console of the appliance to log in as the user dls_system to the VM that hosts the DLS virtual appliance. You don't need to provide a password to log in as the dls_system user.
  2. Run the /etc/adminscripts/set-static-ip-cli.sh script.
    $ /etc/adminscripts/set-static-ip-cli.sh
  3. When prompted, enter the details of the IP address. The script presents any default values that are already set for the virtual appliance's network.
    1. Enter the number that denotes the IP version that the virtual appliance's network uses.
      • For an IPv4 network, type 4.
      • For an IPv6 network, type 6.
    2. Enter the IP address that you want to assign to the DLS virtual appliance.
    3. Enter the IP address of the DLS virtual appliance's default gateway.
      Note: If you omit the default gateway address, the DLS virtual appliance uses DHCP settings.
    4. Enter the IP address of the first DNS server to be used for name resolution.
    5. Enter the IP address of the second DNS server to be used for name resolution.
    6. Enter the subnet mask of the DLS virtual appliance's network in classless inter-domain routing (CIDR) format without the leading slash character (/). To get a subnet mask in CIDR format from its decimal equivalent, refer to the table on page 2 of IETF RFC 1878: Variable Length Subnet Table For IPv4. For example, the subnet mask in CIDR format of the decimal equivalent 255.255.255.0 is 24.
After the IP address has been set, log files containing progress message from the script are available in the /tmp/static-ip-cli-logs directory.

What to do next depends on whether you are performing a new installation or are upgrading an existing DLS instance:

2.5.3. Changing the IP Address of a VMware VM Set During DLS Appliance Installation

The IP address of a VMware VM that hosts a DLS appliance can be set when the appliance is installed from an OVF template. If the IP address was set this way, you can change it only by editing vApps options within VM that hosts the DLS appliance. If you use any other method to change this address, it reverts to its original setting when the VM is restarted.

  1. Log in to vCenter Server by using the VMware vSphere Web Client. For detailed instructions, refer to Log in to vCenter Server by Using the vSphere Web Client.
  2. From the vCenter Server inventory, navigate to the VM that hosts the DLS appliance.
  3. Shut down the VM to which you navigated in the previous step.
  4. On the Configure tab, expand Settings, select vApp options, and click Edit.
  5. In the list of vApp options, select Networkproperties.IPaddress and click Set Value.
  6. Enter the IP address that you want to assign to the VM that hosts the DLS appliance.
  7. Save your changes and start the VM.

2.6. Deploying a Containerized DLS Software Image

For bare-metal deployments on a supported container orchestration platform, the DLS is supplied as a containerized software image.

After verifying the requirements in Platform Requirements for a DLS Virtual Appliance or Containerized DLS Software Image, deploy a containerized DLS software image by following this sequence of instructions:

  1. Setting Properties for a Containerized DLS Software Image
  2. Deploying the Containerized DLS Software Image on a Supported Platform
  3. Registering the DLS Administrator User
  4. Optional:Creating an HA Cluster of DLS Instances

2.6.1. Contents of the Containerized DLS Software Image Download

The containerized DLS software image is distributed as the ZIP archive nls-2.0.1-bios.zip.

This ZIP archive contains the following artifacts:
dls_appliance_2.0.1.tar.gz
The DLS application container.
dls_pgsql_2.0.1.tar.gz
The PostgreSQL database container.
Note: The version of both containers must be the same.

The DLS application container and the PostgreSQL database container share a common volume for exchanging information between them. If both containers are deployed on a multinode cluster, they must be run on the same worker node.

2.6.2. Setting Properties for a Containerized DLS Software Image

To enable communications with the container within which the DLS appliance is running, you must set properties such as host names, IP addresses, and port numbers. Set these properties before deploying the containerized DLS software image on a supported platform.

Set the properties for a containerized DLS software image by editing the appropriate deployment file for your container orchestration platform.
Container Orchestration Platform File
Docker docker-compose.yml
Kubernetes nls-si-0-deployment.yaml
Red Hat OpenShift Container Platform nls-si-0-deployment.yaml
VMware Tanzu Application Platform nls-si-0-deployment.yaml

2.6.2.1. Setting Environment Variables to Specify String Properties

You can set environment variables to specify string properties for all supported container orchestration platforms.

Set environment variables to specify string properties by editing the appropriate section of the deployment file for your container platform.
  • In docker-compose.yml, edit the environment: section.
  • In nls-si-0-deployment.yaml, edit the - env: section.
The environment variables for specifying string properties are as follows:
Required: DLS_DB_HOST
The IP address of the database container.

Ensure that the IP address of the database container is a private IP address on the same subnet as the DLS appliance container. The database container must not be accessible over any public subnet.

Required: DLS_PUBLIC_IP
The IP address of the container orchestration platform. To access the NVIDIA Licensing application, the user connects to the container in which the DLS software image is deployed through this address.
Optional: DLS_PRIVATE_HOSTNAME
The host name of the container in which the DLS software image is deployed.

If this environment variable is not set, the container orchestration platform sets the host name to the container ID.

Optional: FQDN
The fully qualified domain name that is mapped to the IP address that is specified by the DLS_PUBLIC_IP environment variable.

Ensure that this name can be resolved by licensed clients. Do not specify a name that can be resolved only by the container orchestrator.

If this environment variable is not set, a user cannot connect to the container in which the DLS software image is deployed through a fully qualified domain name.

2.6.2.2. Specifying Integer Values as Environment Variables

You can specify integer values such as port numbers for Docker, Red Hat OpenShift Container Platform, and VMware Tanzu Application Platform as environment variables.

Note:Kubernetes does not accept strings for integer values. Therefore, you cannot specify integer values for Kubernetes as environment variables. Instead, you must specify integer values for Kubernetes as explained in Specifying Integer Values as Actual Values.
To specify integer values by setting environment variables, edit the appropriate section of the deployment file for your container platform.
  • In docker-compose.yml, edit the environment: section.
  • In nls-si-0-deployment.yaml, edit the - env: section.
The following environment variables apply to Docker, Red Hat OpenShift Container Platform, and VMware Tanzu Application Platform:
Optional: CPU_CORE_LIMIT
The maximum number of CPU cores that can be assigned to the DLS appliance container pod.

Default: 4

Optional: DLS_HTTP_PORT
The port on which the container in which the DLS software image is deployed listens for HTTP requests.

Default: 80

Optional: DLS_HTTPS_PORT
The port on which the container in which the DLS software image is deployed listens for HTTPS requests.

Default: 443

Optional: DLS_RABBITMQ_SSL_PORT
The Secure Sockets Layer (SSL) port through which the nodes in and HA cluster of DLS instances communicate with each other.

Default: 5671

The following environment variables apply only to Red Hat OpenShift Container Platform and VMware Tanzu Application Platform:
Optional: DLS_EXPOSED_HTTP_PORT
The port on which the container orchestrator listens for and forwards the request to the port that is specified by the DLS_HTTP_PORT environment variable.

Not applicable to Docker.

Default: 30000

Optional: DLS_EXPOSED_HTTPS_PORT
The port on which the container orchestrator listens for and forwards the request to the port that is specified by the DLS_HTTP_PORTS environment variable.

Default: 30001

Optional: DLS_VA_SERVICE_PORT
The port in the container orchestrator to which the DLS appliance container binds.

Not applicable to Docker.

Default: 8085

2.6.2.3. Specifying Integer Values as Actual Values

Kubernetes does not accept strings for integer values. Therefore, you cannot specify integer values for Kubernetes as environment variables. Instead, you must specify integer values for Kubernetes as actual values.

To specify integer values as actual values, replace the references to environment variables with actual values in the ports: section of the nls-si-0-deployment.yaml and nls-si-0-service.yaml deployment files.
  • In nls-si-0-deployment.yaml, the references to environment variables in the ports: section are as follows:
    ports:
       - containerPort: ${DLS_HTTP_PORT:-80}
         hostPort: ${DLS_EXPOSED_HTTP_PORT:-80}
       - containerPort: ${DLS_HTTPS_PORT:-443}
         hostPort: ${DLS_EXPOSED_HTTPS_PORT:-443}
       - containerPort: ${DLS_RABBITMQ_SSL_PORT:-5671}
         hostPort: ${DLS_RABBITMQ_SSL_PORT:-5671}
       - containerPort: 8085
         hostPort: ${DLS_VA_SERVICE_PORT:-8085}
  • In nls-si-0-service.yaml, the references to environment variables in the ports: section are as follows:
    ports:
        - name: "DLS_HTTP_CONTAINER"
          port: ${DLS_HTTP_PORT:-80}
          targetPort: ${DLS_HTTP_PORT:-80}
          nodePort: ${DLS_EXPOSED_HTTP_PORT:-30000}
        - name: "DLS_HTTPS_CONTAINER"
          port: ${DLS_HTTPS_PORT:-443}
          targetPort: ${DLS_HTTPS_PORT:-443}
          nodePort: ${DLS_EXPOSED_HTTPS_PORT:-30001}
        - name: "DLS_RABBITMQ_SSL_PORT"
          port: ${DLS_RABBITMQ_SSL_PORT:-5671}
          targetPort: ${DLS_RABBITMQ_SSL_PORT:-5671}
          nodePort: ${DLS_RABBITMQ_SSL_PORT:-5671}
        - name: "DLS_VA_SERVICE_PORT"
          port: 8085
          targetPort: 8085
          nodePort: ${DLS_VA_SERVICE_PORT:-8085}
The values with which to replace these references to environment variables are as follows:
Both files: ${DLS_HTTP_PORT:-80}
The port on which the container in which the DLS software image is deployed listens for HTTP requests.
nls-si-0-deployment.yaml: ${DLS_EXPOSED_HTTP_PORT:-80}
nls-si-0-service.yaml: ${DLS_EXPOSED_HTTP_PORT:-30000}
The port on which the container orchestrator listens for and forwards the request to the port that is specified by the DLS_HTTP_PORT environment variable.
Both files: ${DLS_HTTPS_PORT:-443}
The port on which the container in which the DLS software image is deployed listens for HTTPS requests.
nls-si-0-deployment.yaml: ${DLS_EXPOSED_HTTPS_PORT:-443}
nls-si-0-service.yaml: ${DLS_EXPOSED_HTTPS_PORT:-30001}
The port on which the container orchestrator listens for and forwards the request to the port that is specified by the DLS_HTTP_PORTS environment variable.
Both files: ${DLS_RABBITMQ_SSL_PORT:-5671}
The Secure Sockets Layer (SSL) port through which the nodes in and HA cluster of DLS instances communicate with each other.
Both files: ${DLS_VA_SERVICE_PORT:-8085}
The port in the container orchestrator to which the DLS appliance container binds.

This example shows the ports: sections in the nls-si-0-deployment.yaml and nls-si-0-service.yaml deployment files in which the references to environment variables are replaced with actual values.

  • In nls-si-0-deployment.yaml, the ports: section is as follows:
    ports:
       - containerPort: 80
         hostPort: 80
       - containerPort: 443
         hostPort: 443
       - containerPort: 5671
         hostPort: 5671
       - containerPort: 8085
         hostPort: 8085
  • In nls-si-0-service.yaml, the ports: section is as follows:
    ports:
        - name: "DLS_HTTP_CONTAINER"
          port: 80
          targetPort: 80
          nodePort: 30000
        - name: "DLS_HTTPS_CONTAINER"
          port: 443
          targetPort: 443
          nodePort: 30001
        - name: "DLS_RABBITMQ_SSL_PORT"
          port: 5671
          targetPort: 5671
          nodePort: 30002
        - name: "DLS_VA_SERVICE_PORT"
          port: 8085
          targetPort: 8085
          nodePort: 30003

2.6.3. Deploying the Containerized DLS Software Image on a Supported Platform

The containerized DLS software image is distributed with default deployment files for several container orchestration platforms. You use standard interfaces of the container orchestration platform to deploy the containerized DLS software image on your chosen platform.

The default deployment file for each supported container orchestration platform specifies the resource reservations for the container that are listed in Platform Requirements for a DLS Virtual Appliance or Containerized DLS Software Image. You are not required to specify the resource reservations for the container when you deploy the containerized DLS software image.

Follow the instructions for the container orchestration platform that you are using.

2.6.3.1. Deploying the Containerized DLS Software Image on Docker

Ensure that the required environment variables have been set as explained in Setting Properties for a Containerized DLS Software Image.
  1. Import the DLS appliance artifact and the PostgreSQL database artifact.
    1. Import the DLS appliance artifact.
      docker load --input dls_appliance_2.0.1.tar.gz
    2. Import the PostgreSQL database artifact.
      $ docker load --input dls_pgsql_2.0.1.tar.gz
  2. Change to the directory that contains the docker-compose.yml file.
  3. Start the DLS appliance and PostgreSQL database containers.
    $ docker-compose up

2.6.3.2. Deploying the Containerized DLS Software Image on Kubernetes Platforms

Perform this task if you are using Kubernetes, Red Hat OpenShift Container Platform, or VMware Tanzu Application Platform.

Ensure that the following prerequisites are met:
  • The required environment variables have been set as explained in Setting Properties for a Containerized DLS Software Image.
  • A private repository for the DLS appliance artifact and the PostgreSQL database artifact has been created.
  • If a registry secret is required for pulling the artifacts from the private repository, the registry secret has been created.

    In the deployment files for the DLS appliance artifact and the PostgreSQL database artifact, the name of the registry secret is preset to registry-secret. If you create a secret with this name, you don't need to edit the deployment files to reference the secret.

Note: The DLS application container and the PostgreSQL database container share a common volume for exchanging information between them. If both containers are deployed on a multinode cluster, they must be run on the same worker node.
  1. Import the DLS appliance artifact and the PostgreSQL database artifact into your private repository.
  2. Edit the deployment files for the DLS appliance artifact and the PostgreSQL database artifact to pull these artifacts from the private repository into which they were imported. In each file, replace the string <POPULATE THIS WITH PRIVATE REPOSITORY> with the name of the private repository.
    1. For the DLS appliance artifact, edit the following line in the file nls-si-0-deployment.yaml:
      image: <POPULATE THIS WITH PRIVATE REPOSITORY>:appliance
    2. For the PostgreSQL database artifact, edit the following line in the file postgres-nls-si-0-deployment.yaml:
      image: <POPULATE THIS WITH PRIVATE REPOSITORY>:pgsql
  3. If a registry secret is required for pulling the artifacts from the private repository, edit the deployment files for the DLS appliance artifact and the PostgreSQL database artifact to reference the secret. In each file, replace the string registry-secret with the name of your registry secret.
    1. For the DLS appliance artifact, edit the file nls-si-0-deployment.yaml.
    2. For the PostgreSQL database artifact, edit the file postgres-nls-si-0-deployment.yaml.
  4. Start the PostgreSQL database container pod with the supplied deployment file postgres-nls-si-0-deployment.yaml.
    $ kubectl create -f directory/postgres-nls-si-0-deployment.yaml
    directory
    The full path to the directory that contains the file postgres-nls-si-0-deployment.yaml.
  5. Get the IP address of the PostgreSQL database container pod.
    $ kubectl get pods -o wide
  6. Set the DLS_DB_HOST environment variable in the file nls-si-0-deployment.yaml to the IP address that you got in the previous step.
    Note: To enable the DLS appliance container pod to create and modify files on the volumes mapped to it, ensure that the required file access permissions are set on these volumes.
  7. Start the DLS appliance container pod with the supplied deployment file nls-si-0-deployment.yaml.
    $ kubectl create -f directory/nls-si-0-deployment.yaml
    directory
    The full path to the directory that contains the file nls-si-0-deployment.yaml.

2.6.4. Volume Mappings for a Containerized DLS Software Image

When a containerized DLS software image is deployed, several volume mappings are created for maintaining the state of the NVIDIA Licensing application in the DLS appliance.

The volume mappings that are created are as follows:
configurations
Contains the state of the DLS appliance container to enable its dynamic properties to be retrieved if the container fails.
logs
Contains log files created by the NVIDIA Licensing application in the DLS appliance.
postgres-data
Contains NVIDIA Licensing application data created by the PostgreSQL database. Because this volume contains information about available and checked out licenses, ensure that access to this volume is limited.
rabbitmq_data
Contains information about the active-active setup of nodes in an HA cluster of DLS instances.
Note: These volume mappings maintain the state of the NVIDIA Licensing application in the DLS appliance. Therefore, do not modify these volume mappings.

2.6.5. Troubleshooting Issues with Deploying the Containerized DLS Software Image

2.6.5.1. Containerized DLS Appliance Fails to Start on Kubernetes Platforms

When this issue occurs, the service enters a crash loop, container creating, pending sequence before the container enters an error state.

This issue might affect Kubernetes, Red Hat OpenShift Container Platform, or VMware Tanzu Application Platform. It does not affect Docker.
  1. Ensure that the file access permissions on the volumes allow write access by the database container and the DLS appliance container, for example 707 (rwx---rwx).
  2. If the containerized DLS software image is deployed on a multinode cluster, ensure that the database container and the DLS appliance container are running on the same worker node.
  3. If the Kubernetes cluster does not dynamically provision persistent volumes when creating persistent volume claims, ensure that the persistent volumes are created manually with file access permissions that allow the database container and the DLS appliance container to write to them.
  4. Ensure that the versions of the database container and the DLS appliance container are identical.

2.6.5.2. Volume Mode Access for DLS Appliance Resources on Kubernetes Platforms Is Incorrect

The DLS application container and the PostgreSQL database container share a common volume for exchanging information between them. If the volume mode access is incorrect, start-up of only the first container pod to be started is successful. The remaining container pod fails to start because the volume is already mounted on the first container pod to be started.

This issue might affect Kubernetes, Red Hat OpenShift Container Platform, or VMware Tanzu Application Platform. It does not affect Docker.

  1. If both containers are deployed on a multinode cluster, ensure that the DLS application container and the PostgreSQL database container run on the same worker node.
  2. Ensure that the PostgreSQL database container pod is started before the DLS appliance container pod. For more information, refer to Deploying the Containerized DLS Software Image on Kubernetes Platforms.

2.6.5.3. Data Validation Errors Prevent the DLS Appliance Container Pod from Starting on Kubernetes

This issue occurs if port numbers are specified as references to environment variables in the deployment files. Because Kubernetes does not accept string values for port numbers, you cannot specify port numbers for Kubernetes by setting environment variables.

This issue might affect Kubernetes. It does not affect other supported container orchestration platforms.

When this issue occurs, the following error messages are displayed:
error: error validating ".": error validating data:[
ValidationError(Deployment.spec.template.spec.containers[0].ports[0].containerPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.containerPort: got "string", expected "integer", 
ValidationError(Deployment.spec.template.spec.containers[0].ports[0].hostPort):
invalid type for io.k8s.api.core.v1.ContainerPort.hostPort: got "string", expected "integer",
ValidationError(Deployment.spec.template.spec.containers[0].ports[1].containerPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.containerPort: got "string", expected "integer",
ValidationError(Deployment.spec.template.spec.containers[0].ports[1].hostPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.hostPort: got "string", expected "integer",
ValidationError(Deployment.spec.template.spec.containers[0].ports[2].containerPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.containerPort: got "string", expected "integer", 
ValidationError(Deployment.spec.template.spec.containers[0].ports[2].hostPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.hostPort: got "string", expected "integer", 
ValidationError(Deployment.spec.template.spec.containers[0].ports[3].hostPort): 
invalid type for io.k8s.api.core.v1.ContainerPort.hostPort: got "string", expected "integer"];
  1. Edit the deployment files to specify port numbers as integer values instead of references to environment variables. For instructions, refer to Specifying Integer Values as Actual Values.
  2. Start the DLS appliance container pod with the supplied deployment file nls-si-0-deployment.yaml.
    $ kubectl create -f directory/nls-si-0-deployment.yaml
    directory
    The full path to the directory that contains the file nls-si-0-deployment.yaml.

2.6.5.4. The Management Interface of the NVIDIA Licensing Application Fails to Load

When this issue occurs, the containerized DLS appliance starts correctly but the management interface of the NVIDIA Licensing application is not loaded into the browser.

  1. Ensure that the DLS_DB_HOST environment variable set to the IP address of the database container.
  2. Ensure that the environment variables for port mappings set in the deployment files are correct and that the ports are open on the Kubernetes node.
  3. Ensure that the port specified by the DLS_EXPOSED_HTTPS_PORT environment variable is open in the firewall on the node that is hosting the DLS appliance container.
  4. If the Kubernetes cluster does not dynamically provision persistent volumes when creating persistent volume claims, ensure that the persistent volumes are created manually with file access permissions that allow the database container and the DLS appliance container to write to them.
  5. Ensure that the versions of the database container and the DLS appliance container are identical.

2.6.5.5. HA Configuration or Online Upgrade Fails

High availability (HA) configuration or online upgrade between two containerized DLS appliances fails if port mappings or volume configurations are incorrect.

  1. Ensure that the same ports are exposed and mapped internally for both containers. The following environment variables must be the same for both containers.
    • DLS_EXPOSED_HTTP_PORT
    • DLS_EXPOSED_HTTPS_PORT
  2. Ensure that the DLS_RABBITMQ_SSL_PORT environment variable is set to 5671 for both containers
  3. Ensure that ports 5671, 8081 and 8084 are open on the containers within which the containerized DLS appliances are deployed.
  4. Ensure that Ports 8080 through 8085 are open on each worker node.
  5. Ensure that the sizes of the volumes rabbitmq-data, postgres-data, logs and configurations are equal to or exceed the minimum recommended storage space.
    Volume Minimum Recommended Storage Space
    rabbitmq-data 2 GiB
    postgres-data 10 GiB
    logs 500 MiB
    configurations 100 MiB
  6. Ensure that the file access permissions on the folders inside the rabbitmq-data volume allow write access by the containers.

2.6.5.6. Windows Client Cannot Return Licenses Because the Return Endpoint Is Unavailable

A licensed Windows client returns a license by sending an HTTP request to the DLS instance on port 80. If the container orchestrator within which a containerized DLS appliance is deployed cannot receive requests on this port, the client cannot return a license.

How to resolve this issue depends on whether you can control the port on which the container orchestrator listens for HTTP requests.
  • If you can control the port on which the container orchestrator listens for HTTP requests from licensed clients, ensure that the DLS_EXPOSED_HTTP_PORT environment variable is set to 80.
  • Otherwise, use a load balancer to do path based routing of all license return requests to the URL https://dls-ip-address:dls-exposed-https-port/leasing/v1/lessor/shutdown
    dls-ip-address
    The IP address that is specified in the DLS_PUBLIC_IP environment variable.
    dls-exposed-https-port
    The port number that is specified in the DLS_EXPOSED_HTTPS_PORT environment variable.
    For more information about these environment variables, refer to Setting Properties for a Containerized DLS Software Image.

2.6.5.7. Client Cannot Obtain License if Client Configuration Token Specifies the Domain Name

A configuration error for a containerized DLS instance can prevent a licensed client from obtaining a license if the client configuration token specifies a fully qualified domain name. However, this error does not prevent a client from obtaining a license if the client configuration token specifies an IP address.

  1. Set the FQDN environment variable to the fully qualified domain name that is mapped to the IP address of the container in which the DLS software image is deployed.

    Ensure that this name can be resolved by licensed clients. Do not specify a name that can be resolved only by the container orchestrator.

  2. Restart the container in which the DLS appliance is deployed.

2.6.5.8. Node Health Information Is Missing from the Service Instance Page

Insufficient storage for a containerized DLS instance can prevent node health information from being displayed on the Service Instance page of the management interface of the NVIDIA Licensing application.

  1. Force reload the Service Instance page in the browser.
  2. If the node health information is still missing after the page is reloaded, check the amount of storage space available in the volumes created for the DLS appliance container. For more information about these volumes, refer to Volume Mappings for a Containerized DLS Software Image.
  3. If any volumes are full, resize the volumes and restart the container in which the DLS appliance is deployed.

2.7. Configuring User Accounts on a DLS Virtual Appliance

Each DLS software image is configured with a fixed set of user accounts. You cannot add other user accounts to the software image. Furthermore, modifications to the configured accounts are strictly controlled. Each account is provided for a specific purpose.

User Account Purpose
dls_admin DLS administrator account. This account provides access through a web-based management interface to the NVIDIA Licensing application on a DLS virtual appliance. The DLS administrator user name can be changed from the preset dls_admin name.
dls_diagnostics DLS diagnostics user account. This account provides access only to the log files for a DLS virtual appliance through the hypervisor console and secure shell (SSH). This account can be enabled during the registration of the DLS administrator user. It can also be enabled and disabled by changing the dls_admin user's settings in the My Info window.
Note: This account is not available for containerized DLS software images.
dls_system DLS system user account. This account provides access to the VM that hosts a DLS virtual appliance through the hypervisor console. The dls_system user can perform only a limited number of predefined system administration tasks from the VM that is accessed through this account.
Note: This account is not available for containerized DLS software images.
rsu_admin DLS sudo user account. This user account has the elevated privileges required to update and upgrade the GPL/LGPL v3 licensed Open Source Software (OSS) libraries within the DLS virtual appliance. This account provides no other access to a DLS virtual appliance. It is provided to comply with the terms of the GPL/LGPL v3 license under which some libraries in the operating system in the DLS virtual appliance are released. For information about how to create the DLS sudo user account, refer to NVIDIA License System Release Notes.
Note: This account is not available for containerized DLS software images.

2.7.1. Registering the DLS Administrator User

Each DLS virtual appliance is configured with a user account specifically for administering the DLS. This account provides access through a web-based management interface to the NVIDIA Licensing application on the appliance. Before administering a DLS virtual appliance, you must register this user to be able to access this management interface.

If you intend to configure a cluster of DLS instances, you need perform this task only for the DLS instance from which you will configure the cluster. The registration of the DLS administrator user is propagated from this instance to the other instance when you configure the cluster.
  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the Set Up page that opens, click NEW INSTALLATION.
  3. On the Register User page that opens, provide the credentials for the DLS administrator user.
    Note: If the DLS administrator user has already been registered, the login page opens instead of the Register User page.
    1. Optional: If you want to change the user name from the preset name dls_admin, replace the text in the Username field with your choice of user name.
    2. Provide a password for the DLS administrator user and confirm the password. The password must be at least eight characters long and is case sensitive.
    Note: You can change the DLS administrator user name and password at any time after the DLS administrator user is registered. For instructions, refer to Changing the DLS Administrator User Name and Password.
  4. Determine whether you want to enable an additional user that will be able to access the log files for the DLS virtual appliance.

    This additional user will have the user name dls_diagnostics and the password that you provide for the dls_admin user. The dls_diagnostics user will be able to access the log files for the DLS virtual appliance by logging in to the DLS virtual appliance from the hypervisor console.

    Note: The dls_diagnostics account is not available for containerized DLS software images.
    • If you want to enable this additional user, ensure that the Create a diagnostic user option remains selected.
    • Otherwise, deselect the Create a diagnostic user option.
    Note: You can enable or disable the dls_diagnostics user at any time after the DLS administrator user is registered. Click View settings at the top right of any page in the NVIDIA Licensing application on the DLS virtual appliance. Then, in the My Info window that opens, change the setting of the Diagnotics user option.
  5. Click REGISTER. The Register User page is refreshed to confirm that the user has been registered and displays a local reset secret to enable you to reset the user's password.
  6. Copy the local reset secret and store it securely, for example, by clicking the clipboard icon and pasting the local reset secret into a plain text file that is readable only by you. You will need this key to reset the DLS administrator user's password.
  7. Click CONTINUE TO LOGIN.
  8. On the login page that opens, type the user name of the DLS administrator user, provide the password that you set for this user, and click LOGIN.

If you want to use the virtual appliance for a single DLS instance, what to do next depends on whether you intend to use a static IP address for the virtual appliance that is hosting the DLS instance.

If you need to reset the DLS administrator user's password, follow the Forgot Password? link on the login page and, when prompted, type the local reset secret, provide a new password for this user, and confirm the new password.

2.7.2. Retrieving the DLS Administrator User's Reset Secret

If you need to reset the DLS administrator user's password but do not have the local reset secret, you can download a reset secret from the NVIDIA Licensing Portal.

  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 Licensing Portal.
  2. In the left navigation pane, click SERVICE INSTANCES.

    Screen capture showing the Service Instances topic in the navigation pane.

  3. In the list of service instances on the Service Instance page that opens, from the Actions menu for the DLS instance, choose Download Reset Secret. (Note that the menu is too narrow, so the text is truncated.)
  4. When prompted, click DOWNLOAD. A file named dls_local_reset_secret_mm-dd-yyyy-hh-mm-ss.tok is saved to your default downloads folder.
When resetting the DLS administrator user's password, upload the reset secret to the DLS instance.

2.7.3. Changing the DLS Administrator User Name and Password

If you choose not to change the DLS administrator user name when registering the DLS administrator user, you can change it at any time after the DLS administrator user is registered. You can also change the password for the DLS administrator user.

  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. At the top right of the Dashboard page in the NVIDIA Licensing application on the DLS appliance that opens, click View settings.
  3. In the My Info window that opens, click Change username/password.
  4. In the Change Username/Password window that opens, make the changes that you want and click CHANGE USERNAME/PASSWORD.
    1. If you want to change the user name, replace the text in the Username field with your choice of user name.
    2. In the Current password text-entry field, type the current password for the DLS administrator user.
    3. In the New password text-entry field, type the password that you want for the DLS administrator user. If you do not want to change the password, type the current password for the DLS administrator user. You cannot leave this field empty.
    4. In the Confirm new password text-entry field, type the password that you typed in the New password text-entry field.

2.7.4. Logging in to a DLS Virtual Appliance

Each DLS virtual appliance is configured with a user account specifically for administering the DLS. This account provides access through a web-based management interface to the NVIDIA Licensing application on the appliance.

Ensure that the DLS administrator user has been registered for the appliance as explained in Registering the DLS Administrator User.
  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the login page that opens, provide the user credentials for the DLS administrator user on the DLS virtual appliance and click LOGIN.

2.8. Configuring an HA Cluster of DLS Instances

To provide licensed clients with continued access to licenses if a DLS instance fails, you can configure a two-node highly available (HA) cluster of DLS instances in a failover configuration. A failover configuration consists of a primary instance, which is actively serving licenses to licensed clients, and a secondary instance, which acts as a backup for the primary instance.

If you are configuring an HA cluster of containerized DLS instances, you must deploy the containers that host the instances on two different Kubernetes clusters. To prevent the NVIDA Licensing application from behaving abnormally, do not deploy the containers on two different worker nodes in the same Kubernetes cluster. The application would behave abnormally because the orchestrator forwards requests to ports that are mapped onto the corresponding Kubernetes service.

If an attempt to configure an HA cluster of containerized DLS instances fails, refer to HA Configuration or Online Upgrade Fails for troubleshooting information.

2.8.1. Creating an HA Cluster of DLS Instances

Use the management interface of the NVIDIA Licensing application to convert a pair of newly created standalone DLS instances into an HA cluster of DLS instances.

Ensure that the following prerequisites are met:

  • The DLS virtual appliances that will host the DLS instances to be configured in a cluster have been installed and started.
    Note: The version of the both DLS virtual appliances must be identical. You cannot configure an HA cluster in which the versions of the virtual appliances are different.
  • The DLS administrator user has been registered only on one virtual appliance. The registration of the DLS administrator user is propagated to the other instance when you configure the cluster.
  1. Log in to the DLS virtual appliance on which the DLS administrator user has been registered. After the cluster is configured, this DLS virtual appliance will initially host the primary DLS instance.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, under Node Configuration, set the Enable High Availability option. The text-entry field and the PING button are activated, and the CREATE HA CLUSTER button is deactivated.
  4. In the text-entry field, type the IP address or, if configured, the fully qualified domain name of the other virtual appliance to be configured in a cluster and click PING. After the cluster is configured, this DLS virtual appliance will initially host the secondary DLS instance.
    • If the virtual appliance that will initially host the secondary DLS instance can be reached, the message SUCCESS appears next to the PING button and the CREATE HA CLUSTER button is activated.
    • Otherwise, the message FAILURE appears next to the PING button and the CREATE HA CLUSTER button remains deactivated.
  5. Click CREATE HA CLUSTER to start the configuration and wait for it to complete. The Service Instance page displays the progress of the HA cluster configuration. The configuration process takes approximately 10 minutes to complete.
When the configuration is complete, the Service Instance page is updated to show the node health of the cluster.

If you intend to use static IP addresses for the virtual appliances that are hosting the DLS instances in the cluster, set the address of each virtual appliance as explained in Setting the Static IP Address of a DLS Virtual Appliance. Otherwise, configure the DLS instance on the virtual appliance that is hosting the primary DLS instance as explained in Configuring a Service Instance.

To fail over or change the roles of the DLS instances, restart the DLS virtual appliance that is hosting the primary DLS instance.

Note: If both instances in an HA cluster of DLS instances fail or are shut down at the same time, avoid a race condition by restarting only one instance and waiting until the startup of that instance is complete before starting the second instance.

2.8.2. Converting a Standalone DLS Instance into a Node in an HA Cluster

Any time after configuring a standalone DLS instance, you can convert the instance into a node in an HA cluster. You can also convert a node that became a standalone instance because the other node in a cluster was automatically removed by the DLS.

For information about automatic removal of a node, see Automatic Removal of a Node in an HA Cluster.

Ensure that a second DLS virtual appliance has been installed and started.

Note: The version of the second DLS virtual appliance and the version of the virtual appliance that is hosting the standalaone instance must be identical. You cannot configure an HA cluster in which the versions of the virtual appliances are different.
  1. Log in to the DLS virtual appliance that hosts the DLS instance that you want to convert. After the instance is converted, it will initially be the primary DLS instance.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, under Node Health, click CONFIGURE HIGH AVAILABILITY. The Configure High Availability section with a text-entry field and a button that is labeled PING are added to the page.
  4. In the text-entry field, type the IP address or, if configured, the fully qualified domain name of the second virtual appliance and click PING.
    • If the second virtual appliance can be reached, the message SUCCESS appears next to the PING button and the CREATE HA CLUSTER button is activated.
    • Otherwise, the message FAILURE appears next to the PING button and the CREATE HA CLUSTER button remains deactivated.
  5. Click CREATE HA CLUSTER to start the configuration and wait for it to complete. The Service Instance page displays the progress of the HA cluster configuration. The configuration process takes approximately 10 minutes to complete.
When the configuration is complete, the Service Instance page is updated to show the node health of the cluster.

2.8.3. Removing a Node from an HA Cluster

You can remove the secondary node from an HA cluster. After the node is removed, the primary node is converted to a standalone DLS instance. You can perform this task to remove the secondary node even if it is down.
  1. Log in to the DLS virtual appliance that hosts the primary node in the cluster.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, under Node Health, click REMOVE adjacent to the DLS virtual appliance that hosts the secondary node in the cluster.
  4. When asked if you want to remove the node, click CONFIRM.
When the secondary node is removed, the primary node is converted to a standalone DLS instance. What happens to the secondary node depends on the type of platform that is hosting the nodes in the cluster:
  • For a cluster of instances on VM-based DLS virtual appliances, the virtual appliance that hosts the node is shut down and all data on the node is removed.
  • For a cluster of instances on different container orchestrators, the container that hosts the node is not shut down. You must shut down the container manually.
If both nodes fail or are shut down, you must restart the last node to fail or be shut down first. If you restart the first node to fail or be shut down first, the node will not be functional until the other node is started.

2.8.4. Automatic Removal of a Node in an HA Cluster

When the nodes in an HA cluster are unable to communicate, messages that a node cannot send are temporarily stored on the disk of the node. If the accumulation of messages causes the amount of free space on the disk to fall below a specific amount, the secondary node in the cluster is automatically removed from the cluster. The primary node is converted to a standalone DLS instance. The secondary node is removed to ensure that the standalone DLS instance can continue to serve licenses to clients.

After the secondary node has been removed, a critical event that warns of a shortage of disk space is shown on the node that was converted to a standalone DLS instance. You can convert the instance into a node in an HA cluster as explained in Converting a Standalone DLS Instance into a Node in an HA Cluster.

2.9. Configuring a DLS Virtual Appliance with a Third-Party Signed SSL Certificate

By default, a DLS virtual appliance is configured with a self-signed SSL certificate that is included in the DLS virtual appliance image from which the DLS virtual appliance is created. If necessary, you can replace the self-signed certificate with an SSL certificate that is signed by a third party, such as a certificate authority (CA).

To configure a DLS virtual appliance with a third-party signed SSL certificate, follow this sequence of instructions:

  1. Obtaining a Third-Party Signed SSL Certificate for a DLS Virtual Appliance
  2. Installing a Third-Party Signed SSL Certificate on a DLS Virtual Appliance

2.9.1. Obtaining a Third-Party Signed SSL Certificate for a DLS Virtual Appliance

Obtain a third-party signed SSL certificate by submitting a certificate signing request (CSR) to a suitable third party, such as a certificate authority (CA).

Ensure that the IP address of any DLS virtual appliance that will be configured with the certificate is mapped to the domain name that you will specify in the certificate.
For an HA cluster of DLS instances, you can choose to obtain a single wildcard domain certificate for all nodes in the cluster or one fully qualified domain name certificate for each node in the cluster.

For each certificate that you require, submit a certificate signing request (CSR) to a CA.

Ensure that each certificate that you request meets these requirements:

  • The certificate must be a PEM text file (not in Java keystore format) and secured with a private key.
  • The certificate and the private key must be in separate files.
  • To ensure that web browsers trust the domain, the domain name must be part of the Subject Alternate Name (SAN) attribute, not the Common Name (CN) attribute of the CSR.
  • The SAN attribute of the CSR must specify the fully qualified domain name of any DLS virtual appliance that will be configured with the certificate.

    Do not specify an IP address in the SAN attribute of the CSR. A DLS virtual appliance cannot be configured with an SSL certificate that specifies an IP address.

  • The certificate must use RSA, DSA, and DH keys that are at least 2048 bits long.
  • The certificate must use ECC keys greater that are longer than 224 bits long.
  • If the certificate chain of trust includes intermediate certificates, the certificate must be bundled with the intermediate certificates in the following order:
    1. Domain name certificate
    2. Intermediate certificates
    3. Root certificate

If necessary, contact the CA that will provide your certificate for information about how to request a certificate that meets these requirements or convert an existing certificate to meet these requirements.

2.9.2. Installing a Third-Party Signed SSL Certificate on a DLS Virtual Appliance

Ensure that you have obtained the SSL certificate that you are installing and its private key file.
If you are installing a wildcard domain certificate for all nodes in an HA cluster, perform this task from the primary node in the cluster only. The certificate is propagated automatically to the secondary node in the cluster. If you are installing one fully qualified domain name certificate for each node in the cluster, perform this task separately from each node.
  1. Log in to the DLS virtual appliance on which you are installing the SSL certificate.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, click SSL CONFIGURATION.
  4. In the SSL Certificate Configuration window that opens, specify the SSL certificate that you are installing and its private key file.
    1. If you are installing a wildcard domain certificate for all nodes in an HA cluster, set the Apply Wildcard option.
    2. Ensure that the Domain Name field contains the domain name that is specified in the certificate.
      Note: The Domain Name field is case-sensitive. The case of the name in this field must match exactly the case of the name as specified in the certificate.
    3. Click Choose File adjacent to Certificate and in the file browser that opens, navigate to the folder that contains the SSL certificate and select the file.
    4. Click Choose File adjacent to Private Key and in the file browser that opens, navigate to the folder that contains the SSL certificate's private key and select the file.
  5. Click CONFIGURE.

2.10. Configuring a VM-Based DLS Virtual Appliance

A VM-based DLS virtual appliance strictly controls access to the underlying OS. Therefore, the management interface of the NVIDIA Licensing application enables you to perform configuration tasks that change the configuration of the underlying OS.

Note: You can perform these tasks only on a VM-based DLS virtual appliance. You cannot perform them on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make equivalent changes for a containerized DLS software image.

2.10.1. Setting the Static IP Address of a DLS Virtual Appliance

You can use the management interface to the NVIDIA Licensing application to replace the existing IP address of the appliance with a new static IP address. The existing IP address can be an address assigned by DHCP or another static IP address.

Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
Note: The IP address of a VMware VM that hosts a DLS appliance can be set when the appliance is installed from an OVF template. If the IP address was set this way, you must follow the instructions in Changing the IP Address of a VMware VM Set During DLS Appliance Installation. If you use any other method to change this address, it reverts to its original setting when the VM is restarted.
The instance that the DLS virtual appliance is hosting must already be configured as a standalone DLS instance or as an instance in a HA cluster.
Note: You can set the static IP of the secondary node in an HA cluster from the primary node in the cluster.
  1. If you aren't logged in already, log in to the DLS virtual appliance.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, under Node Health, click CONFIGURE IP ADDRESS adjacent to the DLS virtual appliance for which you are setting a static IP address.
    CAUTION:
    If the DLS virtual appliance for which you are setting a static IP address is a node in an HA cluster and the type of any node is unknown, do not attempt to set the static IP address. Any change to the static IP address is not propagated to the node whose type is unknown because the node is unreachable.
  4. In the Configure Node IP Address window that opens, provide the details of the IP address of the node and click UPDATE.
    1. In the Static IP address text-entry field, type the IP address that you want to assign to the DLS virtual appliance.
    2. In the Gateway text-entry field, type the IP address of the DLS virtual appliance's default gateway.
      Note: If you leave the Gateway field empty, the DLS virtual appliance uses DHCP settings.
    3. In the Netmask Prefix text-entry field, type the subnet mask of the DLS virtual appliance's network in classless inter-domain routing (CIDR) format without the leading slash character (/). To get a subnet mask in CIDR format from its decimal equivalent, refer to the table on page 2 of IETF RFC 1878: Variable Length Subnet Table For IPv4. For example, the subnet mask in CIDR format of the decimal equivalent 255.255.255.0 is 24.
    4. In the first DNS Server text-entry field, type the IP address of the first DNS server to be used for name resolution.
    5. In the second DNS Server text-entry field, type the IP address of the second DNS server to be used for name resolution.
    If you are setting the IP address of the instance that you are logged in to, your browser will be disconnected from the instance after the update is complete. In this situation, you will need to log in to the DLS appliance again at the IP address that you set.
    Note: Setting the IP address of an instance in an HA cluster causes a failover of the cluster. As a result of the failover, the roles of the primary and secondary instances in the cluster are reversed.
  5. If necessary, log in to the DLS virtual appliance again by connecting to the URL https://dls-vm-static-ip-address.
    dls-vm-static-ip-address
    The static IP address that you set for the DLS virtual appliance.
If the DLS instance hasn't already been configured and is a standalone instance or the primary instance in an HA cluster, configure the instance as explained in Configuring a Service Instance.

2.10.2. Changing the Host Name of a VM-Based DLS Virtual Appliance

The host name of a VM-based DLS virtual appliance is preset in the virtual appliance image. You can use the OS command hostnamectl to change the name if necessary.

Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
  1. Use the hypervisor management console of the appliance to log in as the user dls_diagnostics to the VM that hosts the DLS virtual appliance.
  2. From a command shell, run the following command:
    $ sudo -u root hostnamectl set-hostname new-hostname
    new-hostname
    Your choice of new host name for the VM-based DLS virtual appliance.
    Note: You can ignore any messages of the following form that might be displayed when you run the hostnamectl command:
    sudo: unable to resolve host current-hostname: Name or service not known
  3. If prompted, enter the dls_diagnostics user's password.

2.10.3. Expanding the Disk Space on a DLS Virtual Appliance

You can use the management interface to the NVIDIA Licensing application to expand the disk space of the DLS virtual appliance.
Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
Perform this task on the Hypervisor where your DLS appliance is installed.
  1. Turn off the virtual machine.
  2. Expand the virtual hard disk associated to the VM through the Hypervisor console.
  3. Right-click on the VM and navigate to the Edit Settings.
  4. Expand the disk space from the console.
  5. Click OK to confirm.
  6. Start the Virtual Machine.
  7. Login to the Virtual Machine as the dls_system user through the Hypervisor console.
  8. Run the following script:
    /etc/adminscripts/expand_disk.sh
    Ignore the log message that says:
    Information: you may need to update /etc/fstab
  9. Validate the disk size for the /dev/mapper/vgnls--si--0-root using the df -h command.
Note:

In the case of ESXi, Hyper V, and KVM, each DLS Virtual Machine should be imported from the respective image of the Hypervisor. If the Virtual Machines are cloned or created by snapshot, you will not be able to edit or expand the disk from the Hypervisor console.

2.10.4. Configuring NTP on a DLS Virtual Appliance

Network Time Protocol (NTP) Configuration is when the customer needs to sync the clock of their License Server to a desired time-keeping server.
Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the login page that opens, provide the user credentials for the DLS administrator user on the DLS virtual appliance and click LOGIN.
  3. In the left navigation pane, click SERVICE INSTANCE.

    Screen capture showing the Service Instance topic in the navigation pane.

  4. From the Actions menu, click NTP Server Configuration.

    Screen capture showing the Network Time Protocol (NTP) Server Configuration dialog.

  5. Enter a valid IP address or domain name of the desired NTP server(s), separated by commas.
  6. Click Configure.

3. Configuring a Service Instance

How you configure a service instance depends on whether the service is a Cloud License Service (CLS) instance or a Delegated License Service (DLS) instance.

Before proceeding, determine whether you want to use a CLS instance or DLS instance to serve licenses to clients. For guidance, refer to About Service Instances.

CLS Instance Instructions

You administer and manage a CLS instance through the NVIDIA Licensing Portal.

You can complete the initial configuration of a CLS instance in one of the following ways:

DLS Instance Instructions

You administer and manage a DLS instance through the NVIDIA Licensing application on the virtual appliance that hosts the DLS instance and through the NVIDIA Licensing Portal.

Before configuring a DLS instance, ensure that the virtual appliance that will host the instance has been installed and configured as explained in Installing and Configuring the DLS Virtual Appliance.

To configure a DLS instance, follow this sequence of instructions:

  1. Optional: Changing the Name and Description of a DLS Instance
  2. Creating a License Server on the NVIDIA Licensing Portal
  3. Instructions for registering the DLS instance:
  4. Binding a License Server to a Service Instance
  5. Installing a License Server on a DLS Instance

3.1. Roles Required for Configuring a Service Instance

Unless stated otherwise, the role that these tasks require depends on whether they are being performed for an organization or a virtual group.

Note: These roles are required only for tasks that are performed on the NVIDIA Licensing Portal. They are not required for tasks that are performed on the NVIDIA Licensing application on the virtual appliance that hosts a DLS instance.

3.2. Proxy Server Requirements and Firewall Rules for a CLS Instance

To enable communication between a licensed client and a CLS instance through a proxy server, the proxy server must meet certain requirements. To enable communication through a firewall, firewall rules that allow traffic on specific URLs must be defined.

The processes for configuring a proxy server and defining firewall rules are separate from the process for configuring a CLS instance. Use the standard interfaces of the proxy server and the firewall that you are using to perform these processes.

Proxy Server Requirements for a CLS Instance

Any proxy server between a licensed client and a CLS instance must allow programmatic calls to the URL api.cls.licensing.nvidia.com.

Firewall Rules for a CLS Instance

To enable communication between a licensed client and a CLS instance through a firewall, firewall rules that allow traffic on the URLs in the following table must be defined.

URL Traffic
api.cls.licensing.nvidia.com
  • Licensing operations, namely, the borrowing, renewal, and return of a license.
  • Licensed client authentication
api.licensing.nvidia.com License return from a Windows licensed client that has not been shut down cleanly

3.3. Changing the Name and Description of a DLS Instance

By default, a DLS instance is created with the name DEFAULT_timestamp and the description ON_PREM_SERVICE_INSTANCE. To distinguish a DLS instance on the NVIDIA Licensing Portal when multiple DLS instances are configured, change these defaults to a meaningful name and the description.

Perform this task from the DLS virtual appliance.
  1. Log in to the DLS virtual appliance that is hosting the instance whose name and description you want to change.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, click EDIT.
  4. In the Edit Service Instance dialog box that opens, type your choice of name and description for the instance and click UPDATE.
    Note: The instance name cannot contain special characters.
    The name and description of the instance are updated on the Service Instance page.
After changing the name of a DLS instance, follow the instructions in Creating a License Server on the NVIDIA Licensing Portal.

3.4. Creating a License Server on the NVIDIA Licensing Portal

To be able to allot licenses to an NVIDIA License System instance, you must create at least one license server on the NVIDIA Licensing Portal. Creating a license server defines the set of licenses to be allotted.

You can also create multiple servers on the NVIDIA Licensing Portal and distribute your licenses across them as necessary, for example to group licenses functionally or geographically.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you want to create the license server.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
    If no license servers have been created for your organization or virtual group, the NVIDIA Licensing Portal dashboard displays a message asking if you want to create a license server.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVER and click CREATE SERVER. The Create License Server wizard is started.

    Screen capture showing the Create Server tab of the NLS navigation pane

    If you are adding a license server to an organization or virtual group for which a license server has already been created, click CREATE SERVER.

    The Create License Server wizard opens.



    Screen capture showing the Create License Server wizard

  3. On the Basic details page of the wizard, provide the details of your license server.
    1. Ensure that the Create legacy server option is not set. Setting this option creates a legacy NVIDIA vGPU software license server, not a license server for NVIDIA License System.
    2. In the Server Name field, enter your choice of name for the license server.
    3. In the Description field, enter a text description of the license server. This description is required and will be displayed on the details page for the license server that you are creating.
    4. Optional: If you want NVIDIA License System to automatically bind the license server to and install it on the default CLS instance, select the Express CLS Installation? option.
    5. Click Next: Select features.
  4. On the Select features page of the wizard, add the licenses for the products that you want to allot to this license server. For each product, add the licenses as follows:
    1. In the list of products, select the product for which you want to add licenses.
    2. In the text-entry field in the ADDED column, enter the number of licenses for the product that you want to add.

      Screen capture showing the Added column of the Create License Server wizard

    3. Click Next: Preview server creation.
  5. On the Preview server creation page, click CREATE SERVER.

    Screen capture showing the final step in the Create Server wizard

After creating a license server on the NVIDIA Licensing Portal, follow the instructions in the topic for the type of service instance that you are configuring:

3.5. Creating or Registering a Service Instance

If you are hosting your service instance in the cloud on the NVIDIA Licensing Portal, you must create a CLS instance. If you are hosting your service instance at a location that is accessible from your organization's private network, you must register a DLS instance. If you are hosting your service instance in the cloud on the NVIDIA Licensing Portal, you must create a CLS instance only if you are not using the default CLS instance.

3.5.1. Creating a CLS Instance on the NVIDIA Licensing Portal

When you create a CLS instance, the instance is automatically registered with the NVIDIA Licensing Portal. This task is only necessary if you are not using the default CLS instance.

Service instances belong to an organization. Therefore, this task requires the Organization Administrator role.
  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 Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click SERVICE INSTANCES.

    Screen capture showing the Service Instances tab on the NLS navigation pane

  3. On the Service Instances page, from the Actions menu, choose Create cloud (CLS) instance.

    The Create cloud (CLS) instance pop-up window opens.

  4. Provide the details of your cloud service instance.
    1. In the Name field, enter your choice of name for the service instance.
    2. In the Description field, enter a text description of the service instance. This description is required and will be displayed on the Service Instances page when the entry for service instance that you are creating is expanding.
  5. Click CREATE CLS INSTANCE.
After creating a CLS instance on the NVIDIA Licensing Portal, follow the instructions in Binding a License Server to a Service Instance.

3.5.2. Registering an on-Premises DLS Instance with the NVIDIA Licensing Portal

A DLS instance is created automatically when the virtual appliance on which the instance resides is installed. However, to enable the instance to be bound to a license server, you must register the instance with the NVIDIA Licensing Portal.

Registering an on-premises DLS instance with the NVIDIA Licensing Portal involves the exchange of a DLS instance token between the instance and the NVIDIA Licensing Portal.

A DLS instance token is created by a DLS instance. It identifies the DLS instance to the NVIDIA Licensing Portal and enables it to locate the NVIDIA Licensing Portal. After downloading the token from the DLS instance, you must upload it to the NVIDIA Licensing Portal to complete the registration of the service instance.

  1. If you are not already logged in, log in to the NVIDIA Licensing application at the IP address of the VM on which the DLS virtual appliance is installed.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click SERVICE INSTANCES.
  3. On the Service Instance page that opens, click DOWNLOAD DLS INSTANCE TOKEN. A DLS instance token file that is named dls_instance_token_mm-dd-yyyy-hh-mm-ss.tok is downloaded.
  4. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you are registering the service instance.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  5. On the Service Instances page, from the Actions menu, choose Upload on-premises (DLS) instance token.

    Screen capture showing the Actions menu to register a DLS Instance Token.

  6. On Service Instances page that opens, click UPLOAD DLS INSTANCE TOKEN.
  7. In the Upload DLS Instance Token window that opens, click SELECT INSTANCE TOKEN.

    Screen capture showing the SELECT INSTANCE TOKEN button to upload a DLS instance token.

  8. In the file browser that opens, navigate to the folder that contains the DLS instance token file that is named dls_instance_token_mm-dd-yyyy-hh-mm-ss.tok that you downloaded and select the file.
  9. Back in the Upload DLS Instance Token window, select the For New Installation option and click UPLOAD INSTANCE TOKEN. The list of pending registrations is opened and the service instance identified by the DLS instance token that you uploaded is listed.
  10. In the list of pending registrations, follow the Register link for the service instance identified by the DLS instance token that you uploaded. The service instance is added to the list of registered service instances.
After registering an on-premises DLS instance with the NVIDIA Licensing Portal, follow the instructions in Binding a License Server to a Service Instance.

3.5.3. Registering a DLS Instance on an Air-Gapped Network with the NVIDIA Licensing Portal

If your DLS instance is on an air-gapped network, you cannot download a DLS instance token to upload to the NVIDIA Licensing Portal to register the instance. Instead, you must register the instance by entering its details manually on the NVIDIA Licensing Portal.
Before you begin, contact NVIDIA Enterprise support to request that your organization be allowed to register the instance manually.
  1. If you are not already logged in, log in to the NVIDIA Licensing application at the IP address of the VM on which the DLS virtual appliance is installed.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click SERVICE INSTANCE.
  3. On the Service Instance Details page that opens, from the ACTIONS menu, choose Pre-Register Service Instance.
  4. In the Pre-Register DLS Service Instance window that opens, click PRE-REGISTER SERVICE INSTANCE.
  5. On the Service Instance page, note the information about the DLS instance that you will need when you register it by entering its details manually on the NVIDIA Licensing Portal.
    • Service Instance ID
    • Name
    • Description
  6. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you are registering the service instance.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group for which you are registering the service instance from the list of virtual groups at the top right of the page.
  7. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click SERVICE INSTANCES.

    Screen capture showing the SERVICE INSTANCES option in the navigation pane.

  8. On Service Instances page that opens, from the ACTIONS menu, choose Register DLS for air-gapped network.
  9. In the Register DLS Instance for Air-Gapped Network window that opens, enter the name, service instance ID, and description that you obtained in Step 5, and click REGISTER.

    Screen capture showing the Register DLS Instance For Air-Gapped Network pop-up window.

  10. Bind a license server to the DLS instance that you registered. For instructions, refer to Binding a License Server to a Service Instance.
  11. Download and install the license server on the virtual appliance that hosts DLS instance. For instructions, refer to Installing a License Server on a DLS Instance.
  12. On the Service Instances page of the NVIDIA Licensing Portal, follow the Acknowledge Installation link for the DLS instance.
  13. When prompted to acknowledge installation of the license server file, click ACKNOWLEDGE.

3.6. Deleting a Service Instance

When a service instance is deleted, any license servers that are bound to and installed on the service instance are uninstalled and freed from it. Deleting a DLS instance on which license servers are installed forcibly removes all licensed products from the servers and returns the licensed products to their entitlements. This behavior enables you to recover licenses from a failed DLS instance.

This task requires the Organization Administrator role.

If you are deleting a CLS instance on which license servers are installed, remove all licensed products from the servers as explained in Managing Licenses and Licensed Products on a License Server.

Perform this task on the NVIDIA Licensing Portal. The procedure for deleting a service instance is the same for CLS instances and DLS instances.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the service instance belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane, click SERVICE INSTANCE.

    Screen capture showing the Service Instance topic in the navigation pane.

  3. In the list of service instances on the Service Instances page that opens, from the Actions menu for the service instance, choose Delete.
  4. When asked to confirm that you want to delete the service instance, click DELETE.

3.7. Binding a License Server to a Service Instance

Binding a license server to a service instance ensures that licenses on the server are available only from that service instance. As a result, the licenses are available only to the licensed clients that are served by the service instance to which the license server is bound.

You can bind multiple license servers to the same CLS instance but only one license server to the same DLS instance. If you want to use a different license server than the license server that was originally bound to a DLS instance, free the license sever as explained in Freeing a License Server from a Service Instance.

This task is necessary only if you are not using the default CLS instance.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the license server belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVERS and click LIST SERVERS.
  3. In the list of license servers on the License Servers page that opens, from the Actions menu for the license server, choose Bind.
  4. In the Bind Service Instance pop-up window that opens, select the service instance to which you want to bind the license server and click BIND. The Bind Service Instance pop-up window confirms that the license server has been bound to the service instance.
After a license server has been bound to a service instance, the license server is freed from the service instance when the service instance is deleted. You can also free a license sever as explained in Freeing a License Server from a Service Instance.
After binding a license server to a service instance, follow the instructions in the topic for the type of service instance that you are configuring:

3.8. Freeing a License Server from a Service Instance

If you want to move a license server to a different service instance, free the license server before binding it to and installing it on the new service instance. If you want to use a different license server than the license server that was originally bound to a DLS instance, free the license sever from the DLS instance first.

Ensure that one of the following prerequisites is met:
  • The license server has not been installed on the service instance.
  • No licenses on a license server that is already installed are checked out by licensed clients.
    What happens if this prerequisite is not met depends on the type of the service instance:
    • CLS instance: The NVIDIA Licensing Portal prevents the license server from being freed from the service instance.
    • DLS instance: Because the instance is not connected to the NVIDIA Licensing Portal, the NVIDIA Licensing Portal allows the license server to be freed from the service instance. However, any attempt to install a license server on the service instance fails.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the license server belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVERS and click LIST SERVERS.
  3. In the list of license servers on the License Servers page that opens, from the Actions menu for the license server, choose Unbind.
  4. When prompted to confirm that you want to unbind the license server, click UNBIND.
After freeing the license server, you can reuse it by following this sequence of instructions:
  1. Binding a License Server to a Service Instance
  2. Installing a License Server on a Service Instance

3.9. Installing a License Server on a Service Instance

After binding a license server to a service instance, you must install the license server on the service instance to make the licenses on the server available to the instance. If you change the licenses or licensed products on a license server that is bound to a DLS instance, you must update the instance with the latest version of the license server.

This task is necessary only if you are not using the default CLS instance.

How to install a license server on a service instance depends on whether you are installing the license server on a CLS instance or a DLS instance. For detailed instructions, see:

After creating and installing a license server on a service instance, manage the licenses on the server by creating a client configuration token and, optionally, creating license pools and fulfillment conditions. For more information, see Managing Licenses on a License Server.

3.9.1. Installing a License Server on a CLS Instance

This task is necessary only if you are not using the default CLS instance.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you want to install the license server.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVER and click LIST SERVERS.
  3. In the list of license servers on the License Servers page that opens, click the name of the license server that you want to install.
  4. In the License Server Details page that opens, from the Actions menu, choose Install.
  5. In the Install License Server pop-up window that opens, click INSTALL SERVER.

3.9.2. Installing a License Server on a DLS Instance

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which the license server was created.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVER and click LIST SERVERS.
  3. In the list of license servers on the License Servers page that opens, click the name of the license server that you want to install.
  4. In the License Server Details page that opens, from the Actions menu, choose Download.
  5. In the Download License File window that opens, click Download. A license server file that is named license_mm-dd-yyyy-hh-mm-ss.bin is downloaded.
  6. If you are not already logged in, log in to the NVIDIA Licensing application at the IP address of the VM on which the DLS virtual appliance is installed. If a license server has not been installed on the DLS virtual appliance, the NVIDIA Licensing dashboard displays a message asking if you want to install a license server.
  7. If you are updating the license server on the DLS virtual appliance, in the left navigation pane of the NVIDIA Licensing dashboard, click UPLOAD SERVER. If a license server has not been installed on the DLS virtual appliance, omit this step. The Server Upload page opens.
  8. On the NVIDIA Licensing dashboard or the Server Upload page, click SELECT LICENSE SERVER FILE.

    Screen capture showing the SELECT LICENSE SERVER FILE window

  9. In the file browser that opens, navigate to the folder that contains the license server file named license_mm-dd-yyyy-hh-mm-ss.bin that you downloaded and select the file.
  10. When asked if you want to install the selected file, click INSTALL.
NVIDIA Licensing dashboard is updated with the details of the license server that you installed.

4. Managing Licenses on a License Server

After installing a license server on a service instance, you can manage the licenses to be served from the server by distributing them among a number of license pools and by defining fulfillment conditions for requests from licensed clients. In this way, you can reserve licenses for specific types of users.

For example:

  • An organization in which some users are using graphics-intensive computer-aided design (CAD) tools, while other users are using only office productivity tools can create a pool of NVIDIA RTX Virtual Workstation licenses for the CAD tool users and a pool of GRID Virtual PC licenses for the users of office productivity tools.
  • An organization in which some users are performing mission-critical tasks can create a reserve pool of licences available only to these users and a pool of licenses available to all users. By setting suitable fulfillment conditions, the organization can ensure that when the pool of licenses available to all users is exhausted, only license requests from users performing mission-critical tasks are fulfilled from the reserve pool.

When a license server is installed on a service instance, a single default license pool and a single default fulfillment condition are created on the server. The default license pool initially contains all licenses allotted to the server. The default fulfillment condition allows any client to be served from the default license pool. If you want all your licensed clients to be served licenses from the same license pool under the same conditions, you can generate a client configuration token without creating any license pools or fulfillment conditions. For more information about client configuration tokens, see Generating a Client Configuration Token.

4.1. Where to Perform Tasks for Managing Licenses

Where to perform the tasks for managing licenses on a license server depends on the type of service instance on which the license server is installed.

  • On a CLS instance, perform the tasks on the NVIDIA Licensing Portal.
  • On a DLS instance, perform the tasks on the NVIDIA Licensing application on the virtual appliance that hosts the DLS instance.

4.2. Roles Required for Managing Licenses on a CLS Instance

The role that these tasks require depends on whether they are being performed for an organization or a virtual group.

Note: These roles are required only for tasks that are performed for a CLS instance on the NVIDIA Licensing Portal. They are not required for tasks that are performed for a DLS instance on the NVIDIA Licensing application on the virtual appliance that hosts the DLS instance.

4.4. Managing License Pools

License pools enable you to divide the product features on a license server so that different categories of users are served licenses from different license pools. All licenses are served from a license pool. Only licenses on a license server that belong to a license pool are available to be served to license clients.

When a license server is installed on a service instance, a single default license pool is created on the server. The default license pool initially contains all licenses allotted to the server. You can subdivide the licenses on license server into any number of license pools. However, if you want to serve all licenses on a server from a single pool, you can use the default license pool without creating any additional license pools.

4.4.1. Creating a License Pool

If the only license pool on the license server is the initial default pool, return any licenses that you want to allocate to the license pool to the license server as explained in Managing Licenses and Licensed Products in a License Pool. When a license server is created, a default license pool that contains all licences on the server is created. When the default license pool contains all licences on the server, the CREATE LICENSE POOL button is inactive.

  1. Navigate to the License Server Details page of the license server on which you want to create the license pool. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, disable the license server by clicking DISABLE SERVER and, when prompted, confirm that you want to disable the license server. When the license server is disabled, it cannot serve licenses to licensed clients.
  3. From the ACTIONS menu, choose Create Pool.

    The Create License Pool pop-up window opens.



    Screen capture showing the Create License Pool pop-up window

  4. In the License Pool Name field, enter your choice of name for the license pool. The name must be a list four characters long, may contain only letters and numbers, and must not contain any spaces or special characters.
  5. Add the licenses for the products that you want to allot to this license pool. For each product, add the licenses as follows:
    1. From the list of available features, select the product for which you want to add licenses. In the list of available features, only products on the license server that do not belong to another license pool are listed.
    2. In the text-entry field in the ADDED column, enter the number of licenses for the product that you want to add.
  6. Click CREATE LICENSE POOL. The license pool is added to the list of license pools on the License Pools tab, in the License Server Details page.

    Screen capture showing the License Pools page on the NVIDIA Licensing Portal for a server with multiple license pools.

  7. On the Overview tab of the License Server Details page, enable the license server by clicking ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.

After you create a license pool you can change the set of licenses in the pool as explained in the following topics:

4.4.2. Deleting a License Pool

When a license pool is deleted, all product features in the pool are returned to the license server to which the license pool belongs.

Ensure that no licenses in the pool are checked out by licensed clients. A license pool cannot be deleted while any of the licenses in the pool are checked out by a client.
  1. Navigate to the License Server Details page of the license server to which the license pool belongs. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, click the License Pools tab.

    Screen capture showing the License Server Details page on the NVIDIA Licensing Portal for a server with multiple license pools.

  3. In the list of license pools on the License Pools tab, from the Actions menu for the license pool, choose Disable. When the license pool is disabled, licenses cannot be served to licensed clients from the pool.
  4. When prompted, confirm that you want to disable the license pool.
  5. From the Actions menu for the license pool, choose Delete.
  6. When asked if you want to delete the license pool, click DELETE LICENSE POOL.

    Screen capture showing the Delete drop-down menu on the NVIDIA Licensing Portal for a server with multiple license pools.

4.4.3. Managing Licenses and Licensed Products in a License Pool

Manage licenses in a license pool if you need to add or remove licenses for a specific product in the pool. You can also add and remove licensed products from a license pool. When a licensed product is removed from a license pool, all licenses are returned to the license server.
  1. Navigate to the License Server Details page of the license server to which the license pool belongs. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, click the License Pools tab.

    Screen capture showing the License Server Details page on the NVIDIA Licensing Portal for a server with multiple license pools.

  3. In the list of license pools on the License Pools tab, from the Actions menu for the license pool, choose Disable. When the license pool is disabled, licenses cannot be served to licensed clients from the pool.
  4. When prompted, confirm that you want to disable the license pool.
  5. Expand the license pool that contains the licenses you want to manage.
  6. From the Actions menu for the license pool, choose Manage features.
  7. In the Manage Licenses pop-up window that opens, add or remove licenses for the licensed products that you are interested in.

    Add or remove licenses for each licensed product as follows:

    1. In the text-entry field in the ADDED column, enter the number of licenses for the product that you want to remain in the pool after updating licenses.
      • To add licenses to the pool, enter a number greater than the number already in the pool, but less than or equal to the total number of licenses available on the license server.



        Screen capture showing the Manage Pool Features page on the NVIDIA Licensing Portal for a server with multiple license pools.

        If you enter a number greater than the total number of licenses available, an error occurs.

      • To remove licenses from the pool, enter a number less than the number already allocated to the server but greater than 0.

        For example, to remove 4 licenses from a pool that contains 10 licenses, leaving 6 licenses on the license server, enter the Licenses field to 6.

        You cannot set the Licenses field to 0. You must leave at least 1 license in the license pool. If you want to remove all licenses for a product from the license pool, you must remove the product from the pool by clicking the trash can icon.

    2. Click ADD.
    The product and number of licenses are added to the Features to Modify list.
  8. After adding or removing all the licenses and licensed products that you are interested in, click UPDATE POOL FEATURES.

    Screen capture showing the Manage Pool Features page on the NVIDIA Licensing Portal for a server with multiple license pools.

  9. From the Actions menu for the license pool, choose Enable and, when prompted, confirm that you want to enable the license pool.

    Screen capture showing the Actions menu for disabling the license pool.

    Licenses can now be served to licensed clients from the pool.

4.4.4. Merging Two License Pools

If you need to consolidate licenses in two pools into a single pool, you can merge the two pools. When you merge two license pools, all licenses in the pool that you select as the origin pool are migrated to the pool you select as the destination pool and the origin pool is deleted.

Ensure that no licenses in the origin pool are checked out by licensed clients.A license pool cannot be merged while any of the licenses in the pool are checked out by a client. If a license in the pool is checked out, the Split or merge command for the pool is dimmed and inactive.
  1. Navigate to the License Server Details page of the license server to which both the license pools belong. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, click the License Pools tab.

    Screen capture showing the License Server Details page on the NVIDIA Licensing Portal for a server with multiple license pools.

  3. In the list of license pools on the License Pools tab, from the Actions menu for the license pool, choose Disable. When the license pool is disabled, licenses cannot be served to licensed clients from the pool.
  4. When prompted, confirm that you want to disable the license pool.
  5. From the Actions menu for the origin license pool, choose Split or merge.
  6. In the Split / Merge Pool Features pop-up window that opens, select the destination license pool, select the Merge all features? option and click MERGE POOL.

    Screen capture showing the Merge all features? pop-up window.

All licenses in the pool that you select as the origin pool are migrated to the pool you select as the destination pool and the origin pool is deleted.

4.4.5. Migrating Licenses Between License Pools

If demand for licenses from different pools changes, you can migrate licenses between pools to meet the changed demand.

Ensure that the following prerequisites are met:

  • Both pools between which you will migrate licenses already exist. If you want to migrate licenses to a new pool, create the pool first.
  • No licenses that want to migrate are checked out by licensed clients.
  1. Navigate to the License Server Details page of the license server to which both the license pools belong. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, click the License Pools tab.

    Screen capture showing the License Server Details page on the NVIDIA Licensing Portal for a server with multiple license pools.

  3. In the list of license pools on the License Pools tab, from the Actions menu for the license pool, choose Disable. When the license pool is disabled, licenses cannot be served to licensed clients from the pool.
  4. When prompted, confirm that you want to disable the license pool.
  5. From the Actions menu for the license pool that you disabled, choose Split or merge.
  6. From the Destination Pool drop-down list, select the license pool to which you want to migrate licenses.
  7. In the Split / Merge Pool Features pop-up window that opens, select the licenses that you want migrate.

    Select the licenses for each licensed product as follows:

    1. In the list of products, select the licensed product for which you want to migrate licenses.
    2. In the text-entry field in the MOVE LICENSES column, enter the number of licenses for the product that you want to migrate. You must leave at least one license in the license pool from which you want to migrate licenses. If you want to remove all licenses for a product from the license pool, you must follow the instructions in Managing Licenses and Licensed Products in a License Pool.
    3. Click ADD.
    The product and number of licenses are added to the Features to Move list.
  8. Click SPLIT POOL FEATURES.

    Screen capture showing the Split / Merge Pool Features pop-up window.

  9. From the Actions menu for the license pool, choose Enable and, when prompted, confirm that you want to enable the license pool.

    Screen capture showing the Actions menu for disabling the license pool.

    Licenses can now be served to licensed clients from the pool.

4.5. Managing Fulfillment Conditions

A fulfillment condition selects the license pools from which a license requested by a licensed client is served. It is a test that is applied to any request from a licensed client to determine if the request may be fulfilled from a specified set of license pools.

A fulfillment condition is bound to an ordered list of license pools. If a request satisfies the conditions of the test, the bound license pools are evaluated, in order, to determine if the request can be served from the pool.

A fulfillment condition may belong to only one license server. However, a license server may contain any number of fulfillment conditions. If a license server contains more than one fulfillment condition, the conditions are ordered. Every request from a licensed client is tested against each fulfillment condition in order either until the request can be fulfilled or has been tested against all the fulfillment conditions.

4.5.1. About Match Conditions

A match condition determines whether a request from a licensed client may be fulfilled from the license pools bound to a fulfillment condition. You must specify a match condition when you create or edit a fulfillment condition.

Reference Match

The Reference Match condition allows only clients that have been provisioned with the client configuration token associated with a fulfillment condition to be served. The client configuration token contains a unique identifier for the fulfillment condition. The client provides this unique identifier to the server whenever the client requests a license from the server.

For information about how to provision a licensed client with a condition match token, see:

Universal Match

The Universal Match condition allows any client to be served. It is the default fulfillment condition and is applied if more specific conditions are not met or they were unable to fulfill a request. Because this condition is the most general condition, it is the last condition to be evaluated.

Only one fulfillment condition for a license server may specify the Universal Match condition. If another fulfillment condition for the server specifies this match condition, it is absent from the Match Condition drop-down list.

4.5.2. Creating a Fulfillment Condition

  1. Navigate to the License Server Details page of the license server to which the service instance is bound. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, disable the license server by clicking DISABLE SERVER and, when prompted, confirm that you want to disable the license server. When the license server is disabled, it cannot serve licenses to licensed clients.
  3. From the Actions menu, choose Create Condition.

    The Create Fulfillment Condition wizard opens.



    Screen capture showing the beginning of the Create Fulfillment Condition wizard.

  4. In the Name field, enter your choice of name for the fulfillment condition.
  5. Optional: In the Description field, enter a text description of the fulfillment condition.
  6. Under Match Condition, select a match condition to determine which clients may be served licenses from the license pools bound to this fulfillment condition.

    The following match conditions are defined:

  7. Specify the sequence of license pools from which licenses will be served to clients.

    Screen capture showing the Select License Pools page of the Create Fulfillment Condition wizard.

    Licenses are served in the order in which they appear in the Bound license pools list.
    Note: You can specify a license pool in the license pool bindings for any number of fulfillment conditions.
    1. In the License Pools list, select the license pools from which you want licenses to be served and click the right arrow icon. The license pools are moved to the Bound license pools list.
    2. In the Bound license pools list, adjust the order of the license pools as necessary by selecting each license pool that you need to move and clicking the up arrow and down arrow icons to move the license pool to its required position in the sequence.
  8. Click CREATE FULFILLMENT CONDITION.

    Screen capture showing the Create Fulfillment Condition page.

    The fulfillment condition is added to the list of fulfillment conditions on the Fulfillment Conditions tab of the License Server Details page.
  9. On the Overview tab of the License Server Details page, enable the license server by clicking ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.

4.5.3. Deleting a Fulfillment Condition

To be able to serve licenses, a license server must have at least one fulfillment condition. If you delete all the fulfillment conditions that belong to a license server, the license server is no longer able to serve licenses to clients.

Note: Deleting a fulfillment condition does not delete the license pools that are bound to the fulfillment condition. If you delete all fulfillment conditions to which a license pool is bound, licenses in the pool can no longer be served to clients.
  1. Navigate to the License Server Details page of the license server to which the service instance is bound. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. On the License Server Details page that opens, click the Fulfillment conditions tab.

    Screen capture showing the License Server dashboard with the Fulfillment Conditions tab highlighted.

  3. In the list of fulfillment conditions on the Fulfillment conditions tab, from the Actions menu for fulfillment condition that you want to delete, choose Disable.

    Screen capture showing the setting for disabling a fulfillment condition

    When the fulfillment condition is disabled, it cannot be used to fulfill requests for licenses from licensed clients.
  4. From the Actions menu for the fulfillment condition that you want to delete, choose Delete.
  5. When asked if you want to delete the fulfillment condition, click DELETE FULFILLMENT CONDITION.
After a fulfillment condition is deleted, it is ignored in requests that specify the condition. Furthermore, if a request specifies only deleted fulfillment conditions, the request won't be satisfied.

4.5.4. Editing a Fulfillment Condition

  1. Navigate to the License Server Details page of the license server to which the service instance is bound. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. On the License Server Details page that opens, click the Fulfillment conditions tab.

    Screen capture showing the License Server dashboard with the Fulfillment Conditions tab highlighted.

  3. In the list of fulfillment conditions on the Fulfillment conditions tab, from the Actions menu for fulfillment condition that you want to delete, choose Disable.

    Screen capture showing the setting for disabling a fulfillment condition

    When the fulfillment condition is disabled, it cannot be used to fulfill requests for licenses from licensed clients.
  4. From the Actions menu for the fulfillment condition that you want to edit, choose Edit. The Edit Fulfillment Condition wizard is started.
  5. Use the Edit Fulfillment Condition wizard make the changes that you require.

    Screen capture showing the Edit Fulfillment Condition wizard.

    1. In the Name field, edit the name for the fulfillment condition.
    2. In the Description field, edit the description of the fulfillment condition.
    3. Under Match Condition, select a new match condition to determine which clients may be served licenses from the license pools bound to this fulfillment condition.
      Note: If you change the match condition, you must regenerate all client configuration tokens that specified the fulfillment condition and provision all affected licensed clients with the new token.

      The following match conditions are defined:

    4. Click Next: Select license pools.
    5. Modify the sequence of license pools from which licenses will be served to clients.

      Screen capture showing the Select license pools page of the Edit Fulfillment Condition wizard.

      Use the left and right arrow icons to move selected license pools between the License Pools list and the Bound license pools list. Use the up and down arrow icons to adjust the order of the license pools in the Bound license pools list. Licenses are served in the order in which they appear in the Bound license pools list.
    6. Click Preview condition update.
  6. Click EDIT FULFILLMENT CONDITION.

    Screen capture showing the Preview condition update page of the Edit Fulfillment Condition wizard.

  7. From the Actions menu for fulfillment condition that you edited, choose Enable. The fulfillment condition can now be used to fulfill requests for licenses from licensed clients.

4.5.5. Changing the Order of Fulfillment Conditions

By default, fulfillment conditions that are configured with the Reference Match condition are tested in the order in which they were added to a license server. You can change this order if you want the fulfillment conditions to be tested in a specific order.

Ensure that the license server contains at least two fulfillment conditions that are configured with the Reference Match condition.
  1. Navigate to the License Server Details page of the license server to which the service instance is bound. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, disable the license server by clicking DISABLE SERVER and, when prompted, confirm that you want to disable the license server. When the license server is disabled, it cannot serve licenses to licensed clients.
  3. Click REINDEX. The Reindex Fulfillment Conditions window opens.
  4. Rearrange your fulfillment conditions in the order that you want. Move each fulfillment condition that you want to move up or down in the processing order as follows:
    1. In the Fulfillment Conditions list, select the condition that you want to move.
      Note: A fulfillment condition that is configured with the Universal Match condition is not displayed in this list because it is processed last.
    2. When hovering your cursor over the up and down arrows, your cursor will change into a hand. Use the hand cursor to drag the condition to the position in the processing order that you want.

      Screen capture showing the order arrows of the Fulfillment Conditions tab

  5. After re-ordering the conditions, you will see the following alert: You have unsaved changes in the ordering. Click the alert to reindex the order of your fulfillment conditions. The order in which the fulfillment conditions are listed on the License Server Details page is updated to match the order that you specified.
  6. On the Overview tab of the License Server Details page, enable the license server by clicking ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.

4.6. Generating a Client Configuration Token

A client configuration token identifies the service instance, license servers, and fulfillment conditions to be used to serve a license in response to a request from a licensed client. This information must be exchanged between a service instance and a licensed client to enable the service instance to serve licenses to the client.

After generating a client configuration token, you copy it to each licensed client that you want to use the token. Each client then provides data from the token back to the server whenever the client requests a license from the server.

A client configuration token is valid for 12 years after it is generated.

Create one client configuration token for each combination of license servers and fulfillment conditions that you want to use to serve licenses in response to requests from licensed clients.

How to generate a client configuration token depends on whether you are generating the token for a CLS or a DLS instance. For detailed instructions, see:

After creating a client configuration token from a service instance, copy the client configuration token to each licensed client that you want to use the combination of license servers and fulfillment conditions specified in the token. For more information, see Configuring a Licensed Client.

4.6.1. Generating a Client Configuration Token for a CLS Instance

  1. Log in to the NVIDIA Enterprise Application Hub and click NVIDIA LICENSING PORTAL to go to the NVIDIA Licensing Portal.
  2. If your assigned roles give you access to multiple virtual groups, select the virtual group for which you are managing licenses from the list of virtual groups at the top right of the NVIDIA Licensing Portal dashboard.
  3. In the left navigation pane, click SERVICE INSTANCES.

    Screen capture showing the Service Instances topic in the navigation pane.

  4. On the Service Instances page that opens, from the Actions menu for the CLS instance for which you want to generate a client configuration token, choose Generate client configuration token.
  5. In the Generate Client Configuration Token pop-up window that opens, select the references that you want to include in the client configuration token.
    1. From the list of scope references, select the scope references that you want to include.

      Screen capture showing the selection of scope references and fulfillment class references for inclusion in a client configuration token

      You must select at least one scope reference.

      Each scope reference specifies the license server that will fulfil a license request.

    2. Optional: Click the Fulfillment class references tab, and from the list of fulfillment class references, select the fulfillment class references that you want to include.

      Screen capture showing the selection of scope references and fulfillment class references for inclusion in a client configuration token

      Including fulfillment class references is optional.
    3. Click DOWNLOAD CLIENT CONFIGURATION TOKEN.
    A file named client_configuration_token_mm-dd-yyyy-hh-mm-ss.tok is saved to your default downloads folder.

4.6.2. Generating a Client Configuration Token for a DLS Instance

  1. If you are not already logged in, log in to the NVIDIA Licensing application at the IP address of the VM on which the DLS instance resides.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, from the Actions menu for the DLS instance for which you want to generate a client configuration token, choose Generate client configuration token.

    Screen capture showing the selection of scope references and fulfillment class references for inclusion in a client configuration token

  4. In the Generate Client Configuration Token pop-up window that opens, select the references that you want to include in the client configuration token.
    1. From the list of scope references, select the scope references that you want to include.

      Screen capture showing the selection of scope references and fulfillment class references for inclusion in a client configuration token

      You must select at least one scope reference.

      Each scope reference specifies the license server that will fulfil a license request.

    2. Optional: Click the Fulfillment class references tab, and from the list of fulfillment class references, select the fulfillment class references that you want to include.

      Screen capture showing the selection of scope references and fulfillment class references for inclusion in a client configuration token

      Including fulfillment class references is optional.
    3. Optional: If you want the service instance to be identified through its IP address instead of its fully qualified domain name, select the Use IP address instead of FQDN for CCT option.
    4. Click DOWNLOAD CLIENT CONFIGURATION TOKEN.
    A file named client_configuration_token_mm-dd-yyyy-hh-mm-ss.tok is saved to your default downloads folder.

4.7. Disabling and Enabling a License Server, License Pool, or Fulfillment Condition

When modifying a license server, license pool, or fulfillment condition, you must disable it before modifying it. To ensure that service instance can serve licenses to licensed clients, you must ensure that its license servers, licence pools and fulfillment conditions are enabled.

You disable and enable a license server, license pool, or fulfillment condition from the relevant License Server Details page. For information about how to navigate to the License Server Details page, see Navigating to the License Server Details Page for a License Server.
  • To disable a license server, navigate to the Overview tab of the License Server Details page for the license server. Then click DISABLE SERVER and, when prompted, confirm that you want to disable the license server. When the license server is disabled, it cannot serve licenses to licensed clients.
  • To enable a license server, navigate to the Overview tab of the License Server Details page for the license server. Then click ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.
  • To disable a license pool, navigate to the License Pools tab of the License Server Details page for the license server to which the license pool belongs. Then from the Actions menu for the license pool, choose Disable. When the license pool is disabled, licenses cannot be served to licensed clients from the pool.
  • To enable a license pool, navigate to the License Pools tab of the License Server Details page for the license server to which the license pool belongs. Then from the Actions menu for the license pool, choose Enable. Licenses can now be served to licensed clients from the pool.
  • To disable a fulfillment condition, navigate to the Fulfillment conditions tab of the License Server Details page for the license server to which the fulfillment condition belongs. Then from the Actions menu for the fulfillment condition, choose Disable. When the fulfillment condition is disabled, it cannot be used to fulfill requests for licenses from licensed clients.
  • To enable a fulfillment condition, navigate to the Fulfillment conditions tab of the License Server Details page for the license server to which the fulfillment condition belongs. Then from the Actions menu for the fulfillment condition, choose Enable. The fulfillment condition can now be used to fulfill requests for licenses from licensed clients.

4.8. Editing License Server Settings

License server settings control how a service instance handles licenses that have been served to licensed clients. You can edit the settings for an individual license server or for all license servers that are bound to a service instance. Any setting that you edit for an individual license server overrides the setting for license servers that are bound to the service instance.

  1. Open the Settings window of the individual license server or service instance for which you want to edit license server settings.
    Scope Steps
    Individual license server
    1. Navigate to the License Server Details page of the license server to which the service instance is bound.

      For instructions, refer to Navigating to the License Server Details Page for a License Server.

    2. On the License Server Details page that opens, disable the license server by clicking DISABLE SERVER and, when prompted, confirm that you want to disable the license server.

      When the license server is disabled, it cannot serve licenses to licensed clients.

    3. From the ACTIONS menu, choose Settings.

      The Server Settings pop-up window opens.

    All license servers bound to a CLS instance
    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 Licensing Portal.

      The NVIDIA Licensing Portal dashboard opens.

    2. If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
    3. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click SERVICE INSTANCES.
    4. In the list of service instances on the Service Instances page that opens, from the Actions menu for the service instance, choose Settings.
    5. In the Service Instance Settings pop-up window that opens, ensure that the License Server tab is selected.
    All license servers bound to a DLS instance
    1. If you are not already logged in, log in to the NVIDIA Licensing application on the VM or container in which the DLS appliance is installed or deployed.
    2. In the left navigation pane, click SERVICE INSTANCE.
    3. On the Service Instance Details page that opens,from the ACTIONS menu, choose Settings.
    4. In the Service Instance Settings pop-up window that opens, ensure that the License Server tab is selected.
  2. In the Settings pop-up window, edit the settings that you want to change and click SAVE SETTINGS.
    1. Individual license server only: View the Feature Overage setting.
      Maximum Allowed Feature Overage
      This setting cannot be changed from its preset value and is displayed for information only. For counted licenses, it is the maximum percentage of the number of licenses available that can be leased to license clients for a limited period of time when all available licenses are checked out. For example, if you have 100 concurrent user licenses and all licenses are checked out, up to an additional 10 licenses can leased to license clients for a limited period of time. During periods when overage allowances are being used, administrative warnings may be generated.
    2. In the left navigation pane of the Settings pop-up window, click Lease Period Settings and edit the following settings.
      Default Lease Period
      The default period of time for which a license remains valid at a licensed client after the license has been served to the client. At the end of the lease period, the license becomes invalid at the client and becomes available to be served to other licensed clients.
      Maximum Lease Period
      The maximum period of time for which a license remains valid at a licensed client after the license has been served to the client.
      Minimum Lease Period
      The minimum period of time for which a license remains valid at a licensed client after the license has been served to the client.
    3. In the left navigation pane of the Settings pop-up window, click Other Settings and edit the following settings.
      Default Renewal Period
      The percentage of the lease period that must elapse before a licensed client can renew a license. By renewing a license before the lease period has elapsed, a licensed client can extend its license beyond the original expiration time of the license. Extending a license ensures that if a licensed client temporarily loses network connectivity to the licensing service, there is enough time for connectivity to be restored before the license expires.

      For example, if the lease period is one day and the renewal period is 20%, the client attempts to renew its license every 4.8 hours. If network connectivity is lost, the loss of connectivity is detected during license renewal and the client has 19.2 hours in which to re-establish connectivity before its license expires.

      Offline Lease
      Enable or disable offline lease of licenses to clients. When offline lease of licenses to clients is enabled, clients can keep their licenses even when powered off.
  3. Individual license server only: On the License Server Details page, enable the license server by clicking ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.

4.9. Manually Releasing Leases from a Server

This section will describe options to manually release licenses using the License Server GUI if immediate license freeing is needed.

In the example where a License Client VM has been un-gracefully stopped and deleted from existence, the license will remain in-use on the server and will not be freed until the lease has reached expiration. Because of this, manual admin release from the server is useful and these steps will describe the procedure.

4.9.1. Manual Release of Specific Clients Licensed to an NLS Service Instance

This section will describe how to locate and manually release specific VMs from the server.

Note:

There is a daily 10% rolling limit of client VMs that can be released manually. This 10% is based on total allocated license amount onto the server. (Example: 100 licenses allocated to the server, 10 Leases can be specifically manually released).

For DLS:

  1. Navigate to the DLS GUI and login with dls_admin.
  2. Navigate to the Leases tab from the left navigation pane.

    Optional: Use the Search Bar to search for specific License Clients to release for. To filter, you can search by: ID, Feature Name, Client Origin Ref, Client Hostname, Client MAC Addresses, or Client IP Addresses.

  3. Click the red Release button to manually release the Virtual Machine.



    Screen capture showing the Release button on the Leases page.

  4. Click Force Release on the dialog that pops up.

For CLS:

  1. Navigate to the NVIDIA Licensing Portal and login.
  2. Navigate to the Leases tab from the left navigation pane.
  3. From the drop-down in the header, select the Service Instance from which held leases will be force released.

    Optional: Use the Search Bar to search for specific License Clients to release for. To filter, you can search by: ID, Feature Name, Client Origin Ref, Client Hostname, Client MAC Addresses, or Client IP Addresses.

  4. Click the red Release button to manually release the Virtual Machine.



    Screen capture showing the Release button on the Leases page.

  5. Click Force Release on the dialog that pops up.

4.9.2. Manual Force Bulk Release of All Clients Licensed to an NLS Service Instance

This section will describe how to locate and force release all leases that are in-use on a given NVIDIA License System Service Instance.

Note:

There is a 30-day rolling limit of 2 Bulk Releases of licenses that can be executed from the server.

For DLS:

  1. Navigate to the DLS GUI and login with dls_admin.
  2. Navigate to the Leases tab from the left navigation pane.
  3. Click the red Release All button in the top-right corner.



    Screen capture showing the Release All button on the Leases page.

  4. Click Force Release on the dialog that pops up.

For CLS:

  1. Navigate to the NVIDIA Licensing Portal and login.
  2. Navigate to the Leases tab from the left navigation pane.
  3. From the drop-down in the header, select the Service Instance from which held leases will be force released.
  4. Click the red Release All button in the top-right corner.
  5. Click Force Release on the dialog that pops up.

5. Configuring a Licensed Client

To use an NVIDIA vGPU software licensed product, each client system to which a physical or virtual GPU is assigned must be able to obtain a license from the NVIDIA License System. A client system can be a VM that is configured with NVIDIA vGPU, a VM that is configured for GPU pass through, or a physical host to which a physical GPU is assigned in a bare-metal deployment.

Note:  NVIDIA vGPU software releases earlier than 13.0 do not support NVIDIA License System. For full details of NVIDIA vGPU software releases that support NVIDIA License System, refer to NVIDIA License System Release Notes.

Before configuring a licensed client, ensure that the following prerequisites are met:

  • The NVIDIA vGPU software graphics driver is installed on the client.
  • The client configuration token that you want to deploy on the client has been created from the NVIDIA Licensing Portal or the DLS as explained in Generating a Client Configuration Token.
  • The ports in your firewall or proxy to allow HTTPS traffic between the service instance and the licensed client must be open. The ports that must be open in your firewall or proxy depend on whether the service instance is a CLS instance or a DLS instance:
    • For a CLS instance, ports 443 and 80 must be open.
    • For a DLS instance, ports 443, 80, 8081, and 8082 must be open.

The NVIDIA vGPU software graphics driver creates a default location in which to store the client configuration token on the client. You can specify a custom location for the client configuration token by adding a registry value on Windows or by setting a configuration parameter on Linux. By specifying a shared network location that is mounted locally on the client, you can simplify the deployment of the same client configuration token on multiple clients. Instead of copying the client configuration token to each client individually, you can keep only one copy in the shared network location.

The process for configuring a licensed client is the same for CLS and DLS instances but depends on the OS that is running on the client.

5.1. Configuring a Licensed Client on Windows

Perform this task from the client.

  1. Add the FeatureType DWord (REG_DWORD) registry value to the Windows registry key HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\GridLicensing.
    Note: If you are upgrading an existing driver, this value is already set.

    The value to set depends on the type of the GPU assigned to the licensed client that you are configuring.

    GPU Type Setting
    NVIDIA vGPU Do not change the value of this registry key. NVIDIA vGPU software automatically selects the correct type of license based on the vGPU type.
    Physical GPU The feature type of a GPU in pass-through mode or a bare-metal deployment:
    • 0: NVIDIA Virtual Applications
    • 2: NVIDIA RTX Virtual Workstation
  2. Optional: If you want store the client configuration token in a custom location, add the ClientConfigTokenPath String (REG_SZ) registry value to the Windows registry key HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\GridLicensing.

    Set the value to the full path to the folder in which you want to store the client configuration token for the client. You can use the syntax \\fully-qualified-domain-name\share-name for the path to the folder. By default, the client searches for the client configuration token in the %SystemDrive%:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken folder.

    By specifying a shared network drive mapped on the client, you can simplify the deployment of the same client configuration token on multiple clients. Instead of copying the client configuration token to each client individually, you can keep only one copy in the shared network drive.

  3. If you are storing the client configuration token in a custom location, create the folder in which you want to store the client configuration token.

    If the folder is a shared network drive, ensure that the following conditions are met:

    • The folder is mapped locally on the client to the path specified in the ClientConfigTokenPath registry value.
    • The COMPUTER object has the rights to access the folder on the shared network drive. The COMPUTER object requires these rights because the license service runs before any user logs in.

    If you are storing the client configuration token in the default location, omit this step. The default folder in which the client configuration token is stored is created automatically after the NVIDIA vGPU software graphics driver is installed.

  4. Copy the client configuration token to the folder in which you want to store the client configuration token. Ensure that this folder contains only the client configuration token that you want to deploy on the client and no other files or folders. If the folder contains more than one client configuration token, the client uses the newest client configuration token in the folder.
    • If you want to store the client configuration token in the default location, copy the client configuration token to the %SystemDrive%:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken folder.
    • If you want to store the client configuration token in a custom location, copy the token to the folder that you created in the previous step.
  5. Restart the NvDisplayContainer service.

The NVIDIA service on the client should now automatically obtain a license from the CLS or DLS instance.

After a Windows licensed client has been configured, options for configuring licensing for a network-based license server are no longer available in NVIDIA Control Panel.

5.2. Configuring a Licensed Client on Linux

Perform this task from the client.

  1. As root, open the file /etc/nvidia/gridd.conf in a plain-text editor, such as vi.
    $ sudo vi /etc/nvidia/gridd.conf
    Note: You can create the /etc/nvidia/gridd.conf file by copying the supplied template file /etc/nvidia/gridd.conf.template.
  2. Add the FeatureType configuration parameter to the file /etc/nvidia/gridd.conf on a new line as FeatureType="value".

    value depends on the type of the GPU assigned to the licensed client that you are configuring.

    GPU Type Value
    NVIDIA vGPU 1. NVIDIA vGPU software automatically selects the correct type of license based on the vGPU type.
    Physical GPU The feature type of a GPU in pass-through mode or a bare-metal deployment:
    • 0: NVIDIA Virtual Applications
    • 2: NVIDIA RTX Virtual Workstation
    • 4: NVIDIA Virtual Compute Server

    This example shows how to configure a licensed Linux client for NVIDIA Virtual Compute Server.

    # /etc/nvidia/gridd.conf.template - Configuration file for NVIDIA Grid Daemon
    …
    # Description: Set Feature to be enabled
    # Data type: integer
    # Possible values:
    # 0 => for unlicensed state
    # 1 => for NVIDIA vGPU
    # 2 => for NVIDIA RTX Virtual Workstation
    # 4 => for NVIDIA Virtual Compute Server
    FeatureType=4
    ...
  3. Optional: If you want store the client configuration token in a custom location, add the ClientConfigTokenPath configuration parameter to the file /etc/nvidia/gridd.conf on a new line as ClientConfigTokenPath="path"
    path
    The full path to the directory in which you want to store the client configuration token for the client. By default, the client searches for the client configuration token in the /etc/nvidia/ClientConfigToken/ directory.

    By specifying a shared network directory that is mounted locally on the client, you can simplify the deployment of the same client configuration token on multiple clients. Instead of copying the client configuration token to each client individually, you can keep only one copy in the shared network directory.

    This example shows how to configure a licensed Linux client to search for the client configuration token in the /mnt/nvidia/ClientConfigToken/ directory. This directory is a mount point on the client for a shared network directory.

    # /etc/nvidia/gridd.conf.template - Configuration file for NVIDIA Grid Daemon
    …
    ClientConfigTokenPath=/mnt/nvidia/ClientConfigToken/
    ...
  4. Save your changes to the /etc/nvidia/gridd.conf file and close the file.
  5. If you are storing the client configuration token in a custom location, create the directory in which you want to store the client configuration token.

    If the directory is a shared network directory, ensure that it is mounted locally on the client at the path specified in the ClientConfigTokenPath configuration parameter.

    If you are storing the client configuration token in the default location, omit this step. The default directory in which the client configuration token is stored is created automatically after the NVIDIA vGPU software graphics driver is installed.

  6. Copy the client configuration token to the directory in which you want to store the client configuration token. Ensure that this directory contains only the client configuration token that you want to deploy on the client and no other files or directories. If the directory contains more than one client configuration token, the client uses the newest client configuration token in the directory.
    • If you want to store the client configuration token in the default location, copy the client configuration token to the /etc/nvidia/ClientConfigToken directory.
    • If you want to store the client configuration token in a custom location, copy the token to the directory that you created in the previous step.
  7. Ensure that the file access modes of the client configuration token allow the owner to read, write, and execute the token, and the group and others only to read the token.
    1. Determine the current file access modes of the client configuration token.
      # ls -l client-configuration-token-directory
    2. If necessary, change the mode of the client configuration token to 744.
      # chmod 744 client-configuration-token-directory/client_configuration_token_*.tok
    client-configuration-token-directory
    The directory to which you copied the client configuration token in the previous step.
  8. Restart the nvidia-gridd service.

The NVIDIA service on the client should now automatically obtain a license from the CLS or DLS instance.

After a Linux licensed client has been configured, options for configuring licensing for a network-based license server are no longer available in NVIDIA X Server Settings.

5.3. Verifying the NVIDIA vGPU Software License Status of a Licensed Client

After configuring a client with an NVIDIA vGPU software license, verify the license status by displaying the licensed product name and status.

To verify the license status of a licensed client, run nvidia-smi with the –q or --query option. If the product is licensed, the expiration date is shown in the license status.

nvidia-smi -q
==============NVSMI LOG==============

Timestamp                           : Wed Mar 31 01:49:28 2020
Driver Version                      : 440.88
CUDA Version                        : 10.0

Attached GPUs                       : 1
GPU 00000000:00:08.0
    Product Name                    : Tesla T4
    Product Brand                   : Grid
    Display Mode                    : Enabled
    Display Active                  : Disabled
    Persistence Mode                : N/A
    Accounting Mode                 : Disabled
    Accounting Mode Buffer Size     : 4000
    Driver Model
        Current                     : WDDM
        Pending                     : WDDM
    Serial Number                   : 0334018000638
    GPU UUID                        : GPU-ba2310b6-95d1-802b-f96f-5865410fe517
    Minor Number                    : N/A
    VBIOS Version                   : 90.04.21.00.01
    MultiGPU Board                  : No
    Board ID                        : 0x8
    GPU Part Number                 : 699-2G183-0200-100
    Inforom Version
        Image Version               : G183.0200.00.02
        OEM Object                  : 1.1
        ECC Object                  : 5.0
        Power Management Object     : N/A
    GPU Operation Mode
        Current                     : N/A
        Pending                     : N/A
    GPU Virtualization Mode
        Virtualization mode         : Pass-Through
    vGPU Software Licensed Product
        Product Name                : NVIDIA Virtual Compute Server
        License Status              : Licensed (Expiry: 2021-11-13 18:29:59 GMT)
    …
    …

6. Administering a Service Instance

Perform these routine administration tasks as needed during the lifetime of the service instance.

6.1. Setting the Validity Period of a Lease Authorization Token for a Service Instance

You can set the validity period of a lease authorization token to either enhance performance or increase security. Increasing the validity period enhances performance by decreasing the frequency with which clients are authorized before the service instance grants a licensing request. Decreasing the expiration time increases security by increasing the frequency with which clients are authorized before the service instance grants a licensing request.

The default validity period is one hour. You can set the validity period to any value up to 24 hours.

How to set the validity period of a lease authorization token for a service instance depends on whether you are setting it for a CLS instance or a DLS instance. For detailed instructions, see:

6.1.1. Setting the Validity Period of a Lease Authorization Token for a CLS Instance

Perform this task on the NVIDIA Licensing Portal.
  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 Licensing Portal, then select SERVICE INSTANCES from the left navigation pane.

    Screen capture showing the Service Instances topic on the navigation pane.

  2. Find the CLS server that you want to adjust.
  3. Select the Actions menu from the right-hand side of the screen, then click Settings from the drop-down.
  4. Select Service Instance Settings at the top of the window that opens, modify Auth Token Expiry Time as needed, then click SAVE SETTINGS.

    Screen capture showing the Auth Token Expiry Time in the Service Instance Settings window.

6.1.2. Setting the Validity Period of a Lease Authorization Token for a DLS Instance

Perform this task on the NVIDIA Licensing application on the virtual appliance that hosts the DLS instance.
  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the login page that opens, provide the user credentials for the DLS administrator user on the DLS virtual appliance and click LOGIN.
  3. In the left navigation pane of the NVIDIA Licensing dashboard, click SERVICE INSTANCE.

    Screen capture showing the Service Instance topic on the navigation pane.

  4. On the Service Instance page that opens, click EDIT SETTINGS.
  5. Select Service Instance Settings at the top of the window that opens, modify Auth Token Expiry Time as needed, then click SAVE SETTINGS.

    Screen capture showing the Auth Token Expiry Time in the Service Instance Settings window.

6.2. Migrating a DLS Instance

Migrating a DLS instance simplifies the upgrade of a DLS appliance. After installing a new version of the DLS appliance, you can transfer the license servers, user registration, IP address, and service instance from the existing DLS appliance to a new DLS appliance. However, event records on the existing DLS appliance are not migrated.

If you are upgrading the DLS appliance for the DLS instances in an HA cluster, migrate only the primary instance. During the migration process, all data is removed from the secondary DLS instance and the instance is removed from the cluster. After completing the migration process for the primary instance, you can configure an HA cluster from the new primary instance.

Depending on the types of platforms that are hosting the existing DLS appliance and the new DLS appliance, NVIDIA License System enables you migrate a DLS instance online or offline.
  • For migrations from a VM-based appliance to a container-based appliance, only offline migration is supported.
  • For migrations from any type of platform to a VM-based appliance created from an instant clone, only offline migration is supported.
  • For migrations between all other combinations of existing platform type and new platform type (VM to VM, container to container, and container to VM) both online and offline migration are supported.

Ensure that the port mappings for ports 8081 and 8084 are not changed from their defaults.

Note: If you are migrating a DLS 1.0.0 or 1.0.1 instance, the version shown on the VA Upgrade Job Progress page is 1.0.0 to preserve backwards compatibility.

After migrating a DLS 1.0.0 or 1.0.1 instance, you must change the password for the dls_admin user to enable or disable the dls_system user on the new instance.

6.2.1. Migrating a DLS Instance Online

You can migrate a DLS instance online if the new DLS virtual appliance is installed on a VM and the existing DLS virtual appliance can connect to the new DLS virtual appliance over IP.
If any of the following conditions is met, online migration is not supported and you must migrate the DLS instance offline as explained in Migrating a DLS Instance Offline:
  • The new DLS appliance isn't yet installed on a VM or deployed in a container.
  • The existing DLS appliance cannot connect to the new DLS appliance over IP.
  • The DLS instance is being migrated from a VM-based appliance to a container-based appliance.
  • The DLS instance is being migrated from an appliance based on any type of platform to a VM-based appliance created from an instant clone.

Migrating a Standalone DLS Instance Online

Before migrating a standalone DLS instance online, ensure that the following prerequisites are met:

To migrate a standalone DLS instance online, follow this sequence of instructions:

  1. Migrating Data from the Existing DLS Virtual Appliance
  2. Confirming the Migration on the new DLS Virtual Appliance

Migrating an HA Cluster of DLS Instances Online

Before migrating an HA cluster of DLS instances online, ensure that the following prerequisites are met:

  • The new DLS appliance is installed on a VM or deployed in a container for the new primary instance and on a second VM or in a second container for the new secondary instance as explained in the following topics:
  • If necessary, a static IP address has been assigned to the DLS virtual appliance for only the new primary instance as explained in Setting the IP Address of a DLS Virtual Appliance from the Hypervisor.

    The virtual appliance for the new secondary DLS instance must have the same IP address as the virtual appliance for the current secondary instance. To avoid IP address conflicts, do not set the IP address for the new secondary DLS instance before starting the migration process.

  • The DLS virtual appliance that hosts the current primary instance can connect over IP to the DLS virtual appliance for the new primary instance.
  • The DLS administration user has not been registered on the DLS virtual appliance for either the primary instance or the secondary instance.

To migrate an HA cluster of DLS instances online, follow this sequence of instructions:

  1. Migrating Data from the Existing DLS Virtual Appliance
  2. Confirming the Migration on the new DLS Virtual Appliance
  3. If necessary, for the new secondary instance only: Setting the IP Address of a DLS Virtual Appliance from the Hypervisor
  4. Configuring an HA Cluster of DLS Instances

6.2.1.1. Migrating Data from the Existing DLS Virtual Appliance

Perform this task from the existing DLS virtual appliance.

For an HA cluster: Perform this task from the existing DLS virtual appliance that hosts the current primary instance.

  1. Log in to the existing DLS virtual appliance that hosts the DLS instance that you want to migrate.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click MAINTENANCE.
  3. On the Maintenance page that opens, scroll down to the On-Premises Virtual Appliance Upgrade section of the page.
  4. Ensure that the Offline Upgrade option is not set.
  5. In the text-entry field, type the IP address or fully qualified domain name of the new DLS virtual appliance and click MIGRATE.
  6. When asked if you want to proceed, click MIGRATE.

    When the migration is complete, the DLS instance that you migrated is no longer able to serve licenses to clients.

    Any time before you confirm the migration, you can enable the DLS instance that you migrated serve licenses to licensed clients again. If necessary, you can also repeat the data migration from the existing DLS instance.

Confirm the migration as explained in Confirming the Migration on the new DLS Virtual Appliance.

6.2.1.2. Confirming the Migration on the new DLS Virtual Appliance

After the data has been transferred, confirm the migration on the new DLS virtual appliance.

Perform this task from the new DLS virtual appliance.
  1. Log in to the new DLS virtual appliance as the DLS administrator user with the password of the DLS administrator user on the existing DLS virtual appliance.
  2. On the Dashboard page that opens, confirm that the installed license server was correctly migrated.
  3. In the left navigation pane of the NVIDIA Licensing dashboard, click MAINTENANCE.
  4. On the Maintenance page that opens, click ACKNOWLEDGE MIGRATION.
    If the existing DLS virtual appliance is a VM-based virtual appliance, the results of this step are as follows:
    • All data is removed from the DLS instance on the existing DLS virtual appliance and the appliance is shut down.
      Note: If the existing DLS virtual appliance is not automatically shut down within 10 minutes, you must shut it down manually.
    • The IP address of the new DLS virtual appliance is set to the IP address of the existing DLS virtual appliance.

      As a result, your browser is disconnected from the new DLS virtual appliance. Setting the IP address of the new virtual appliance takes approximately two minutes.

      Note: If the IP address of the new DLS virtual appliance is not automatically set within 10 minutes, you must set it manually.
    • If the DLS instance is the primary instance in an HA cluster, all data is removed from the secondary DLS instance and the instance is removed from the cluster.
  5. If the existing DLS appliance is a container-based appliance, complete the following steps:
    1. Shut down the existing DLS appliance container.
    2. Reassign the IP address of the existing DLS appliance container to the new DLS appliance container or VM.
    3. If the DLS instance is the primary instance in an HA cluster, also shut down the DLS appliance container for the secondary instance.
  6. Log in to the new DLS virtual appliance again by connecting to the URL https://dls-vm-static-ip-address.
    dls-vm-static-ip-address
    The IP address that was set for the new DLS virtual appliance. This address is the IP address of the old DLS virtual appliance, which the new appliance has now acquired.
  7. Enable the new DLS virtual appliance to serve licenses to licensed clients.
    1. In the left navigation pane of the Maintenance page, click DASHBOARD.
    2. On the Dashboard page that opens, set the option to enable the license server.
    3. Ensure that the option to enable each license pool and fulfillment condition that you want to enable is set.

If you want to use the virtual appliance for a single DLS instance, no further action is required. The virtual appliance is ready for use.

If you want to use the virtual appliance in an HA cluster of DLS instances, perform the following sequence of tasks:

  1. If ncessary, set the IP address for the new secondary DLS instance as explained in Setting the IP Address of a DLS Virtual Appliance from the Hypervisor.

    The virtual appliance for the new secondary DLS instance must have the same IP address as the virtual appliance for the original secondary instance.

  2. Configure the cluster as explained in Configuring an HA Cluster of DLS Instances.

6.2.2. Migrating a DLS Instance Offline

If the new DLS virtual appliance isn't yet installed on a VM or the existing DLS virtual appliance cannot connect to the new DLS virtual appliance over IP, migrate the DLS instance offline.

6.2.2.1. Registering the Migration of a DLS Instance with the NVIDIA Licensing Portal

Registering the migration of a DLS instance with the NVIDIA Licensing Portal involves the exchange of a binary migration file between the instance and the NVIDIA Licensing Portal. After creating the migration file and downloading it from the DLS instance, you must upload it to the NVIDIA Licensing Portal to complete the registration.

  1. Log in to the existing DLS virtual appliance that hosts the DLS instance that you want to migrate. The DLS instance must be either a standalone DLS instance or the primary node in an HA cluster.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click MAINTENANCE.
  3. On the Maintenance page that opens, scroll down to the On-Premises Virtual Appliance Upgrade section of the page.
  4. Set the Offline Upgrade option.
  5. Click GENERATE MIGRATION FILE. If the DLS instance is the primary instance in an HA cluster, all data is removed from the secondary DLS instance and the DLS virtual appliance that hosts the secondary instance is shut down.
  6. When asked if you want to proceed, click GENERATE.

    The DLS instance on the existing DLS virtual appliance is no longer able to serve licenses to clients.

    Modifications to the existing DLS virtual appliance are blocked until the offline migration process is complete.

  7. After the migration file has been generated, click DOWNLOAD MIGRATION FILE. A migration file that is named on_prem_migration_file_mm-dd-yyyy-hh-mm-ss.bin is saved to your downloads folder.
  8. After the migration file has been downloaded, click ACKNOWLEDGE DOWNLOAD. If the DLS virtual appliance that hosts the DLS instance is a VM-based virtual appliance, it is shut down.
  9. If the DLS appliance that hosts the DLS instance is a container-based appliance, shut it down.
  10. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the DLS instance belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group to which the DLS instance belongs from the list of virtual groups at the top right of the page.
  11. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click SERVICE INSTANCES.

    Screen capture showing the Service Instance topic in the navigation pane.

  12. In the list of service instances on the Service Instances page that opens, from the Actions menu for the DLS instance, choose Upload Migration File.
  13. In the Upload Migration File pop-up window that opens, click SELECT MIGRATION FILE.
  14. In the file browser that opens, navigate to the folder that contains the migration file that is named on_prem_migration_file_mm-dd-yyyy-hh-mm-ss.bin that you downloaded and select the file.
  15. Back in the Upload Migration File pop-up window, click UPLOAD.
Install or deploy the new DLS virtual appliance as explained in the following topics:

Then generate and upload the DLS instance token for the new virtual appliance to generate an upgrade file as explained in Generating an Upgrade File for the DLS Instance that You are Migrating.

6.2.2.2. Generating an Upgrade File for the DLS Instance that You are Migrating

After uploading the migration file for the DLS instance that you are migrating, you must generate an upgrade file for the instance. Generating the upgrade file involves generating and uploading the DLS instance token for the new virtual appliance that will host the migrated DLS instance.

Ensure that the following prerequisites are met:

  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the Set Up page that opens, click UPGRADE.
  3. On the Virtual Appliance Upgrade page that opens, click DOWNLOAD DLS INSTANCE TOKEN. A DLS instance token file that is named dls_instance_token_mm-dd-yyyy-hh-mm-ss.tok is downloaded.
  4. Leave the Virtual Appliance Upgrade page open in the browser.
  5. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you are registering the DLS instance.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group for which you are registering the DLS instance from the list of virtual groups at the top right of the page.
  6. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click SERVICE INSTANCES.

    Screen capture showing the Service Instance topic in the navigation pane.

  7. On the Service Instances page that opens, from the ACTIONS menu, choose Upload on-premises (DLS) instance token.
  8. In the Upload DLS Instance Token window that opens, click SELECT INSTANCE TOKEN.
  9. In the file browser that opens, navigate to the folder that contains the DLS instance token file that is named dls_instance_token_mm-dd-yyyy-hh-mm-ss.tok that you downloaded and select the file.
  10. Back in the Upload DLS Instance Token window, complete the generation of the upgrade file:
    1. Select the Upgrade existing option.
    2. From the drop-down list, select the DLS instance for which you previously uploaded the migration file.
    3. Click UPLOAD TOKEN.
    An upgrade file is generated and the Download Upgrade File link is added for the selected DLS instance.
After registering the DLS instance on an upgraded virtual appliance with the NVIDIA Licensing Portal, follow the instructions in Transferring Migration Data to the DLS Instance on an Upgraded Virtual Appliance.

6.2.2.3. Transferring Migration Data to the DLS Instance on an Upgraded Virtual Appliance

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the DLS instance belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group to which the DLS instance belongs from the list of virtual groups at the top right of the page.
  2. In the list of service instances on the Service Instances page that opens, follow the Download Upgrade File link for the DLS instance. A file named dls_upgrade_mm-dd-yyyy-hh-mm-ss.bin is saved to your default downloads folder.
  3. Return to the Virtual Appliance Upgrade page of the NVIDIA Licensing application on the upgraded virtual appliance.
  4. On the Virtual Appliance Upgrade page, click UPLOAD UPGRADE FILE.
  5. In the Upload Upgrade File, click Choose File.
  6. In the file browser that opens, navigate to the folder that contains the upgrade file that is named dls_upgrade_mm-dd-yyyy-hh-mm-ss.bin that you downloaded and select the file.
  7. Back in the Upload Upgrade File, click UPLOAD.

When the upgrade is complete, update the IP address of the virtual appliance to the address given in the prompt as explained in Setting the Static IP Address of a DLS Virtual Appliance.

If you want to use the virtual appliance for a single DLS instance, no further action is required. The virtual appliance is ready for use.

If you want to use the virtual appliance in an HA cluster of DLS instances, configure the cluster as explained in Configuring an HA Cluster of DLS Instances.

6.3. Reconfiguring the Rsyslog Tool in a DLS Virtual Appliance

A VM-based DLS virtual appliance uses the Rsyslog tool for forwarding log messages in an IP network. If you want to export events and alerts for the DLS instance on the appliance to an external syslog or security information and event management (SIEM) server, you can reconfigure the Rsyslog tool in the appliance.

Note: You can perform this task only on a VM-based DLS virtual appliance. You cannot perform this task on a containerized DLS software image. Instead, you can use standard interfaces of the OS on which the container orchestration platform is running to make this change.
The format of each type of log message from a DLS virtual appliance is as follows:
  • syslog messages are in the standard syslog format, with the fields in each message separated by a space:
    timestamp hostname program-name message-text
  • NLS service messages are formatted as JSON strings:
    SEMANTIC:service-name: semantic-json-string
Note: Common Event Format (CEF) is not supported. However, you can configure the format or transfer the data to the SIEM server after the logs have been forwarded to the syslog server.
  1. Use the hypervisor management console of the appliance to log in as the user dls_diagnostics to the VM that hosts the DLS virtual appliance.
  2. Edit the file /etc/rsyslog.conf to update the address and port of the external syslog server.
  3. Restart the Rsyslog tool.
    # sudo -u root /etc/adminscripts/restart_rsyslog.sh

6.4. Setting the Retention Period of Events on a DLS Instance

A DLS instance records events related to administration of the instance and the serving of licenses from the instance to licensed clients. These events are displayed on the Events page of the instance. You can control the number of events that are displayed on this page by setting the retention period of events on a DLS instance. Any event older than the retention period is deleted from the instance.

  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the login page that opens, provide the user credentials for the DLS administrator user on the DLS virtual appliance and click LOGIN.
  3. In the left navigation pane, click SERVICE INSTANCE.
  4. On the Service Instance Details page that opens, from the ACTIONS menu, choose Settings.
  5. In the Service Instance Settings pop-up window that opens, click the Service Instance tab.
  6. In the left navigation pane of the Service Instance Settings window, click Purge Settings, set the retention time in days for each type of event, and click SAVE SETTINGS.

6.5. Gathering License Usage Statistics

You can use license usage statistics to estimate the number of licenses that you need to purchase. These statistics are available only from DLS instances. They are not available from CLS instances.

Usage statistics require event data and if no events are available, the statistics might be incorrect. To ensure that the statistics gathered are correct, set the retention period for events to 90 as explained in Setting the Retention Period of Events on a DLS Instance.
  1. Open a web browser and connect to the URL https://dls-vm-ip-address.
    dls-vm-ip-address
    The IP address or, if defined, the fully qualified domain name of the VM on which the DLS virtual appliance is installed.

    You can get the IP address from the management console of your hypervisor.

  2. On the login page that opens, provide the user credentials for the DLS administrator user on the DLS virtual appliance and click LOGIN.
  3. In the left navigation pane of the NVIDIA Licensing dashboard, click METRICS.
  4. In the Metrics page that opens, specify the details of the statistics that you want to gather and click GET LICENSE UTILIZATION.
    1. Under Date range (up to 92 days), use the calendar widgets to set the start date and end date of the period during which you want to gather license usage statistics.
    2. From the Metric drop-down list, select the statistic that you want to gather.
    3. Under Features, select the licensed products for which you want to gather usage statistics.
    4. To exclude licenses in use that were checked out before the start date of the period during which you want to gather license usage statistics, select the Exclude prior leases option.
    The statistics that you requested are added to the table at the bottom of the Metrics page.
  5. Optional: If you want a report in CSV format, create the report as follows:
    1. At the top right of the table at the bottom of the Metrics page, click the Export data icon.
    2. In the Export Data pop-up window that opens, specify the name of the CSV file to be exported and click EXPORT.
    A .csv file is saved to your default downloads folder.

6.6. Hiding Organization and Virtual Group Information on a DLS Instance

You can use REST APIs to hide the organization and virtual group to which the licenses served by a DLS instance belong.

  1. Submit an HTTP POST request with basic authentication to log in to the DLS appliance that hosts the DLS instance as the DLS administrator user.
    POST https://host:port/auth/v1/login
    host
    The IP address or fully qualified domain name of the VM or container that is hosting the DLS appliance.
    port
    The port on which the VM or container that is hosting the DLS appliance listens for HTTPS requests.

    In the request, pass the user name and password of the DLS administrator user. The default user name is dls_admin.

    The following example uses the curl command to log in to the DLS appliance dls.example.com on port 8081 as the user dls_admin with the password changeit.
    curl -k --location --request POST 'https://dls.example.com:8081/auth/v1/login' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "username": "dls_admin"
        "password": "changeit"}'
    The response sets the authorization token in the LIC-TOKEN cookie and includes the token in the response body.
  2. Submit an HTTP PUT request to hide the organization and virtual group on the DLS instance.
    PUT https://host/service_instance_manager/v1/config/hide-name-on-ui
    host
    The IP address or fully qualified domain name of the VM or container that is hosting the DLS appliance.

    If the tool that you use to submit the request supports cookies, you can submit the request without the authorization token. Otherwise, you must pass the authorization token that was returned in the previous step in the header as a bearer token.

    The following example uses the curl command to hide the organization and virtual group on the DLS instance on the appliance dls.example.com. For clarity, the example shows only the placeholder token.
    curl -k --location --request PUT \
    ' https://dls.example.com/service_instance_manager/v1/config/hide-name-on-ui' \
    --header 'Authorization: Bearer token'

If the organization and virtual group are hidden after the DLS administrator user has logged in to the DLS appliance, the DLS administrator user must reload the web-based management interface to see the changes.

To show the organization and virtual group again, submit a PUT request on the REST endpoint for hiding the organization and virtual group with the query parameter hide=false.
PUT https://host/service_instance_manager/v1/config/hide-name-on-ui?hide=false

6.7. Setting the Maximum Size of the PostgreSQL Database Volume

To limit disk usage by a container-based DLS appliance, you can set the maximum size of the PostgreSQL database volume postgres-data. The default maximum size is 10 GB.

Note: You can perform this task only on a containerized DLS software appliance. You cannot perform this task on a VM-based DLS virtual appliance.
  1. Log in to the DLS appliance for which you want to set the maximum size of the PostgreSQL database volume.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click SERVICE INSTANCE.
  3. In the Service Instance Details page that opens, from the ACTIONS menu, choose Settings.
  4. In the Service Instance Settings pop-up window that opens, click the Service Instance tab and in the left navigation bar, click Purge Settings.
  5. Under Container Volume Disk Allocation in GB, type the maximum size of the PostgreSQL database volume in GB and click SAVE SETTINGS.

6.8. Troubleshooting a DLS Instance

To facilitate troubleshooting, the DLS provides access to log files, event records, and the status of a DLS instance's internal services. If the DLS instance's internal services have failed, you can restart them from the NVIDIA Licensing application on the DLS virtaual appliance.

6.8.1. Log File Locations and Types for a DLS Virtual Appliance

The log files for a DLS virtual appliance contain diagnostic information to help with troubleshooting. The DLS administrator user and the dls_diagnostics user can access these log files through the hypervisor console or secure shell (SSH).

By default, the dls_diagnostics user account is disabled. This user account can be enabled during the registration of the DLS administrator user as explained in Registering the DLS Administrator User. It can also be enabled and disabled by changing the DLS administrator user's settings in the My Info window.

The log files for a DLS virtual appliance are in the locations in the following table.

Log Message Type Log File Location
NVIDIA License System licensing messages /var/lib/docker/volumes/logs/_data/licensing
NVIDIA License System service messages /var/lib/docker/volumes/logs/_data/op_log_archive
/var/lib/docker/volumes/logs/_data/op_log_capture
/var/lib/docker/volumes/logs/_data/op_log_ingest
DLS web server messages /var/lib/docker/volumes/logs/_data/nginx
DLS virtual appliance internal messages related to:
  • HA configuration
  • Inconsistent data between the primary and secondary nodes in an HA cluster
  • Online migration of a DLS instance
/var/lib/docker/volumes/logs/_data/rabbitmq_stdout.log
/var/lib/docker/volumes/logs/_data/rabbitmq_stderr.log

Files in the following standard Linux directories contain log messages from the operating system:

  • /tmp
  • /var/log
  • /var/tmp

6.8.2. Storing Log Files for a DLS Virtual Appliance on a Network File Share

Because the amount of disk space available in a DLS virtual appliance might be limited, the DLS virtual appliance does not retain all log messages generated during the lifetime of a DLS virtual appliance. If you want to retain all log messages, you can configure the virtual appliance to store log files for a DLS virtual appliance on a network file share.

If a virtual appliance is configured to store log files for a DLS virtual appliance on a network file share, it periodically aggregates the log files and moves them from the local disk of the DLS virtual appliance to the share.

Ensure that the following prerequisites are met:

  • The network file share has been created on a network attached storage server that is accessible from the DLS virtual appliance.
  • The DLS administrator user on the DLS virtual appliance is granted full access to the network file share.
  1. Log in to the DLS virtual appliance.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, from the Actions menu, choose LOG ARCHIVE SETTINGS.
  4. In the Network Share Configuration for Log Archival window that opens, provide the details of the network file share and click MOUNT.
    1. From the Platform drop-down list, select the OS that corresponds to the type of the share on the network attached storage server.
      • For a share that corresponds to the Windows OS, such as a CIFS share, select Windows.
      • For a share that corresponds to the UNIX OS, such as an NFS share, select Unix.
    2. In the Network Share Path text-entry field, type the path to the share on the network attached storage server in the following format:
      //nas-server/file-path
      nas-server
      The IP address or fully qualified domain name of the network attached storage server on which the share has been created.
      file-path
      The full path to the share from the root of the file system on the network attached storage server. In the path, use the forward slash as the file separator, even if you selected Windows from the Platform drop-down list.
    3. If you selected Windows from the Platform drop-down list , provide the user name and password for the user on the network attached storage server that will access the share.
The network file share is mounted at /var/log/licensing on the DLS virtual appliance. This mount point is preset in the DLS virtual appliance and cannot be changed.

6.8.3. Exporting and Importing Event Records from a DLS Instance

To help NVIDIA Enterprise Support personnel troubleshoot issues with a DLS instance, you can export event records from the DLS instance and import them into the NVIDIA Licensing Portal.

Note: The maximum size of a file that can be exported from a DLS instance or imported into the NVIDIA Licensing Portal is 250 MBytes.
Note: If no filters are selected, records will be exported for the last 7 days.
  1. Log in to the DLS virtual appliance that hosts the DLS instance.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click MAINTENANCE.
  3. Optional: Filter the events that you want to export.
    1. On the Maintenance page that opens, set the Show advanced filters option.
    2. Use the calendar widget that is added to the page to set the range of dates for which you want to export event records.
    3. Select the categories of event that you want to export.
  4. On the Maintenance page, click EXPORT EVENTS. An event log file that is named on-premises_export_mm-dd-yyyy-hh-mm-ss.log is saved to your downloads folder.
  5. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the DLS instance belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group to which the DLS instance belongs from the list of virtual groups at the top right of the page.
  6. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click DASHBOARD.
  7. On the Dashboard page that opens, under DLS data synchronization, click Import.
  8. In the file browser that opens, navigate to the folder that contains the event log file that is named on-premises_export_mm-dd-yyyy-hh-mm-ss.log that you downloaded and select the file.
  9. Optional: For each other event file that you want to import, click SELECT ANOTHER FILE, and navigate to and select the file.
  10. After selecting all the files that you want to import, click UPLOAD EVENTS.

6.8.4. Restarting a DLS Instance's Internal Services

If a DLS instance has failed because its internal services are no longer active, you can restart the inactive services to recover from the failure.

  1. Log in to the DLS virtual appliance that hosts the DLS instance. If the DLS instance is a node in an HA cluster, you must log in to the DLS virtual appliance that hosts the specific node. You cannot restart the internal services of the secondary node from the primary node or restart the internal services of the primary node from the secondary node.
  2. In the left navigation pane, click SERVICE INSTANCE.
  3. On the Service Instance page that opens, under Node Health, determine whether the status of any of the DLS instance's internal services is inactive. Status information is provided for the DLS instance's critical services and other services.
  4. If any set of services in not active, click RESTART for that set of services.

7. Managing License Servers on the NVIDIA Licensing Portal

After creating a license server on the NVIDIA Licensing Portal, you can add licenses to and remove licenses from the server, add new licensed products to and remove licensed products from the server, and delete the server when you no longer require it.

7.1. Where to Perform Tasks for Managing a License Server

Where to perform the tasks for managing a license server depends on the task and on the type of service instance on which the license server is installed.

Task CLS Instance DLS Instance
Adding licenses to a license server NVIDIA Licensing Portal NVIDIA Licensing Portal
Removing licenses from a license server NVIDIA Licensing Portal The NVIDIA Licensing application on the virtual appliance that hosts the DLS instance
Adding licensed products to a license server NVIDIA Licensing Portal NVIDIA Licensing Portal
Removing licensed products from a license server NVIDIA Licensing Portal The NVIDIA Licensing application on the virtual appliance that hosts the DLS instance
Moving a license server to another virtual group NVIDIA Licensing Portal NVIDIA Licensing Portal
Deleting a license server NVIDIA Licensing Portal NVIDIA Licensing Portal
Note: You cannot delete a license server that is bound to and installed on a DLS or CLS instance. You must first free the license server from the CLS or DLS instance. For instructions, refer to Freeing a License Server from a Service Instance.

7.2. Roles Required for Managing License Servers on the NVIDIA Licensing Portal

The role that these tasks require depends on whether they are being performed for an organization or a virtual group.

7.3. Managing Licenses and Licensed Products on a License Server

Manage the licenses on a license server to add or remove individual licenses for a specific product on the license server. Manage the licensed products on a license server if you need to add or remove licensed products from a license server. When you add a licensed product to a license server, only one license for the product is allocated. When a licensed product is removed from a license server, all licenses that were allocated for the product are returned to the entitlement.

Ensure that any licensed products that you want to remove from a license server are not in a license pool. If necessary, return licensed products from a pool to the license server as explained in Managing Licenses and Licensed Products in a License Pool.
Where to perform this task depends on whether you are adding or removing licenses.
  • If you are adding licenses, perform this task on the NVIDIA Licensing Portal irrespective on the type of service instance on which the license server is installed.
  • If you are removing licenses, where to perform this task depends on the type of service instance on which the license server is installed:
    • On a CLS instance, perform this task on the NVIDIA Licensing Portal.
    • On a DLS instance, perform this task on the NVIDIA Licensing application on the virtual appliance that hosts the DLS instance.
  1. Navigate to the License Server Details page of the license server to which you want to add or from which you want to remove licenses. For instructions, see Navigating to the License Server Details Page for a License Server.
  2. In the License Server Details page that opens, disable the license server by clicking DISABLE SERVER and, when prompted, confirm that you want to disable the license server. When the license server is disabled, it cannot serve licenses to licensed clients.
  3. From the ACTIONS menu, choose Manage Features. The Manage Server Features pop-up window opens with the Modify existing tab active.

In the Manage Server Features pop-up window, you specify all the licenses and licensed products that you want to add or remove before confirming your changes by clicking UPDATE SERVER FEATURES.

  1. For each licensed product for which you want to add or remove licenses, specify the number of licenses for the product that you want to remain on the server after updating licenses. Use the text-entry field in the ALLOCATED column for this purpose.
    • To add licenses to the server, enter a number greater than the number already allocated to the server, but less than or equal to the total number of licenses available.

      If you enter a number greater than the total number of licenses available, an error occurs.

    • To remove licenses from the server, enter a number less than the number already allocated to the server but greater than 0.

      For example, to remove 4 licenses from a server to which 10 licenses are allocated, leaving 6 licenses allocated to the server, enter 6 in the Licenses field.

      If you enter 0, an error occurs. You must leave at least one license on the license server. To remove all licenses for a product from the license server, remove the product from the server by clicking the trash can icon.

    The number of licenses on the server remains unchanged until you confirm your changes by clicking UPDATE SERVER FEATURES.
  2. Remove each licensed product that you no longer want on the server by clicking the trash can icon next to the licensed product. The licensed product is removed from the list of licensed products on the Modify existing tab. However, the licensed product remains on the server until you confirm the change by clicking UPDATE SERVER FEATURES.
  3. Add any licensed products that you want to add to the license server.
    1. Click the Add new tab.
    2. In the list of licensed products on the Add new tab, select the licensed products that you want to add.
  4. After adding or removing all the licenses and licensed products that you are interested in, preview your changes by clicking Preview changes.
  5. After previewing your changes, click UPDATE SERVER FEATURES.
  6. On the Overview tab of the License Server Details page, enable the license server by clicking ENABLE SERVER and, when prompted, confirm that you want to enable the license server. The license server can now serve licenses to licensed clients.

If the license server is installed on a CLS instance, no further action is required. The license server and the NVIDIA Licensing Portal are automatically updated with your changes.

If the license server is installed on a DLS instance, you must ensure that the licenses on your license server and on the NVIDIA Licensing Portal are consistent.

7.4. Returning Licenses from a License Server on a DLS Instance to the NVIDIA Licensing Portal

After removing individual licenses or licensed products from a license server installed on a DLS instance, you must return them to the entitlement on the NVIDIA Licensing Portal. Returning them ensures that the licenses and products on your license server and on the NVIDIA Licensing Portal are consistent. The returned licenses and products are then available for use by other license servers.

  1. If you are not already logged in, log in to the NVIDIA Licensing application at the IP address of the VM on which the DLS virtual appliance is installed.
  2. In the left navigation pane of the NVIDIA Licensing dashboard, click MAINTENANCE.
  3. On the Maintenance page that opens, click Export Feature Return.
    Note: The Export Feature Return button is active only if individual licenses or licensed products have been removed from the license server.
    A license return file named on-premises_feature_return_mm-dd-yyyy-hh-mm-ss.bin is downloaded.
  4. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which the license server was created.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, select the virtual group for which the license server was created from the list of virtual groups at the top right of the page.
  5. In the list of license servers on the NVIDIA Licensing Portal dashboard, select the license server from which you want to return licenses or licensed products.
  6. In the License Server Details page that opens, from the Actions menu, choose Return Features.
  7. In the Return Features pop-up window that opens, click SELECT FEATURE RETURN FILE.
  8. In the file browser that opens, navigate to the folder that contains the license return file named on-premises_feature_return_mm-dd-yyyy-hh-mm-ss.bin that you downloaded and select the file.
  9. Back in the Return Features pop-up window, click RETURN FEATURES. The returned licenses and license products are added to the entitlements on the NVIDIA Licensing Portal.

7.5. Moving a License Server to Another Virtual Group

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the license server belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, expand LICENSE SERVERS and click LIST SERVERS.
  3. In the list of license servers on the License Servers page that opens, from the Actions menu for the license server, choose Move server. The Move License Server pop-up window opens and displays which licensed products can be moved and which licensed products cannot be moved because they are bound to a DLS instance or because licenses are checked out.
  4. In the Move License Server pop-up window, select the virtual group to which you want to move the license server and click MOVE SERVER. The licensed products on the license server that can be moved are moved to the selected virtual group.

7.6. Deleting a License Server

Note: You cannot delete a license server that is bound to and installed on a DLS or CLS instance. You must first free the license server from the CLS or DLS instance. For instructions, refer to Freeing a License Server from a Service Instance.
  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you want to delete the license server.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the list of license servers on the License Servers page that opens, click the name of the license server that you want to delete.
  3. In the License Server Details page that opens, from the Actions menu, choose Delete.
  4. When asked to confirm that you want to delete the license server, click DELETE LICENSE SERVER.

7.7. Editing Default Service Instances

A Default Service Instance is a Service Instance which has been designated as the Service Instance to use in the event of an Express CLS Installation. If no CLS Instance has been used for Express CLS Installation previously, one will be created during the first Express CLS Installation Process. NVIDIA License System Service Instance.

Only CLS-Bound Service Instances can be designated as Default.

For more information on Express CLS Installation, see Configuring a Service Instance.

To view which Service Instance has been designated as Default:

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you want to create the license server.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
    If no license servers have been created for your organization or virtual group, the NVIDIA Licensing Portal dashboard displays a message asking if you want to create a license server.
  2. From the left-side navigation pane, choose SERVICE INSTANCES.

    Screen capture showing the Service Instances topic in the navigation pane.

  3. From the Table view, under the Environment column, look for the green DEFAULT indicator.

    Screen capture showing the Default Service Instance.

7.7.1. Edit the Service Instance Designated as Default

If you would like to change which Service Instance is bound as the Default, follow these steps.

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group for which you want to create the license server.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
    If no license servers have been created for your organization or virtual group, the NVIDIA Licensing Portal dashboard displays a message asking if you want to create a license server.
  2. From the left-side navigation pane, choose SERVICE INSTANCES.

    Screen capture showing the Service Instances topic in the navigation pane.

  3. From the Table view, find the CLS Service Instance that you would like to bind as the Default, or create a new one: Configuring a Service Instance.
  4. From the ACTIONS menu, select EDIT.
  5. On the dialog that pops up, select the toggle button to Mark as default.
  6. Click EDIT SERVICE INSTANCE.

8. Managing Contacts on the NVIDIA Licensing Portal

To help you manage your entitlements and licenses on the NVIDIA Licensing Portal, you can add other users as registered contacts in the organization associated with your NVIDIA Enterprise Account. You can also remove users who no longer require access from your account on the NVIDIA Licensing Portal.

To secure your entitlements and licenses, NVIDIA Licensing Portal provides role-based access for all registered contacts. Each role has a scope that determines whether the role applies to a virtual group within an organization or the organization itself. For more information, see Role-Based Access to an Organization and Virtual Groups.

8.1. Role-Based Access to an Organization and Virtual Groups

Role-based access helps secure the entitlements and licenses in your organization on the NVIDIA Licensing Portal. If you partition your entitlements into isolated segments, role-based access also provides isolation between the segments into which your entitlements are partitioned. It does so by ensuring that only specific contacts in your organization are allowed to view or perform actions on the entitlements and contacts that are allocated to a virtual group.

A role is a collection of actions or capabilities within the NVIDIA Licensing Portal. Each role has a scope that determines the context to which the actions and capabilities of the role apply, specifically, a virtual group within an organization or the organization itself.

Every registered contact has at least one role, but can have multiple roles if the scope of each role is a virtual group. As a result, a contact can be a member of multiple virtual groups. However, roles with a virtual group scope and roles with an organization scope are mutually exclusive. A contact that has a virtual group role cannot also have an organization role.

To enable role-based access to an organization and virtual groups, the NVIDIA Licensing Portal provides pre-defined roles.

8.1.1. Organization Administrator

An organization administrator has the highest level of visibility and access within an organization. The person that created the organization's NVIDIA Enterprise Account is initially assigned the organization administrator role.

Each organization must have at least one organization administrator. Multiple organization administrators in an organization are allowed. To prevent the absence of a single user from denying you access to your organization's entitlements, consider adding at least two organization administrators to your organization.

An organization administrator can see all of the following items for the organization on the NVIDIA Licensing Portal:

  • Entitlements
  • Users
  • Virtual groups
  • License servers provisioned from the entitlements that have not been assigned to a virtual group

An organization administrator can mange virtual groups as follows:

  • Create a virtual group.
  • Delete a virtual group.
  • Assign an entitlement at the organization level to a virtual group.
  • Remove an entitlement from a virtual group and return it to the organization.

An organization administrator can manage other contacts in the organization as follows:

  • Invite a contact currently not within the organization to register at the organization level.
  • Add users and administrators to a virtual group when creating the virtual group.
  • Delete any administrator or user at either the organization level or the virtual group level except the last virtual group administrator in a virtual group.
  • Manage the role of any organization-level contact.

An organization administrator also has all the capabilities of an organization user.

8.1.2. Organization User

An organization user has restricted visibility within an organization and can access only items that are at the organization level and that have not been assigned to a virtual group. An organization user is a contact that has been added to the organization as a base user.

An organization can have no organization users, only one organization user, or multiple organization users.

An organization user can see the following items for the organization on the NVIDIA Licensing Portal:

  • All organization administrators
  • All other organization users
  • All organization-level entitlements
  • All license servers provisioned from organization-level entitlements

An organization user can mange entitlements that have not been assigned to a virtual group as follows:

  • Create a license server.
  • Delete a license server.
  • Add licensed products to a license server.
  • Remove licensed products from a license server.
  • Download a license file.
  • Download software.

An organization user cannot manage other contacts.

8.1.3. Virtual Group Administrator

A virtual group administrator has restricted visibility within an organization and can access items and manage contacts only in the virtual group to which the virtual group administrator is assigned. A virtual group administrator is a contact that has been added to the virtual group as an admin user.

Each virtual group must have at least one virtual group administrator. Multiple virtual group administrators in a virtual group are allowed. To prevent the absence of a single user from denying you access to a virtual group, consider adding at least two virtual group administrators to each virtual group in your organization.

A virtual group administrator can see the following items on the NVIDIA Licensing Portal:

  • All organization administrators
  • All other contacts in the virtual group
  • All entitlements assigned to the virtual group
  • All license servers provisioned from entitlements assigned to the virtual group

A virtual group administrator can manage other contacts in the virtual group as follows:

  • Add an exiting contact within the organization who is not an organization administrator to the virtual group.
  • Invite a contact currently not within the organization to register and join the virtual group.
  • Remove any other contact in the virtual group, regardless of the contact's role.

    Virtual group administrators cannot remove themselves from a virtual group.

  • Manage the role of any other contact in the virtual group.

    Virtual group administrators cannot manage their own roles.

A virtual group administrator also has all the capabilities of a virtual group user.

8.1.4. Virtual Group User

A virtual group user has no visibility within an organization and can view and access items only in a virtual group. A virtual group user is a contact that has been added to the virtual group as a base user.

A virtual group can have no virtual group users, only one virtual group user, or multiple virtual group users.

A virtual group user can see the following items for the virtual group on the NVIDIA Licensing Portal:

  • All other contacts in the virtual group
  • All entitlements assigned to the virtual group
  • All license servers provisioned from entitlements assigned to the virtual group

A virtual group user can mange entitlements within a virtual group as follows:

  • Create a license server.
  • Delete a license server.
  • Add licensed products to a license server.
  • Remove licensed products from a license server.
  • Download a license file.
  • Download software.

A virtual group user cannot manage other contacts.

8.2. Roles Required for Managing Contacts on the NVIDIA Licensing Portal

The role that these tasks require depends on whether they are being performed for an organization or a virtual group.

8.3. Adding a Contact on the NVIDIA Licensing Portal

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which you want to add a contact.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click USER MANAGEMENT.
  3. In the USER MANAGEMENT page that opens, click INVITE USER.
  4. In the Invite User pop-up window that opens, provide the e-mail address and the name of the contact, select the contact's role, and click SEND INVITATION.

    The role to select depends on whether you are adding the contact to an organization or a virtual group.

  • If you added a contact who is already registered to a virtual group, the contact will be able the select the virtual group after next logging in.
  • If the contact is a new contact, an e-mail is sent to the contact at the e-mail address that you provided.
    Note: The link to the NVIDIA Enterprise Support Portal in this e-mail provides information about how to contact NVIDIA Enterprise Support.
If the contact that you added is a new contact, tell the contact to follow the directions in the e-mail to create an NVIDIA Enterprise Account.

8.4. Removing a Contact on the NVIDIA Licensing Portal

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group from which you want to remove a contact.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click USER MANAGEMENT.
  3. In the list of contacts in the User Management page that opens, from the Actions menu, choose Delete.
    Note: You cannot remove the only virtual group administrator from a virtual group. The Remove link for that contact is inactive and dimmed.
  4. When prompted, confirm that you want to remove the contact.
The contact is removed from the list of contacts on the USER MANAGEMENT page.
  • A contact that is removed from an organization is removed from the list of registered contacts for the organization.
  • A contact that was a member of multiple virtual groups when removed from a virtual group remains a member of the other virtual groups.
  • A contact that was a member of only the virtual group from which you removed the contact is returned to the organization with the organization user role.

8.5. Changing the Role of a Contact on the NVIDIA Licensing Portal

You can change the role of a contact on the NVIDIA Licensing Portal within the scope of the contact's current role. For example, you can change the role from organization user to organization administrator or from virtual group administrator to virtual group user. However, you cannot change the scope of the contact's current role, for example, from organization administrator to virtual group user.

  1. In the NVIDIA Licensing Portal, navigate to the organization or virtual group to which the contact belongs.
    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 Licensing Portal.
    2. Optional: If your assigned roles give you access to multiple virtual groups, click View settings at the top right of the page and in the My Info window that opens, select the virtual group from the Virtual Group drop-down list, and close the My Info window.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click USER MANAGEMENT.
  3. In the list of contacts in the User Management page that opens, from the Actions menu, select the new role and choose Change role. You are shown the contact's current role and the role to which you can change it.
  4. In the User Role window, click the button to change the contact's role.

8.6. Requesting Access to the NVIDIA Enterprise Support Portal

If you created your NVIDIA Enterprise Account when your entitlement contained only evaluation licenses, you do not have access to the NVIDIA Enterprise Support Portal. If you now have an entitlement that contains purchased licenses, you can request access to the NVIDIA Enterprise Support Portal.

Ensure that you have an entitlement that contains purchased licenses. You cannot request access to the NVIDIA Enterprise Support Portal if your entitlements contain only evaluation licenses.
  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 Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click USER MANAGEMENT.
  3. On the User Management page that opens, click REQUEST ENTERPRISE SUPPORT PORTAL ACCESS.

9. Managing Virtual Groups

Virtual groups provide the means for segmenting your organization's entitlements into partitions. The virtual groups in an organization are isolated from each other and from the organization. An entitlement cannot be partitioned and cannot be shared between partitions. All licensed products in an entitlement are moved with the entitlement when the entitlement is added to a virtual group or returned to the organization.

You are free to determine how many virtual groups among which to partition your entitlements and what those virtual groups represent. For example, you might create virtual groups to partition your entitlements by location, division, product, or some combination of factors. Irrespective of how you choose to partition your entitlements among virtual groups, every virtual group isolates the entitlements assigned to it from other virtual groups.

The following diagram shows the relationship between an organization, the virtual groups in an organization, and the components of a virtual group.



Diagram showing the relationship between an organization, the virtual groups in an organization, and the components of a virtual group: virtual group entitlements, virtual group contacts, and license files.

9.2. Creating a Virtual Group

Ensure that the following prerequisites are met:

  • Your organization contains at least one registered contact to whom you can assign the virtual group administrator role.
  • No licensed products in any of the entitlements that you want to add to the group have been added to a license server.
  1. If you are not already logged in, log in to the NVIDIA Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click VIRTUAL GROUPS.
  3. In the Virtual Groups page that opens, click CREATE VIRTUAL GROUP.

    The Create Virtual Group wizard is started.

  4. In the Virtual Group Name field, enter your choice of name for the group.
  5. In the Description field, enter a short text description of the group. This description will be displayed for the group in the list of virtual groups on the Virtual Groups page.
  6. On the Select entitlements page of the wizard, select the entitlements that you want to add to the virtual group and click Next: Select users. For each entitlement that you want to add, select the entitlement from the Entitlements drop-down list and click ADD. You must add at least one entitlement. You cannot create a virtual group with no entitlements. Each entitlement that you select is added to the Added Entitlements list.
  7. On the Select users page of the wizard, add the users that you want to be members of the virtual group. Add each user as follows:
    1. In the list of users, select the user.
    2. Click the button to add the user with the role that you want for the user.
    3. Click Next: Preview group creation.
      Note: Any user with the Organization Administrator role loses that role and gains the role that you assign when added to the virtual group.

    You must add at least one virtual group administrator to the group. You cannot create a virtual group with no administrators.

    Tip: To prevent the absence of a single user from denying you access to the virtual group, consider adding at least two virtual group administrators to the virtual group.
  8. On the Preview server creation page, click CREATE VIRTUAL GROUP.

After you create a virtual group, you can perform only the following operations on the virtual group:

  • Deleting the virtual group
  • Assigning an entitlement at the organization level to the virtual group
  • Removing an entitlement from the virtual group and returning it to the organization

Other operations on the virtual group require the virtual group administrator or virtual group user role.

9.3. Deleting a Virtual Group

Delete a virtual group if it is no longer needed. When the group is deleted, all entitlements assigned to the group and any contacts who are members only of this group are returned to the organization. Contacts who are returned to the organization are assigned the organization user role.

  1. If you are not already logged in, log in to the NVIDIA Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click VIRTUAL GROUPS.
  3. In the list of virtual groups on the Virtual Groups page, from the Actions menu for the virtual group that you want to delete, choose Delete.
  4. When asked to confirm that you want to delete the virtual group, click DELETE VIRTUAL GROUP.

9.4. Adding a Contact to a Virtual Group

If you have the Organization Administrator role, you can add a contact to a virtual group in your organization without the need to be a member of the group.

The contact that you add must not have the Organization Administrator role.

  1. If you are not already logged in, log in to the NVIDIA Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click VIRTUAL GROUPS.
  3. In the list of virtual groups on the Virtual Groups page, from the Actions menu for the virtual group to which you want to add the contact, choose Invite User.
  4. In the Invite User pop-up window that opens, provide the e-mail address and the name of the contact, select the contact's role, and click SEND INVITATION. Select one of the following roles:
    Virtual Group Admin
    Assigns the contact the Virtual Group Administrator role.
    Virtual Group User
    Assigns the contact the Virtual Group User role.
An e-mail is sent to the contact at the e-mail address that you provided.
  • If the contact is not already be registered on the NVIDIA Licensing Portal, the e-mail provides directions for creating an NVIDIA Enterprise Account.
  • Otherwise, the e-mail provides details about the contact's role change.
If the contact is not already be registered on the NVIDIA Licensing Portal, tell the contact to follow the directions in the e-mail to create an NVIDIA Enterprise Account.

9.5. Removing a Contact from a Virtual Group

If you have the Organization Administrator role, you can remove a contact from a virtual group in your organization without the need to be a member of the group. The contact that you remove is returned to the organization and assigned the Organization User role.

  1. If you are not already logged in, log in to the NVIDIA Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click VIRTUAL GROUPS.
  3. In the list of virtual groups on the Virtual Groups page, from the Actions menu for the virtual group to which the contact belongs, choose Remove User.
  4. In the Remove User dialog box that opens, select the contact that you want to remove.
  5. When asked to confirm that you want to remove the contact from virtual group, click REMOVE USER.

9.6. Managing Entitlements in a Virtual Group

Remove an entitlement from a virtual group to return it to the organization either to make it available to users at the organization level or to transfer it to a different virtual group.

Ensure that the following prerequisites are met:

  • The entitlements that you want to add belong to the organization and not to a virtual group.
  • No licensed products in any of the entitlements that you want to add to the group have been added to a license server.

Ensure that no licensed products in the entitlement that you want to remove have been added to a license server.

  1. If you are not already logged in, log in to the NVIDIA Licensing Portal.
  2. In the left navigation pane of the NVIDIA Licensing Portal dashboard, click VIRTUAL GROUPS.
  3. From the Actions menu for the virtual group, choose Manage Entitlements.
  4. In the Manage Entitlements pop-up window that opens, select the entitlements that you want to add to the virtual group.
    Note: You cannot move an entitlement if any of its licensed products has been added to a license server. If any licensed products in an entitlement have been added to a license server, the entitlement is not listed on the Add Entitlements tab.
  5. Conversely, in the list of entitlements, follow the Remove link for the entitlement.
    Note: You cannot remove an entitlement if any of its licensed products has been added to a license server or if it is the only entitlement in a group. The Remove link for the entitlement is inactive and dimmed.
  6. When asked to confirm that you want to remove the entitlement, click REMOVE ENTITLEMENT. The entitlement is removed from the list of entitlements in the virtual group and added to the list of entitlements in the organization.
  7. After adding or returning all the entitlements that you are interested in, click UPDATE VIRTUAL GROUP. The entitlement is removed from the list of entitlements in the organization and added to the list of entitlements in the virtual group.

9.7. Sample Business Scenario for Virtual Groups

A common business scenario for virtual groups is a multinational corporation with subsidiaries in which licenses are managed centrally.

Organization Administrators

The organization administrators are responsible for setting up virtual groups and managing entitlements for the entire organization. The individuals chosen to be organization administrators must understand the organization structure and purchasing process, so that they are capable of routing newly purchased entitlements appropriately.

To ensure that someone is always available to move newly purchased entitlements into the correct virtual group, consider designating at least three organization administrators.

Virtual Groups

To simplify the allocation entitlements to the entity for which they were purchased, consider creating a virtual group for every subsidiary or geographic region, as appropriate.



Diagram showing virtual groups for a multinational corporation and subsidiaries with central licensing management

Virtual Group Contacts

To ensure redundancy at every level in your organization, designate at least two virtual group administrators for each virtual group.

After a virtual group is created, its virtual group administrators are free to add contacts who are not organization administrator as required.

A. Migrating Licenses from a Legacy NVIDIA vGPU Software License Server

Follow this work flow to minimize the disruption of service when migrating licenses from a legacy NVIDIA vGPU software license server.

This work flow consists of several separate phases. Work through the phases in the order in which they are presented.

A.1. Tasks for Preparing to Migrate Licenses

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Return all the licenses that you are migrating back to their entitlements.
Note: You can wait until you have migrated your licenses and tested them on NVIDIA License System before removing the license file from your legacy license server. You are not required to remove the license file from your legacy license server before returning all your licenses back to the entitlement.
Removing Licensed Products from a License Server in Virtual GPU Software License Server User Guide
Download an empty license file for your existing legacy NVIDIA vGPU software license server.

Don't install the empty license file until you're ready to decommission your existing legacy NVIDIA vGPU software license server.

Downloading a License File in Virtual GPU Software License Server User Guide
Decide which type of service instances to deploy. About Service Instances

A.2. DLS Instances Only: Tasks for Installing and Configuring the DLS Virtual Appliance

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Install the DLS virtual appliance. Installing the DLS Virtual Appliance Image on a Supported Hypervisor
If not set automatically: Set the IP address of a DLS virtual appliance. Setting the IP Address of a DLS Virtual Appliance from the Hypervisor
Register the DLS administrator user. Registering the DLS Administrator User
Configure an HA cluster of DLS instances.
Note: Manual configuration of a standalone DLS instance is not required. By default, a DLS instance is initially created as a standalone instance.
Configuring an HA Cluster of DLS Instances

A.3. Tasks for Configuring Service Instances

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Create a license server on the NVIDIA Licensing Portal. Creating a License Server on the NVIDIA Licensing Portal
Create a CLS instance or register a DLS instance.

This task is only required if you are not using the default CLS instance.

Bind a license server to a service instance.

This task is only required if you are not using the default CLS instance.

Binding a License Server to a Service Instance

Install a license server on a CLS or DLS instance.

This task is only required if you are not using the default CLS instance.

A.4. Tasks for Managing Licenses on a License Server

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Optional: Create license pools for the licenses on a license server. Creating a License Pool
Optional: Create fulfillment conditions for your license pools. Creating a Fulfillment Condition
Generate a client configuration token. Generating a Client Configuration Token

A.5. Tasks for Configuring a Licensed Client

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Configure a licensed client. Configuring a Licensed Client

A.6. Tasks for Decommissioning a Legacy NVIDIA vGPU software License Server

Perform the tasks in the order in which they are listed.

Task Cross-Reference
Install the empty license file for your existing legacy NVIDIA vGPU software license server. Installing a License in Virtual GPU Software License Server User Guide
Delete your existing legacy NVIDIA vGPU software license server. Deleting a License Server in Virtual GPU Software License Server User Guide
Remove the legacy NVIDIA vGPU software license server from your Windows or Linux platforms. The following topics in Virtual GPU Software License Server User Guide:

B. Performance Data for a CLS Instance

Use the measured performance numbers to determine whether the CLS meets your requirements based on the number and frequency of requests from licensed clients. Hosting a CLS instance on a cloud service provides robustness and dynamic scalability for the CLS instance. The cloud service dynamically scales CLS instances to maintain the measured performance numbers.
Note: For the corresponding data for a DLS virtual appliance, refer to Sizing Guidelines for a DLS Appliance.

B.1. Throughput for a CLS Virtual Appliance

Throughput measures the number of clients that a CLS instance can process in 1 second.

A CLS instance can process up to 40 clients in 1 second.

The average response time is 410 ms.

B.2. Scalability for a CLS Instance

Scalability measures the maximum number of licensed clients that a CLS instance can serve in a specific interval. A CLS instance serves a licensed client by performing a licensing operation for the client, namely the borrowing, return, or renewal of a license. Registration of a licensed client is not considered a licensing operation because it occurs only once for any client.

These measurements capture the maximum number of licensed clients that a CLS instance can serve when 40 clients connect concurrently to the CLS instance. The maximum number of licensed clients is measured for different lengths of time up to 24 hours for which a license is borrowed.

Note:
  • Intervals in the table are the renewal intervals when a client contacts the DLS appliance to request a licensing operation.
  • The renewal interval is set to 15% of the length of time for which a license is borrowed.
Length of Time License Is Borrowed Interval Maximum Number of Licensed Clients
10 minutes 1.5 minutes 3,500
1 hour 9 minutes 21,000
12 hours 1.8 hours 259,000
24 hours 3.6 hours 518,000

B.3. Burst Load Performance for a CLS Instance

Burst load performance measures the time that a CLS instance requires to process the requests received from a large number of clients in a short interval of time. Burst load performance does not measure concurrency or throughput.

Note: Burst processing times are illustrative only because they are for retry logic in performance tests that use simulated client drivers. Times may differ with real client drivers.
Number of Clients Interval Processing Time
100 0-1 second 10 seconds
1,000 0-2 seconds 1 minute
5,000 100 seconds (1 minute and 40 seconds ) 5 minutes
10,000 200 seconds (3 minutes and 20 seconds) 10 minutes

The NVIDIA Licensing Portal limits the maximum number of concurrent requests to 100.

Notices

Notice

This document is provided for information purposes only and shall not be regarded as a warranty of a certain functionality, condition, or quality of a product. NVIDIA Corporation (“NVIDIA”) makes no representations or warranties, expressed or implied, as to the accuracy or completeness of the information contained in this document and assumes no responsibility for any errors contained herein. NVIDIA shall have no liability for the consequences or use of such information or for any infringement of patents or other rights of third parties that may result from its use. This document is not a commitment to develop, release, or deliver any Material (defined below), code, or functionality.

NVIDIA reserves the right to make corrections, modifications, enhancements, improvements, and any other changes to this document, at any time without notice.

Customer should obtain the latest relevant information before placing orders and should verify that such information is current and complete.

NVIDIA products are sold subject to the NVIDIA standard terms and conditions of sale supplied at the time of order acknowledgement, unless otherwise agreed in an individual sales agreement signed by authorized representatives of NVIDIA and customer (“Terms of Sale”). NVIDIA hereby expressly objects to applying any customer general terms and conditions with regards to the purchase of the NVIDIA product referenced in this document. No contractual obligations are formed either directly or indirectly by this document.

NVIDIA products are not designed, authorized, or warranted to be suitable for use in medical, military, aircraft, space, or life support equipment, nor in applications where failure or malfunction of the NVIDIA product can reasonably be expected to result in personal injury, death, or property or environmental damage. NVIDIA accepts no liability for inclusion and/or use of NVIDIA products in such equipment or applications and therefore such inclusion and/or use is at customer’s own risk.

NVIDIA makes no representation or warranty that products based on this document will be suitable for any specified use. Testing of all parameters of each product is not necessarily performed by NVIDIA. It is customer’s sole responsibility to evaluate and determine the applicability of any information contained in this document, ensure the product is suitable and fit for the application planned by customer, and perform the necessary testing for the application in order to avoid a default of the application or the product. Weaknesses in customer’s product designs may affect the quality and reliability of the NVIDIA product and may result in additional or different conditions and/or requirements beyond those contained in this document. NVIDIA accepts no liability related to any default, damage, costs, or problem which may be based on or attributable to: (i) the use of the NVIDIA product in any manner that is contrary to this document or (ii) customer product designs.

No license, either expressed or implied, is granted under any NVIDIA patent right, copyright, or other NVIDIA intellectual property right under this document. Information published by NVIDIA regarding third-party products or services does not constitute a license from NVIDIA to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property rights of the third party, or a license from NVIDIA under the patents or other intellectual property rights of NVIDIA.

Reproduction of information in this document is permissible only if approved in advance by NVIDIA in writing, reproduced without alteration and in full compliance with all applicable export laws and regulations, and accompanied by all associated conditions, limitations, and notices.

THIS DOCUMENT AND 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. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL NVIDIA BE LIABLE FOR ANY DAMAGES, INCLUDING WITHOUT LIMITATION ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, PUNITIVE, OR CONSEQUENTIAL DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF ANY USE OF THIS DOCUMENT, EVEN IF NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Notwithstanding any damages that customer might incur for any reason whatsoever, NVIDIA’s aggregate and cumulative liability towards customer for the products described herein shall be limited in accordance with the Terms of Sale for the product.

VESA DisplayPort

DisplayPort and DisplayPort Compliance Logo, DisplayPort Compliance Logo for Dual-mode Sources, and DisplayPort Compliance Logo for Active Cables are trademarks owned by the Video Electronics Standards Association in the United States and other countries.

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 Maxwell, NVIDIA Pascal, NVIDIA Turing, NVIDIA Volta, 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.