Those of you using Citrix XenDesktop and HDX 3D Pro with XenServer for vGPU may be aware that initially NVIDIA vGPU launched with XenApp and XenDesktop 7.1 back in 2013 and was announced with support for MCS (Machine Creation Services) as a mechanism for provision desktops.

Since then we have formally validated, tested and documented support for PVS too, you can find the official support matrix documented, here.

We’ve documented the process of using PVS comprehensively, I’m reprinting below to give you an idea of the information available but please if reading this blog at a later date do refer to the official documentation to ensure up to date information and that you are aware of enhancements (I can’t give details but I strongly suspect there will be some).

Generally for newer customers and those provisioning virtual VDI, MCS would often be the preferred choice. For those looking to provision physical machines, PVS is the recommended option. However for many users it is a matter of preference and existing skills in their company, so Citrix is firmly committed to enhancing both options.

Our test and support matrix as well as the documentation now covers how to use the Provisioning Services Streamed VM Setup Wizard or a manual process along with XenDesktop’s Machine Catalog Setup Wizard to provision vGPU enabled machines.

The detail … 

Provisioning vGPU Enabled XenDesktop Machines using Provisioning Services 7.1 and 7.6.

The XenDesktop Setup Wizard 7.1 and 7.6 lack the ability to provision vGPU enabled machines for XenDesktop.  This procedure describes how to use the Provisioning Services Streamed VM Setup Wizard or a manual process along with XenDesktop’s Machine Catalog Setup Wizard to provision vGPU enabled XenDesktop machines. 

Note:  In XenDesktop, a VM catalog has power management support while a physical machine catalog does not.

Requirements:

  1. NVIDIA GRID K1 or K2 cards
  2. A server capable of hosting XenServer and NIVIDIA GRID cards.  Refer to the vGPU Release Notes at www.citrix.com/go/vgpu for details of recommended hardware
  3. Citrix XenServer 6.2 or newer
  4. The NVIDIA GRID vGPU software package for Citrix XenServer, consisting of the GRID Virtual GPU

Manager for XenServer, and NVIDIA drivers for Windows 7 32-bit/64-bit.  This is available at

http://www.nvidia.com/vGPU.

  1. XenDesktop 7.1 – 7.6.  Although it is not required for this process, it is highly recommended to use the corresponding PVS release to XenDesktop release.  (PVS 7.1 for XenDesktop 7.1 or 7.5, PVS 7.6 for XenDesktop 7.6).  Please be aware that the Provisioning Services XenDesktop Setup Wizard will only work with the corresponding XenDesktop controller.
  2. For a detail guide on configuring vGPU for XenServer, please refer to at www.citrix.com/content/dam/citrix/en_us/documents/go/configuring-xenserver-to-use-nvidia-grid.pdf

Preparing Master VM

  1. Prepare a master VM with vGPU enabled.  For a detailed guide on this process, please refer to www.citrix.com/content/dam/citrix/en_us/documents/go/configuring-xenserver-to-use-nvidia-grid.pdf.
  2. Install nVidia drivers.
  3. Join OS to active directory.
  4. Install Provisioning Services target device software and image a vDisk.  Use imaging wizard for this task.

Preparing the Template VM

  1. Create a template VM with the same properties as the master VM.  Give it a hard drive used for write cache.  For write cache recommendations, please refer to Provisioning Services documentation.
  2. Create a device record in PVS database with the MAC address from the template VM in step 4 of the “Prepare Master VM” section.
  3. Assign vDisk created in step 4 of the “Prepare Master VM” section and set the device to boot from vDisk.
  4. PXE boot the VM.
  5. Format the write cache disk.
  6. Install XenDesktop VDA.  Be sure to point the VDA to the XenDesktop Server during installation.  Reboot when done.

Note:  This method suggests installing the VDA into a private mode vDisk method.  However, imaging the vDisk after installing the VDA and installing Provisioning Services target device software is also an acceptable method.  If this alternative method is used, a new template VM with a formatted write cache hard drive is still needed.

  1. Shutdown VM.
  2. Convert this VM to a template.

Creating XenDesktop Machine VMs

  1. Set vDisk created under step 4 of “Preparing Master VM” to standard image mode.  Choose the preferred cache type.  Please refer to Provisioning Services documentation for more information on cache type.
  2. Provision VMs.  Use either method below.
    1. Run the Provisioning Services Streamed VM Setup Wizard to provision VMs, or
    2. Manually create VMs, create target device record using their MAC addresses, assign the vDisk, and add the target device to AD. 

Creating a XenDesktop Machine Catalog – instructions are done based on XenDesktop 7.6.  For 7.1 and 7.5, there will be no choices for the VDA version in the Device Collection page.  Please consider advantages and requirements before making the choice between VM/blades or physical machine catalogs.  VM machine catalogs provides power XenDesktop management while physical machine catalog does not. 

  1. 1.       VM Machine Catalog This type of catalog has XenDesktop power management
    1. Requirement

i.      Host record pointing to the XenServer host or pool where the vGPU VMs existed is needed in XenDesktop.

ii.      Special check – The VMs names in XenServer, device record names in PVS collection, and active directory record must be the same.

Note: Provisioning Services Streamed VM Setup Wizard is highly recommended for this since it does all 3 tasks.

  1. Procedure using the XenDesktop’s Machine Catalog Setup Wizard

i.      In the operating system page, choose Windows Desktop OS.

ii.      Choose the option “Machines that are power managed (for example, virtual machines or blade PCs) for “This Machine Catalog will use” and Citrix Provisioning Services (PVS) option under “Deploy machines using:” under the Machine Management.

iii.      In User Experience, choose the option “Users will connect to a random desktop each time they log on.”

iv.      In Device collection, enter the IP of the PVS server, choose the domain where all the devices active directory records are stored, and the VDA version level before clicking connect.  In the PVS structure shown, select the PVS device collection where all the vGPU devices are located.  It is recommended that these device records are store in an exclusive device collection.

v.      Click Next.

vi.      Enter a machine catalog name and description and click Finish.

  1. 2.       Physical Machine Catalog – This type of catalog does not have XenDesktop power management
    1. Requirement

i.      Special checks – Devices name exist in PVS collection and active directory.  This similar to VM Machine catalog except the XenDesktop host record is not required and the check for VM record names is not used.

  1. Procedure using the XenDesktop’s Machine Catalog Setup Wizard

i.      In the operating system page, choose Windows Desktop OS.

ii.      Choose the option “Machines that are not power managed (for example, physical machines) for “This Machine Catalog will use” and Citrix Provisioning Services (PVS) option under “Deploy machines using:” under the Machine Management.  As indicated on this page, power management will not be provided by XenDesktop.

iii.      In User Experience, choose the option “Users will connect to a random desktop each time they log on.

iv.      In Device collection, enter the IP of the PVS server, choose the domain where all the devices active directory records are stored, and the VDA version level before clicking connect.  In the PVS structure shown, select the PVS device collection where all the vGPU devices are located.  It is recommended that these device records are store in an exclusive device collection.

v.      Click Next.

vi.      Enter a machine catalog name and description and click Finish.

Create a Delivery Group and Associate it with Machine Catalog in the Previous Step

  • Please refer to XenDesktop documentation for information on this procedure.