Product Documentation

Configure Session Recording with load balancing

May 22, 2017

In this release, Session Recording provides an experimental feature to support load balancing across the Session Recording Servers. To use this feature, configure load balancing on Citrix NetScaler so that the Session Recording Servers can achieve load balancing and automatic failover.

Changes to Session Recording in support of load balancing

  • All Session Recording Servers share the same folder to store recording files.
  • Install the entire Session Recording Administration components (including the Session Recording Database, Session Recording Server, and Session Recording Policy Console) on the same server, and install only the Session Recording Server component on all other servers. In this way, all Session Recording Servers use the same Session Recording Database and the same Session Recording Policy Console.

Configure load balancing

To implement this experimental feature, you must perform the following steps on Citrix NetScaler and on the various Session Recording components:

Configure load balancing (Citrix NetScaler part)

Configure load balancing servers

Add the Session Recording Servers to the load balancing servers in Citrix NetScaler. 

Configure load balancing services

  1. Add a load balancing service for each needed protocol on each load balancing server.
  2. (Recommended) Select the relevant protocol monitor to bind each service monitor.

Configure load balancing virtual servers

  1. Create virtual servers with the same NetScaler VIP address based on the needed protocols and bind the virtual servers to the relevant load balancing services.
  2. Configure persistence on each virtual server.
  3. (Recommended) Choose LEASTBANDWITH or LEASTPACKETS as the load balancing method rather than the default method (LEASTCONNECTION).

Configure load balancing (Session Recording part)

On each server where you installed the Session Recording Server or the entire Session Recording Administration components, do the following:

  1. If you choose the Administrator Logging feature, Citrix recommends that you enter the same Administrator Logging database name when you install each Session Recording Server.
  2. After sharing the Read/Write permission of the file storage folder with all Session Recording Server machine accounts, change to use the file storage folder as the shared folder in Session Recording Server Properties. For more information, see Specify where recordings are restored.
  3. Modify the Session Recording Server registry (HKEY_LOCAL_MACHINE\Software\Citrix\SmartAuditor\Server).
    • On each Session Recording Server, add a key for enabling load balancing:
      KeyName: EnableLB;
      KeyValue: 1 (D_WORD, meaning enable)
    • On each computer where only the Session Recoding Server component is installed, change the key value of DatabaseName to the name of the shared Session Recording Database.
  4. If you choose the HTTP or the HTTPS protocol for the Session Recording Storage Manager message queue, create a Host for the NetScaler VIP address, add redirection in C:\Windows\System32\msmq\Mapping\sample_map on each Session Recording Server, and restart the Message Queuing service.
    The redirection is similar to: 
                  <redirections xmlns="msmq-queue-redirections.xml">
                            <redirection>
                            <from>[Protocol]://[NSFQDN]:[Port]/msmq/private$/CitrixSmAudData</from>
                                      <to>[Protocol]://[FQDN]/msmq/private$/CitrixSmAudData</to>
                           </redirection>
                            <redirection>
                                      <from>[Protocol]://[NSFQDN]/msmq/private$/CitrixSmAudData</from>
                                      <to>[Protocol]://[FQDN]/msmq/private$/CitrixSmAudData</to>
                            </redirection>
                  </redirections>       

Where [Protocol] is the chosen protocol for the Session Recording Storage Manager message queue (HTTP or HTTPS), [NSFQDN] is the created FQDN of the NetScaler VIP address, [Port] is the chosen port number of the Session Recording Storage Manager message queue, and [FQDN] is the FQDN of the local host.

On the machine where you installed the Session Recording Agent, do the following in Session Recording Agent Properties:

  • If you choose the HTTP or the HTTPS protocol for the Session Recording Storage Manager message queue, enter the FQDN of the NetScaler VIP address in the Session Recording Server text box.
  • If you choose the default TCP protocol for the Session Recording Storage Manager message queue, enter the NetScaler VIP address in the Session Recording Server text box.

On the machine where you installed the Session Recording Player, do the following:

Add the NetScaler VIP address or its FQDN as the connected Session Recording Server.

On the SQL Server where you installed the Session Recording Database, do the following:

Add all the Session Recording Server machine accounts to the shared Session Recording Database and assign them with the db_owner permission.