- 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
Applying miscellaneous configurations
Only apply the configurations in this section if you cannot provide admin privileges to the Automation Suite installer. If you can provide the required permissions to the installer, you do not need to apply the configurations in this section.
Creating a priority class
To create a priority class for UiPath® applications, take the following steps:
- Save the following configuration as a YAML file:
--- apiVersion: scheduling.k8s.io/v1 kind: PriorityClass metadata: name: uipath-high-priority value: 1000000 preemptionPolicy: PreemptLowerPriority globalDefault: false description: "Priority class for uipath applications"--- apiVersion: scheduling.k8s.io/v1 kind: PriorityClass metadata: name: uipath-high-priority value: 1000000 preemptionPolicy: PreemptLowerPriority globalDefault: false description: "Priority class for uipath applications" - Run the following command, replacing the
<file_name.yaml>placeholder with the actual name of your YAML file:kubectl apply -f <file_name.yaml>kubectl apply -f <file_name.yaml>
Labeling the namespaces
To create namespace labels, run the following commands:
kubectl label namespace <uipath> uipath-injection=enabled
kubectl label namespace <uipath> istio-injection=enabled
kubectl label namespace <uipath> uipath-injection=enabled
kubectl label namespace <uipath> istio-injection=enabled
Configuring CoreDNS
If you are using a proxy setup, specific CoreDNS configuration changes are required to ensure successful installation and operation of Automation Hub and Apps.
We recommend adding this to the CoreDNS settings as it allows any Service to Service requests, that use the FQDN of the cluster, to bypass the load balancer and route internally through Istio.
Follow these steps to configure your cluster during installation:
-
Capture the existing
corednsconfigmap from the running cluster:kubectl get configmap -n kube-system coredns -o yaml > coredns-config.yamlkubectl get configmap -n kube-system coredns -o yaml > coredns-config.yaml -
Edit the
coredns-config.yamlfile to append thefqdnrewrite to the config.- Rename the configmap to
coredns-custom. - Add the following code block to your
coredns-config.yamlfile. Make sure the code block comes before thekubernetes cluster.local in-addr.arpa ip6.arpline.rewrite stop { name exact <cluster-fqdn> istio-ingressgateway.istio-system.svc.cluster.local }rewrite stop { name exact <cluster-fqdn> istio-ingressgateway.istio-system.svc.cluster.local } - Replace
<cluster-fqdn>with the actual value.
Once you have completed these steps, your file should resemble the following sample:
apiVersion: v1 data: Corefile: | .:53 { errors log health rewrite stop { name exact mycluster.autosuite.com istio-ingressgateway.istio-system.svc.cluster.local } kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure fallthrough in-addr.arpa ip6.arpa } prometheus :9153 forward . /etc/resolv.conf cache 30 loop reload loadbalance } kind: ConfigMap metadata: name: coredns-custom namespace: kube-systemapiVersion: v1 data: Corefile: | .:53 { errors log health rewrite stop { name exact mycluster.autosuite.com istio-ingressgateway.istio-system.svc.cluster.local } kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure fallthrough in-addr.arpa ip6.arpa } prometheus :9153 forward . /etc/resolv.conf cache 30 loop reload loadbalance } kind: ConfigMap metadata: name: coredns-custom namespace: kube-system - Rename the configmap to
-
Create the
coredns-customconfigmap:kubectl apply -f coredns-config.yamlkubectl apply -f coredns-config.yaml -
Replace the volume reference from
corednstocoredns-customin thecorednsdeployment inkube-systemnamespace:volumes: - emptyDir: {} name: tmp - configMap: defaultMode: 420 items: - key: Corefile path: Corefile name: coredns-custom name: config-volumevolumes: - emptyDir: {} name: tmp - configMap: defaultMode: 420 items: - key: Corefile path: Corefile name: coredns-custom name: config-volume -
Restart the
corednsdeployment and ensure thecorednspods are up and running without any issues:kubectl rollout restart deployment -n kube-system corednskubectl rollout restart deployment -n kube-system coredns
Once these steps are complete, Automation Hub and Apps should launch successfully in the proxy-enabled environment.