automation-suite
2022.10
false
UiPath logo, featuring letters U and I in white
Automation Suite Installation Guide
Last updated Nov 21, 2024

Manual: Offline upgrade

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 always 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.
  2. Connect to a node using SSH.
  3. Become root user:
    sudo su -sudo su -
  4. Create an installation folder under the /opt/UiPathAutomationSuite directory:
    # Please replace {version} with installer version
    mkdir -p /opt/UiPathAutomationSuite/{version}/installer# Please replace {version} with installer version
    mkdir -p /opt/UiPathAutomationSuite/{version}/installer
  5. 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}/installercp /path/to/sf-installer.zip /opt/UiPathAutomationSuite/{version}/installer
  6. 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}cp /path/to/sf-infra.tar.gz /opt/UiPathAutomationSuite/{version}
  7. (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}cp /path/to/sf.tar.gz /uipath/{version}
  8. Unzip sf-installer.zip:
    cd /opt/UiPathAutomationSuite/{version}/installer
    unzip sf-installer.zip -d .cd /opt/UiPathAutomationSuite/{version}/installer
    unzip sf-installer.zip -d .
  9. Provide the necessary permissions to the installer:
    chmod 755 -R /opt/UiPathAutomationSuite/{version}/installerchmod 755 -R /opt/UiPathAutomationSuite/{version}/installer
  10. 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.jsoncd /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.jsoncd /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
        }"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%40dvoYddYBoKn045ncoC9WhWU@sfmfup20211043125452-8926d153-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server""sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://[email protected]:sgTQrg%40R%40dvoYddYBoKn045ncoC9WhWU@sfmfup20211043125452-8926d153-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"

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.
Important:
  • Make sure not to hydrate containerd and/or other infra images more that 10 hours before the upgrade.

  • If you upgrade Document Understanding and Computer Vision, you must download the base images that match your upgraded Automation Suite version (use the base image that corresponds with your ML Package version) and hydrate them to your docker registry prior to upgrade to avoid disruption to your running DU skills. To download the Document Understanding and Computer Vision installation packages, see Downloading the installation packages.

  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/tmpcd /opt/UiPathAutomationSuite/{version}/installer
    
    ./configureUiPathAS.sh registry upload --offline-bundle /uipath/{version}/sf.tar.gz --offline-tmp-folder /uipath/tmp
  2. Note:
    Make sure that zstd is installed. To install zstd, run the following command: dnf install zstd.
    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 ../../tmpcd /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/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-modecd /opt/UiPathAutomationSuite/{version}/installer
    ./configureUiPathAS.sh enable-maintenance-mode
  2. To verify that the cluster is in maintenance mode, run:
    ./configureUiPathAS.sh is-maintenance-enabled./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[[ $(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[[ $(systemctl is-enabled rke2-agent.service) != "enabled" ]] && systemctl enable rke2-agent.service
  4. 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# 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
    Important:

    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 the primary 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# 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.

After performing the upgrade, you can take the following additional steps:

  • To verify if Automation Suite is healthy, run:

    kubectl get applications -n argocdkubectl get applications -n argocd
  • If you experience issues with image vulnerabilities or storage consumption after performing an upgrade, delete the images from the old installer. For details, see the Troubleshooting section.

  • After upgrading to Automation Suite 2022.10.13 or newer, you can clean up the previous version images after the upgrade from the in-cluster Docker registry. For instructions, see How to delete images from the old installer after upgrade.

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, follow the instructions in described in the Backing up and restoring the cluster documentation.

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.