- Overview
- Requirements
- Pre-installation
- Preparing the installation
- Installing and configuring the service mesh
- Downloading the installation packages
- Configuring the OCI-compliant registry
- Granting installation permissions
- Installing and configuring the GitOps tool
- Deploying Redis through OperatorHub
- Applying miscellaneous configurations
- Running uipathctl
- Installation
- Post-installation
- Migration and upgrade
- Upgrading Automation Suite
- Migrating standalone products to Automation Suite
- Step 1: Restoring the standalone product database
- Step 2: Updating the schema of the restored product database
- Step 3: Moving the Identity organization data from standalone to Automation Suite
- Step 4: Backing up the platform database in Automation Suite
- Step 5: Merging organizations in Automation Suite
- Step 6: Updating the migrated product connection strings
- Step 7: Migrating standalone Orchestrator
- Step 8: Migrating standalone Insights
- Step 9: Migrating standalone Test Manager
- Step 10: Deleting the default tenant
- Performing a single tenant migration
- Migrating between Automation Suite clusters
- Monitoring and alerting
- Cluster administration
- Product-specific configuration
- Orchestrator advanced configuration
- Configuring Orchestrator parameters
- Configuring appSettings
- Configuring the maximum request size
- Overriding cluster-level storage configuration
- Configuring NLog
- Saving robot logs to Elasticsearch
- Configuring credential stores
- Configuring encryption key per tenant
- Cleaning up the Orchestrator database
- Skipping host library creation
- Troubleshooting

Automation Suite on OpenShift installation guide
Granting installation permissions
- Installation permissions are relevant only if you cannot provide admin privileges to the Automation Suite installer. If you can provide the required admin privileges to the installer, you do not need to follow the instructions in this section.
- If you install multiple Automation Suite instances on the same cluster, you must grant permissions for the other namespaces where you install Automation Suite.
Automation Suite relies on specific permissions during installation. These permissions are assigned to the service account, which plays a pivotal role in installing the various Automation Suite components.
To configure all the permissions required for installation, take the following steps:
You must execute the commands referenced in this section from a Linux, Windows, or macOS machine that has access to the OpenShift Kubernetes API server.
Step 1: Creating a service account
To create a service account, take the following steps:
-
Create the
<uipath>namespace and project:oc get namespace <uipath> || oc new-project <uipath>oc get namespace <uipath> || oc new-project <uipath> -
Set the default namespace and project to
<uipath>:oc project <uipath>oc project <uipath>All subsequent
occommands will operate within the<uipath>namespace. -
Create a service account named
uipathadmin:oc create serviceaccount uipathadminoc create serviceaccount uipathadmin -
Use the existing
admincluster role to grant admin permissions to theuipathadminservice account in the<uipath>namespace:oc create rolebinding uipathadmin --clusterrole=admin --serviceaccount=<uipath>:uipathadminoc create rolebinding uipathadmin --clusterrole=admin --serviceaccount=<uipath>:uipathadmin
Step 2: Creating the required roles
The uipathadmin service account requires certain permissions during the Automation Suite installation. You provide the necessary permissions by creating roles. To create each role, save its configuration as a YAML file and run the following command, replacing the <file_name.yaml> placeholder with the actual name of the YAML file:
oc apply -f <file_name.yaml>
oc apply -f <file_name.yaml>
You can create the YAML file for each role by copying its corresponding configuration from the following table:
Figure 1. Automation Suite installation permissions
| Permissions | Purpose | Configuration |
|---|---|---|
| Query the namespace [read-only] | Required to check whether the namespaces, such as the <istio-system> namespace, are available or not. | |
| List nodes and CRDs [read-only] | The prerequisite check and diagnostic health check tool require this permission to perform the node validations, such as the capacity available on the node. | |
uipath roles [write] | Most of the Automation Suite installation is performed via ArgoCD; however, the installation of some components is performed via Helm chart. uipathctl tool runs an installation job that executes the installation of the Helm chart. Connecting to the kube-api-server and installing the Helm chart in the <uipath> namespace require a namespace-level role-creator role. | |
<istio-system> roles [write] Provide these permissions only if you want the installer to configure the WASM plugin. Otherwise, do not provide the permissions. | The following operations are performed in the <istio-system> namespace:
| |
<istio-system> roles [read-only] Provide these permissions if you have already configured Istio and installed the WASM plugin. | The following operations are performed in the <istio-system> namespace:
| |
Step 3: Binding the roles
You must bind the roles that you created in the previous step to the uipathadmin service account, by running the following commands:
oc project <istio-system>
oc create rolebinding istio-system-automationsuite-rolebinding \
--role=istio-system-automationsuite-role --serviceaccount=<uipath>:uipathadmin
oc create rolebinding namespace-reader-rolebinding \
--clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadmin
oc project <uipath>
oc create clusterrolebinding list-nodes-and-crd-rolebinding \
--clusterrole=list-nodes-and-crd-clusterrole --serviceaccount=<uipath>:uipathadmin
oc create rolebinding uipath-automationsuite-rolebinding \
--role=uipath-automationsuite-role --serviceaccount=<uipath>:uipathadmin
# This step is needed only if you want installer to configure the WASM Plugin. Otherwise skip it.
oc -n <istio-system> create rolebinding uipadmin-istio-system \
--clusterrole=admin --serviceaccount=<uipath>:uipathadmin
oc project <istio-system>
oc create rolebinding istio-system-automationsuite-rolebinding \
--role=istio-system-automationsuite-role --serviceaccount=<uipath>:uipathadmin
oc create rolebinding namespace-reader-rolebinding \
--clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadmin
oc project <uipath>
oc create clusterrolebinding list-nodes-and-crd-rolebinding \
--clusterrole=list-nodes-and-crd-clusterrole --serviceaccount=<uipath>:uipathadmin
oc create rolebinding uipath-automationsuite-rolebinding \
--role=uipath-automationsuite-role --serviceaccount=<uipath>:uipathadmin
# This step is needed only if you want installer to configure the WASM Plugin. Otherwise skip it.
oc -n <istio-system> create rolebinding uipadmin-istio-system \
--clusterrole=admin --serviceaccount=<uipath>:uipathadmin
Step 4: Generating the kubeconfig file
After you assign all the permissions to the service account, you must create a kubeconfig file to pass to the uipathctl tool for the installation.
Generating the kubeconfig file on Linux or Mac
To generate the kubeconfig file on Linux or Mac, run the following commands:
# For generating kubeconfig
# Creates the token for uipathadmin service account
token=$(oc -n <uipath> create token uipathadmin --duration=8760h)
# Getting api-server details
server=$(oc config view -o jsonpath="{.clusters[]..server}")
# Login logs on using the provided token and server and outputs kubeconfig at the provided path.
oc login --server=$server --token=$token --kubeconfig=uipathadminkubeconfig --insecure-skip-tls-verify=true
# For generating kubeconfig
# Creates the token for uipathadmin service account
token=$(oc -n <uipath> create token uipathadmin --duration=8760h)
# Getting api-server details
server=$(oc config view -o jsonpath="{.clusters[]..server}")
# Login logs on using the provided token and server and outputs kubeconfig at the provided path.
oc login --server=$server --token=$token --kubeconfig=uipathadminkubeconfig --insecure-skip-tls-verify=true
If the operation was successful, you should see a kubeconfig file named uipathadminkubeconfig.
Generating the kubeconfig file on Windows
You must perform this step using Windows Powershell.
To generate the kubeconfig file on Windows, run the following commands:
# For generating kubeconfig
# Creates the token for uipathadmin service account
$token = oc -n <uipath> create token uipathadmin --duration=8760h
# Getting api-server details
$server = oc config view -o jsonpath="{.clusters[]..server}"
# Login logs on using the provided token and server and outputs kubeconfig at the provided path.
oc login --server=$server --token=$token --kubeconfig=uipathadminkubeconfig --insecure-skip-tls-verify=true
# For generating kubeconfig
# Creates the token for uipathadmin service account
$token = oc -n <uipath> create token uipathadmin --duration=8760h
# Getting api-server details
$server = oc config view -o jsonpath="{.clusters[]..server}"
# Login logs on using the provided token and server and outputs kubeconfig at the provided path.
oc login --server=$server --token=$token --kubeconfig=uipathadminkubeconfig --insecure-skip-tls-verify=true
If the operation was successful, you should see a kubeconfig file named uipathadminkubeconfig in the temp folder.