Subscribe

UiPath Automation Suite

The UiPath Automation Suite Guide

Manual: Offline upgrade

This page explains how to manually upgrade Automation Suite in an offline environment.

Preparation


🚧

Important!

Make sure you have 10GiB of free space in the /opt/UiPathAutomationSuite folder on all the nodes. If you do not have enough space, you can either increase the capacity of this folder or remove all the previous installer files except for cluster_config.json. You can alway download the previous installer again.
To verify available space, run the following command: df -h /opt/UiPathAutomationSuite.

To prepare for the upgrade, take the following steps:

  1. Identify the server (not agent) node that has additional UiPath bundle disk attached at /uipath mount point. This node is referred to as primary server node throughout the document. In the case of a single-node evaluation profile, where you have only one server node, you must log into that node.

📘

Note:

Perform the following steps on all the nodes in the cluster. Start with the server nodes and continue with the agent nodes.

  1. Connect to a node using SSH.

  2. Become root user:

sudo su -
  1. Create an installation folder under the /opt/UiPathAutomationSuite directory:
# Please replace {version} with installer version
mkdir -p /opt/UiPathAutomationSuite/{version}/installer
  1. Download sf-installer.zip and copy it to /opt/UiPathAutomationSuite/{version}/installer. For download instructions, see sf-installer.zip.
cp /path/to/sf-installer.zip /opt/UiPathAutomationSuite/{version}/installer
  1. Download sf-infra.tar.gz and copy it to /opt/UiPathAutomationSuite/{version}. For download instructions, see sf-infra.tar.gz:
cp /path/to/sf-infra.tar.gz /opt/UiPathAutomationSuite/{version}
  1. (Only on the primary server node). Download sf.tar.gz and copy it to /uipath/{version}. For download instructions, see sf.tar.gz:
cp /path/to/sf.tar.gz /uipath/{version}
  1. Unzip sf-installer.zip:
cd /opt/UiPathAutomationSuite/{version}/installer
unzip sf-installer.zip -d .
  1. Provide the necessary permissions to the installer:
chmod 755 -R /opt/UiPathAutomationSuite/{version}/installer
  1. Generate the latest cluster_config.json on the first server node and copy it to the rest of the nodes. For details on how to configure the cluster_config.json parameters, see Advanced installation experience.
  • If you have the old cluster_config.json, generate the configuration file from the cluster by running:
cd /opt/UiPathAutomationSuite/{version}/installer

./configureUiPathAS.sh config get -i /path/to/old/cluster_config.json -o ./cluster_config.json
  • If you do not have the old cluster_config.json file, generate an override of any default values you may have done at installation time of previous version:
cd /opt/UiPathAutomationSuite/{version}/installer

./configureUiPathAS.sh config get -o ./cluster_config.json
  • If you are upgrading from a previous version of AI CenterTM standalone, and your 2022.10 version of AI Center needs to be connected to an external Orchestrator, copy the Orchestrator certificate to the virtual machine. After you copy the certificate, the following configuration details are needed in cluster_config.json:
"aicenter": {
    "enabled": true,
    "orchestrator_url": "https://orchestrator.example.com", //Specify the Orchestrator URL for AI Center
    "identity_server_url": "https://orchestrator.example.com/identity", //Specify the Identiy URL for AI Center
    "orchestrator_cert_file_path": "/opt/UiPathAutomationSuite/UiPath_Installer/orch.cer", //Specify the path to the Orchestrator certificate
    "identity_cert_file_path": "/opt/UiPathAutomationSuite/UiPath_Installer/orch.cer", //Specify the path to Identity certificate file
    "metering_api_key": "test" //Specify the metering API key
  }

Note: If AI Center requires an external Orchestrator, add sql_connection_string_template and sql_connection_string_template_odbc in the cluster_config.json file.

  • If you are upgrading Automation Suite from a previous version and now enable Process Mining as well, you must update the sql_connection_string_template_sqlalchemy_pyodbc. Below is an example.
"sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://[email protected]:sgTQrg%40R%[email protected]base.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"

See also Manual: Advanced installation experience.

 

Execution


🚧

Important!

If any errors or issues occur during or following the upgrade, you can rollback to the previous version, provided that you previously configured a backup. For instructions, see Rollback on error.

 

Hydrating docker-registry and containerd

To minimize the required downtime, hydrate docker-registry and containerd with container images for the new version of products before the upgrade by taking the following steps:

  1. To hydrate docker-registry, run the following command on the first server node:
cd /opt/UiPathAutomationSuite/{version}/installer

./configureUiPathAS.sh registry upload --offline-bundle /uipath/{version}/sf.tar.gz --offline-tmp-folder /uipath/tmp
  1. To hydrate containerd, run the following command on all nodes:
cd /opt/UiPathAutomationSuite/{version}/installer

./configureUiPathAS.sh containerd --offline-bundle ../sf-infra.tar.gz --offline-tmp-folder ../../tmp

 

Configuring the backup

To configure the backup, take the following steps:

  1. Make sure you have enabled the backup on the cluster. You must create the backup using the same version of the installer as the one you used for the current deployment. For instructions, see the backup and restore documentation corresponding to the Automation Suite version from which you plan to upgrade. For instance, if you plan to upgrade from Automation Suite 2021.10, follow the instructions in the 2021.10 guide.

  2. Connect to one of the server nodes via SSH.

  3. Verify that all desired volumes have backups in the cluster by running:

/path/to/old-installer/configureUiPathAS.sh verify-volumes-backup

📘

Note:

The backup might take some time, so wait for approximately 15-20 minutes, and then verify the volumes backup again.

Once the backup is created, continue with the following steps.

 

Putting the cluster in maintenance mode

Putting the cluster in maintenance mode will shut down the ingress controller and all the UiPath services, blocking all the incoming traffic to the Automation Suite cluster.

🚧

Important!

This operation will cause downtime, and your business automation will be suspended during the entire upgrade process.

  1. To put the cluster in maintenance mode, run:
cd /opt/UiPathAutomationSuite/{version}/installer
./configureUiPathAS.sh enable-maintenance-mode
  1. To verify that the cluster is in maintenance mode, run:
./configureUiPathAS.sh is-maintenance-enabled

🚧

Important!

Create a backup of your SQL Server after enabling maintenance mode so that no further transactions are recorded in your SQL database.

 

Updating Kubernetes and other infrastructure components

🚧

Important!

You must perform the infrastructure upgrade on all the nodes in the cluster.
You cannot perform this step on multiple nodes at the same time; you must wait for the upgrade to finish on each node before moving to another.

  1. Log into each node where you want to perform the infrastructure upgrade.

  2. Become root by running sudo su -.

  3. Make sure rke service is enabled on server and agent nodes.
    If the service is disabled, enable it by running the following command:

  • For server nodes:
[[ $(systemctl is-enabled rke2-server.service) != "enabled" ]] && systemctl enable rke2-server.service
  • For agent nodes:
[[ $(systemctl is-enabled rke2-agent.service) != "enabled" ]] && systemctl enable rke2-agent.service
  1. To start the upgrade, run the following command:

🚧

Important!

Make sure you have updated cluster_config.json generated as described in the Preparation steps.

# replace {version} with the version you are upgrading to
cd /opt/UiPathAutomationSuite/{version}/installer

./install-uipath.sh --upgrade -k -i ./cluster_config.json -o ./output.json --offline-bundle ../sf-infra.tar.gz --offline-tmp-folder /opt/UiPathAutomationSuite/tmp --install-offline-prereqs --accept-license-agreement

❗️

Warning!

If you get the following error, follow the instructions in Downgrading Ceph from 16.2.6 to 15.2.9.

Ceph cluster is running on version: 16.2.6 with known bug(https://docs.ceph.com/en/quincy/releases/pacific/#v16-2-6-pacific). Please provide temporary backup directory (via environment variable 'TMP_CEPH_BACKUP_PATH') to downgrade ceph

 

Updating shared components and UiPath product services

This step upgrades the fabric and service components running with the cluster. You must follow this steps only on the primary server node.

  1. Connect to any server node.

  2. Become root by running sudo su -.

  3. Run the following command:

# replace {version} with the version you are upgrading to in both the commands
cd /opt/UiPathAutomationSuite/{version}/installer
./install-uipath.sh --upgrade -f -s -i ./cluster_config.json -o ./output.json --install-type offline --accept-license-agreement

🚧

Important!

Once the upgrade is done, maintenance mode will be disabled automatically.


After manually upgrading from Automation Suite 2021.10, you must also migrate to Cilium CNI. For instructions, see Migrating from Canal to Cilium CNI.

To verify if Automation Suite is healthy, run:

kubectl get applications -n argocd

 

Enabling the backup post-upgrade

🚧

Important!

Make sure Automation Suite is up and running and your automation continues as expected before proceeding with the next steps.

Before starting to upgrade the cluster, the upgrade script automatically creates a backup of the cluster and then temporarily disables it. You may want to enable the backup manually once the upgrade is done.

To enable the backup, run the following command from any server node:

# replace {version} with the version you are upgrading to
cd /opt/UiPathAutomationSuite/{version}/installer

./configureUiPathAS.sh resume-scheduled-backups

Updated 21 days ago


Manual: Offline upgrade


This page explains how to manually upgrade Automation Suite in an offline environment.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.