For high availability, Horizon Recording can be installed on multiple servers and configured with a load balancer.

Here are the high-level steps to follow to use Horizon Recording with a load balancer. Details for each are provided in this topic.
  1. Create a shared folder on a file server with appropriate permissions which is accessible from all the recording servers to be installed.
  2. Install the Horizon Recording on multiple servers (preferably in the same data center). See "Install the Horizon Recording Server" in the Using VMware Horizon Recording for Linux topic for details.
  3. Edit the deployment on all the recording servers to point to the same database and same shared folder. The database will store the recording metadata and the shared folder will store the actual recording files.
  4. Configure L4 load balancing for Horizon Recording servers on port 9443.
  5. Install the Horizon Recording agent on the parent desktop by pointing to the load balancer's IP/FQDN while registering with the Horizon Recording server.

Edit the Deployment on the Recording Servers

For each recording server:
  1. Navigate to Administrator -> Service Settings -> Server Settings -> Edit Deployment.
  2. Read the message that displays and click Next.
  3. If this is the first server you are editing, select Configure Manually and click Next. If this is not the first server to edit, skip to Step 4.
    1. Select the required Database and copy the appropriate Connection String from the examples section and paste it into the Connection String box.
    2. Modify the user id, password, server, database, and Trusted_Connection with appropriate information and click Next.
    3. In the storage location page, provide the shared folder which is accessible from all the recording servers. Click Test Path to verify if it is accessible, then click Next.
    4. Click Save Configuration. If everything is fine the web service restarts and you are logged out.
    5. Log in and verify that the configuration was saved properly.
  4. For subsequent servers, select Import configuration from an existing server.
    1. Enter the URL, user name, and password of the existing server and click Import. A message “Service settings imported successfully, please validate them on the following pages” displays if the credentials are valid.
    2. Click Next and validate the configuration details in the “Database Type” page. They should match the configuration details in the existing server.
    3. Click Next and validate the configuration details in the “Storage Location” page. They should match the configuration details in the existing server. You can test the path here as well.
    4. Review the changes and click Save Configuration. If everything is fine, the web service restarts, and you are logged out.
    5. Log in and verify that the configuration is saved properly.

Configure the L4 Load Balancer

The following are high level steps to configure a load balancer for recording servers. Note that the steps will change depending on which load balancer is used.
  1. Create a virtual service with service port 9443 with SSL enabled. Then assign a virtual IP to the virtual service.
  2. Create a pool of recording servers with port 9443.
  3. Once the load balancer configuration is saved, access the web console using https://<FQDN_or_IP_address_of_the_load_balancer>:9443. If the load balancer configuration is correct, the UI will be accessible.

Install Horizon Recording Agent on the Parent Desktop

  1. Run the Horizon Recording Agent installer, as described in Run the Tarball Installer for Horizon Recording Agent or Run the RPM Installer for Horizon Recording Agent. Follow the instructions as documented, but modify the installation command as follows:
    • Tarball installer:
      sudo ./install.sh -u https://<FQDN or IP address of the load balancer>:9443 -n <username> -p <password> -t
    • RPM installer:
      sudo /usr/lib/vmware/horizonrecording/rpminstall.sh -u https://<FQDN or IP address of the load balancer>:9443 -n <username> -p <password> -t
  2. When prompted for the connection, provide the correct URL of the load balancer in the format https://<FQDN or IP address of the load balancer>:9443 along with the User Name and Password.
    1. Select the This machine is a template check box if the machine is a parent VM and a pool will be created from it.
    2. Click Register.
    3. If the certificate of the server is untrusted, accept the thumbprint of the server when prompted.
  3. When recording agent installation is finished, log in to the recording server’s web console using the load balancer IP and navigate to Administrator -> Manage Agents. The agent should be listed there with Type listed as Template.
    Note: This can also be verified by logging into each recording server to make sure that the data is synced across all of the recording servers.