High Availability Add-on
latest
false
  • Overview
    • About High Availability Add-on
  • Requirements
  • Installation
    • Installing High Availability Add-on
    • Alerts and monitoring
    • Active/Active Disaster Recovery installation
  • Upgrade
Banner background image
High Availability Add-on Installation Guide
Last updated Apr 19, 2024

Installing High Availability Add-on

Installation overview

Note: We support backwards compatibility with Orchestrator but recommend updating to the latest HAA version.

There are two ways to install the High Availability Add-on (HAA) for your Orchestrator instance:

  • quick – by downloading and executing a provided script; used when you want to set up HAA inside a single datacenter.

    For details, see Quick installation.

  • advanced – by performing some complex operations, including cluster DNS configuration, and cluster creation and setup; used when you want to set up HAA inside multiple datacenters.

Before proceeding with your HAA installation, make sure that you meet the .

Note: HAA requires a separate license from Orchestrator. Active/Active Disaster Recovery deployment model requires two HAA licenses. Contact UiPath for details.

Prerequisites

The following prerequisites are identical to both the quick and advanced installation methods. Before starting the HAA installation, ensure that you:
  • are the root user or have access to sudo to the root user;
  • have user creation rights;
  • ensure that you have a valid SSL/TLS certificate. Refer to Redis documentation for instructions on how to update your certificates;
  • enabled firewall service.
    Note:

    Root permissions are required only for installation and upgrade; the HAA admin user does not need escalated permissions to administer the cluster services.

    On the following daemons run by the HAA admin user, capability bits have been set to allow the executable the minimal privileges required to operate:

    /opt/redislabs/bin/dmcproxy = cap_sys_resource+ep

    /opt/redislabs/bin/redis-server-4.0 = cap_sys_resource+ep

    /opt/redislabs/bin/redis-server-4.0-big = cap_sys_resource+ep

    /opt/redislabs/bin/redis-server-5.0 = cap_sys_resource+ep

    /opt/redislabs/bin/redis-server-5.0-big = cap_sys_resource+ep

    /opt/redislabs/bin/sentinel_service = cap_sys_resource+ep

    /opt/redislabs/sbin/pdns_server = cap_net_bind_service+ep

    /opt/redislabs/sbin/smaps = cap_sys_ptrace+ep

    These allow the HAA admin user to run these services with privilege without requiring the user to have the privileges assigned.

    1. Disable swap:
      sudo swapoff -asudo swapoff -a
    2. To persist this change through reboots, delete the swap partition in the etc/fstab file.
    3. Install the wget package. Make sure to use a download command supported by your Linux distribution. For example, if you use CentOS, run:
      yum install wgetyum install wget
    4. Repeat this process on all nodes where you plan to install HAA.

      Check if English is added to the list of languages.

      Depending on your language and character set (encoding), you may experience issues while running the installation script. It is recommended that you first check if English is added to the list of languages, as follows:
      1. View information about the currently installed locale by running either or the following commands:
        locale -alocalectllocale -alocalectl
        localectllocalectl
      2. Set English as the language and encoding for the current session, by running:
        $ export LANG="en_US.utf8"$ export LANG="en_US.utf8"

Quick installation

Important: Before proceeding with the quick installation of HAA, make sure all your nodes meet the prerequisites.

Installing the primary node

To install HAA on the primary node, take the following steps:

  1. SSH the primary node with root permissions.
  2. Create the directory where you want to download and extract HAA, for example:
    mkdir haamkdir haa
  3. Download the get-haa.sh installation script:
    wget https://download.uipath.com/haa/get-haa.shwget https://download.uipath.com/haa/get-haa.sh
    Note: See the section for more details.
  4. Make the get-haa.sh script executable:
    chmod a+x get-haa.shchmod a+x get-haa.sh
  5. Install the primary node. Make sure to provide an email address and password for the administrator account. You can use a temporary email address. You also need to specify the operating system running on the node.
    sudo ./get-haa.sh -u <email> -p <password> -o <OS> --accept-license-agreementsudo ./get-haa.sh -u <email> -p <password> -o <OS> --accept-license-agreement
Important:
To install HAA in a custom location, run the install-haa.sh script for advanced configuration (this does not create any cluster), keeping in mind that all locations must be different. For example:
sudo ./install-haa.sh --install-dir /opt/haa-uipath --config-dir /etc/opt/haa-uipath --var-dir /var/opt/haa-uipath.

Double-check the selected installation path. Moving an installation from one location to another post-installation is not supported.

Installing the secondary node

After installing the primary node, take the following steps on each secondary node:

  1. SSH the secondary node with root permissions.
  2. Create the directory where you plan to download and extract HAA, for example:
    mkdir haamkdir haa
  3. Change to the newly created directory:
    cd /<path-to>/haa/cd /<path-to>/haa/
  4. Download the get-haa.sh installation script:
    wget https://download.uipath.com/haa/get-haa.shwget https://download.uipath.com/haa/get-haa.sh
    Note: See the section for more details.
  5. Make the get-haa.sh script executable:
    chmod a+x get-haa.shchmod a+x get-haa.sh
  6. Install the secondary node:
    sudo ./get-haa.sh -u <email> -p <password> -o <OS> -j <IP_address_of_the_master_node> --accept-license-agreementsudo ./get-haa.sh -u <email> -p <password> -o <OS> -j <IP_address_of_the_master_node> --accept-license-agreement
    Important: Provide the email address, password, and IP address set when creating the primary node.

Script parameters

The following parameters are available when running the HAA installation script:

Parameter

Decription

-u

The username of the HAA cluster administrator.

For example -u documentation@uipath.com.

-p

The password for the administration user, set when installing the primary node.

For example -p SuperSecret_Password.

-j

The IP address of the primary node. When provided, a secondary (slave) node is installed.

For example -j 10.10.22.10.

--install-dir

Indicate the path to the HAA installation directory (only when running the install-haa.sh script for advanced installation).
Note: Double-check the selected installation path. Moving an installation from one location to another post-install is not supported.

--config-dir

Indicate the path to the HAA configuration directory (only when running the install-haa.sh script for advanced installation).

--var-dir

Indicate the path to the HAA variables directory (only when running the install-haa.sh script for advanced installation).

-h

Used to display the installation help guide.

-l

The license code for your HAA cluster. Please enter the license without the starting and trailing --- LICENSE START --- or --- LICENSE END --- and without any new line characters.

--accept-license-agreement

Accept the UiPath license agreement

--offline

For offline installation. It assumes the package is in the current folder, same as the installation script. The link for the package can be found in the get-haa.sh script.

Configuring UiPath.Orchestrator.dll.config

Important:

This step is required only if you use HAA for standalone Orchestrator.

You must configure standalone Orchestrator to use HAA and add all HAA nodes to the Orchestrator's configuration file using the LoadBalancer.UseRedis and LoadBalancer.Redis.ConnectionString parameters. For example:
<add key="LoadBalancer.UseRedis" value="true" />
<add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=SuperSecret_Password" /><add key="LoadBalancer.UseRedis" value="true" />
<add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=SuperSecret_Password" />

Configuring cluster_config.json

Important:

This step is required only if you use HAA for Automation Suite.

You must configure Automation Suite to use HAA by updating the fabric.redis section in the cluster_config.json file. For more details, see High Availability Add-on configuration.

Verifying the cluster installation

After you have installed all nodes of your HAA cluster, confirm the successful configuration as follows:

  1. Navigate your browser to the IP address of any HAA node on port 8443. For example: https://10.10.20.196:8443/. The HAA login page is displayed.


  2. Enter the username and password provided during the installation to login.
  3. Select the nodes tab and verify that all installed nodes appear here with a status of OK.


  4. Select the databases tab and confirm that the uipath-orchestrator database appears here with a status of OK.
  5. If deployed on more than one node, ensure that Replication is enabled in the database settings and that two nodes are showing a shard count of 1. This ensures that the database is replicated on two nodes.
    Note: By default this database is created on port 10000 with the password provided at installation.

Licensing HAA

To add or update your High Availability Add-on license, take the following steps:

  1. Using your browser, navigate to the IP address of any HAA node on port 8443. For example: https://10.10.20.196:8443/. The HAA login page is displayed.
  2. Enter the username and password provided during installation to log in.
  3. Select the settings > general tab.
  4. In the Cluster key field, enter your license key.
  5. Click Save.
Your HAA cluster is now ready, and you can proceed with the Orchestrator installation, as described .

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo White
Trust and Security
© 2005-2024 UiPath. All rights reserved.