Late last week I decided to stand-up the new CITRIX licensing service on a infrastructure cluster. Normally we host our licensing server on a Virtual Machine but we are in the middle of a domain consolidation and going forward we want to reduce the number of servers we managed.
I was reading the CITRIX online documentation and discovered that it supported MSFT clustering, so talked it over with my tech lead and took the dive.
Nothing is ever easy though, and after a couple of tries I finally figured out the magic formula to get it to work they way I wanted. Unfortunately my Google searches did not turn up what I needed so my post here is to fill that void.
Note: This is a fresh install, and I also issued a new SA license for my XenAPP Farm in the process.
Licensing Server Notes
1. The CITRIX documentation is very good. The CLI examples and process is correct.
2. In my environment we follow a best practice to limit the Default resource group to having the core Cluster Services, Cluster Name, Distributed Transaction Service, and Quorum Drive. The installer places the CITRIX Licensing Service and support Services in the Default Resource Group.
3. I recommend that you have the default cluster resource group and target resource group that you want the service to run in be on the same cluster node for each node install. Make sure to install the software on the a drive mapped to the target resource group and not the Q drive or default resource group.
4. One you have installed the software on both nodes and verified it is working you then need to move the services to the target resource group. You can move individual services in a resource group. (I discovered this today) The services are installed with a dependency set for the Cluster Name for the default resource group. In order to move the services you need to remove this dependency from all the two CITRIX Licensing Services and the WMI service.
5. Once you locate the services to the target resource group, you need to set the dependencies again. I normally give each additional resource group a network name (host name) when I setup new resource groups. The default resource group has a service called Cluster Name. In my environment the target cluster resource group had a network name service (Not a Cluster Name Service). This is different then cluster name, so I set that as the dependency on each service. Restarted the licensing service and checked the status and made sure the Cluster Name was reporting correctly.
6. When I imported the CITRIX licensing file, the top portion of the report said it was successful, but the bottom part issued a warning about inconsistent names. CITRIX support said they are aware of the issue and it will be addressed in the next version. My licensees didn’t show up initially. Restarting the web server fixed that issue.
Generating a License file from MyCITRIX.com
Generating a new CITRIX license via their website isn’t as intuitive as you would think.
Since i am a SA customer, CITRIX recommended that I create a new account on MyCITRIX.com by looking up the SA Org Code using the forgotten password link. Choose the more options after selecting forgot my password to get the option for entering in the org code from your SA agreement.
When you generate your license, you need to enter in your SA License code. When I entered my code and it listed 3 additional licenses that were part of the code. In order to specify the licensing server and generate the XenAPP Licensing file, select the XenAPP license check box then select the top option to filter. This will filter all the licenses to show he XenAPP Licenses with the option to specify a number, and License server NetBIOS Name. Make sure to specify the network name for the resource group you want to run the licensing server on in CAPITAL Letters.
This KB article explains the process.
This concludes my tips for Clustering the CITRIX Licensing Server. If you come across this doing a Google search, I hope you find it useful.