[Step 4 corrected 1/27/2011. Thank you, pdias]
This blog post introduces the Windows PowerShell cmdlets for configuring Remote Desktop licensing settings on a RemoteFX-enabled RD Virtualization Host server in Windows Server 2008 R2 SP1.
Until Windows Server 2008 R2, in a Virtual Desktop Infrastructure (VDI) deployment, the RD Virtualization Host server was not aware of licensing settings because only the RD Session Host server participated in licensing and performed license validations for the client session/connection requests. But the new licensing model for the Microsoft VDI solution (in Windows Server 2008 R2 SP1) requires that the Remote Desktop licensing mode and the list of Remote Desktop license servers be specified on all RD Session Host servers (configured in virtual machine redirection mode) as well as on all RD Virtualization Host servers (with RemoteFX enabled), because the RD Virtualization Host servers can also participate in VDI licensing.
Because there is no GUI interface for specifying licensing configuration on an RD Virtualization Host server, support has been provided in Windows PowerShell to enable this scenario. As a result, a VDI administrator who does not want the (RemoteFX-enabled) RD Virtualization Host server’s licensing settings to be centrally managed (from the RD Connection Broker server) can manually configure these settings on the RD Virtualization Host server(s) in the VDI deployment by using the following Windows PowerShell cmdlets:
1) In an elevated Windows PowerShell command prompt, execute the following command: import-module remotedesktopservices; cd RDS:RDVHConfigurationLicensingSettings
2) This node displays licensing settings configured on the RD Virtualization Host server.
· The LicensingName and LicensingType properties denote the licensing type for the RD Virtualization Host servers.
· The SpecifiedLicenseServers container contains the list of license servers to be used.
· The RegisteredLicenseServers container contains the list of Remote Desktop license servers that are registered with the current domain.
· The default value of LicensingType will be 1, LicensingName will be blank, and SpecifiedLicenseServers will be empty when accessing these for the first time.
3) Execute the command: set-item LicensingType <value>, where <value> can be 2 (Per Device mode) or 4 (Per User mode).
4) Execute the command: new-item -path .SpecifiedLicenseServers -name <value>, where <value> is the name of the Remote Desktop license server, for each of the Remote Desktop license servers that you want to specify on this computer.
These settings will be used by this RD Virtualization Host server to perform license validations for the virtual machine connection requests whenever applicable. These settings will be overwritten by the centralized licensing settings if the administrator enables ‘Central Licensing Management’ mode on the RD Connection Broker server that manages this RD Virtualization Host server.
If these licensing settings need to be modified later, in an elevated Windows PowerShell command prompt, execute the command: import-module remotedesktopservices; cd RDS:RDVHConfigurationLicensingSettings, and then update the Remote Desktop licensing mode or the list of Remote Desktop license servers as desired.