- Overview
- Requirements
- Pre-installation
- 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
- Migrating from Automation Suite on EKS/AKS to Automation Suite on OpenShift
- 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
- The backup setup does not work due to a failure to connect to Azure Government
- Pods in the uipath namespace stuck when enabling custom node taints
- Unable to launch Automation Hub and Apps with proxy setup
- Robot cannot connect to an Automation Suite Orchestrator instance
- Log streaming does not work in proxy setups
- Velero backup fails with FailedValidation error
- Accessing FQDN returns RBAC: access denied error

Automation Suite on EKS/AKS installation guide
Installing and configuring the GitOps tool
Before proceeding with the ArgoCD installation and configuration, you must install Istio and provide all the required permissions to the uipathadmin service account.
- For the service mesh installation and configuration instructions, see Installing and configuring the service mesh
- For the installation permissions, see Granting installation permissions.
If you cannot grant admin privileges to the Automation Suite installer, you must bring your own ArgoCD for the Automation Suite deployment. For more information, see Provisioning ArgoCD.
Provisioning ArgoCD
If you cannot grant admin privileges to the Automation Suite installer, you must bring your own ArgoCD and take the following configuration steps:
- Provide the correct value for the
application_namespaceparameter in theargocdsection of yourinput.jsonfile. This is the namespace where applications are created, and ideally should be the namespace where ArgoCD is installed. - If you install Automation Suite on a shared cluster, we recommend creating a new ArgoCD project dedicated to Automation Suite rather than using the default project. For instructions on how to create a project in ArgoCD, see Creating a project in ArgoCD.
- Configure the Helm repository in ArgoCD. For more information, see Configuring the Helm repository in ArgoCD.
- Grant the necessary permissions on the ArgoCD namespace. For more information, see Granting the necessary permissions on the ArgoCD namespace.
Creating a project in ArgoCD
To create a new project in the ArgoCD UI, take the following steps:
- Log in to ArgoCD.
- Navigate to Settings > Projects > +NEW PROJECT.
- Provide a name and description for the project.
- Add the following destinations:
- Enter
<uipath>as the namespace andhttps://kubernetes.default.svcas the server. - Enter
<istio-system>as the namespace andhttps://kubernetes.default.svcas the server.
- Enter
- Add the
<argocd>namespace tosourceNamespaces.Note:In older ArgoCD releases,
sourceNamespacesis not visible in the UI.
You can also create an ArgoCD project declaratively:
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: <project-name>
namespace: <argocd-namespace>
spec:
description: App project to manage and deploy uipath applications
clusterResourceWhitelist:
- group: '*'
kind: '*'
destinations:
- namespace: <uipath>
server: https://kubernetes.default.svc
- namespace: <istio-system>
server: https://kubernetes.default.svc
sourceNamespaces:
- <argocd-namespace>
sourceRepos:
- '*'
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: <project-name>
namespace: <argocd-namespace>
spec:
description: App project to manage and deploy uipath applications
clusterResourceWhitelist:
- group: '*'
kind: '*'
destinations:
- namespace: <uipath>
server: https://kubernetes.default.svc
- namespace: <istio-system>
server: https://kubernetes.default.svc
sourceNamespaces:
- <argocd-namespace>
sourceRepos:
- '*'
Configuring the Helm repository in ArgoCD
To configure the Helm repository in ArgoCD, take the following steps:
- Log in to ArgoCD.
- Navigate to Settings > Repositories > +CONNECT REPO.
- Use VIA HTTPS for the connection method.
- Select Helm as the type.
- Provide a name.
- Choose uipath as the project. uipath is the name of the ArgoCD project you created for the UiPath® application.
- Provide the repository URL, username, password, and certificate info.
- Enable the OCI checkbox.
- Select Connect.
- Make sure that the connection status is Successful.
Granting the necessary permissions on the ArgoCD namespace
To grant the necessary permissions on the ArgoCD namespace, take the following steps:
- Create a role to create and edit the secret in the
<argocd>namespace:apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: argo-secret-role namespace: <argocd> rules: - apiGroups: ["rbac.authorization.k8s.io"] resources: ["roles", "rolebindings"] verbs: ["*"] - apiGroups: ["*"] resources: ["secrets"] verbs: ["get", "watch", "list", "patch", "update", "create"]apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: argo-secret-role namespace: <argocd> rules: - apiGroups: ["rbac.authorization.k8s.io"] resources: ["roles", "rolebindings"] verbs: ["*"] - apiGroups: ["*"] resources: ["secrets"] verbs: ["get", "watch", "list", "patch", "update", "create"] - Bind the
argo-secret-rolerole to theuipathadminservice account:kubectl -n <argocd> create rolebinding secret-binding \ --role=argo-secret-role --serviceaccount=<uipath>:uipathadminkubectl -n <argocd> create rolebinding secret-binding \ --role=argo-secret-role --serviceaccount=<uipath>:uipathadmin - Create a role to manage the applications in the
<argocd>namespace:apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: uipath-application-manager namespace: <argocd> rules: - apiGroups: - argoproj.io resources: - applications verbs: - "*"apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: uipath-application-manager namespace: <argocd> rules: - apiGroups: - argoproj.io resources: - applications verbs: - "*" - Bind the
uipath-application-managerrole to theuipathadminservice account:kubectl create rolebinding uipath-application-manager-rolebinding --role=uipath-application-manager --serviceaccount=<uipath>:uipathadmin -n <argocd>kubectl create rolebinding uipath-application-manager-rolebinding --role=uipath-application-manager --serviceaccount=<uipath>:uipathadmin -n <argocd> - Bind the namespace reader role in the
<argocd>namespace to theuipathadminservice account:kubectl -n <argocd> create rolebinding namespace-reader-rolebinding \ --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadminkubectl -n <argocd> create rolebinding namespace-reader-rolebinding \ --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadmin