- Getting started
- Best practices
- Tenant
- About the Tenant Context
- Searching for Resources in a Tenant
- Managing Robots
- Connecting Robots to Orchestrator
- Storing Robot Credentials in CyberArk
- Storing Unattended Robot Passwords in Azure Key Vault (read-only)
- Storing Unattended Robot Credentials in HashiCorp Vault (read-only)
- Storing Unattended Robot Credentials in AWS Secrets Manager (read Only)
- Deleting Disconnected and Unresponsive Unattended Sessions
- Robot Authentication
- Robot Authentication With Client Credentials
- Audit
- Settings
- Cloud robots
- Elastic Robot Orchestration
- Automation Cloudâ„¢ Robots - VM
- Automation Cloudâ„¢ Robots - Serverless
- Configuring VPN for Cloud Robots
- Folders Context
- Automations
- Processes
- Jobs
- Apps
- Triggers
- Logs
- Monitoring
- Queues
- Assets
- Storage Buckets
- Test Suite - Orchestrator
- Resource Catalog Service
- Authentication
- Integrations
- Troubleshooting
Elastic Robot Orchestration
Elastic robot orchestration provides a way to automatically scale your unattended robots by allowing UiPath to scale and manage your robots for you, in the cloud. We manage them on your behalf, but they are still in your cloud, and you can choose how much of the robot orchestration process you want to delegate to us.
You can customize the auto-scaling strategy of robots through controls such as:
- setting a maximum number of machines you want to allow us to create
- choosing to optimize for speed, for cost, or choosing a balanced model
- scheduling different settings for certain periods when, by exception, you need more or less speed.
You can use one of the following cloud service providers to host your virtual machines (VMs) in the cloud for elastic robot orchestration:
- Amazon Web Services (AWS)
- Google Cloud Platform (GCP)
- Microsoft Azure
You can:
- Create a generalized virtual machine image that we use as a template to create machines on demand whenever a robot needs to run a job. You can set the limits for how many and when we create these machines and then leave it to us to get the job done.
- Add your custom virtual machines to use when robots are needed to run processes.
Here is a summary of the differences between the two options:
 |
Manually Create Machines |
Automatically Create Machines |
---|---|---|
Create and delete machines |
you create and delete the machines yourself |
we can automatically create new machines when needed for better performance and delete any machines not in use |
Machine scaling |
limited to the number of machines provided |
we create as many machines as needed to optimally handle the workload, within parameters you set |
Virtual machine setup |
set up multiple individual VMs |
set up a single VM image |
Install and set up UiPath Robot on each machine |
automated |
automated |
Connect to Orchestrator |
automated |
automated |
Run jobs |
automated |
automated |
Start and stop VMs |
automated |
automated |
VM customization |
customize the VMs you use (domain-joined, machine size, machine name, network options, and more) |
VM image must be configured as recommended on this page for each type of cloud provider. |
The setup process in Orchestrator is similar for both cloud service providers. The main differences are in how you set up each provider and create the virtual machines.
Here is an overview of the process when using Microsoft Azure as the cloud services provider and a generalized virtual machine:
-
All cloud robot VMs contain a hypervisor agent (
hvagent
orUiPath VM Agent
), which ensures the running of VMs. You can find it in your CSP installation folder. Add this agent to your allow-list, so that your security agents do not remove or block it. -
We advise against imposing restrictions on your cloud provider subscription that might block the deployment of specific resources, as these resources are crucial to the successful creation and functioning of virtual machines.
-
You need a Microsoft Azure subscription for hosting your cloud robots.
You must set up Azure and get the following details from your Azure administrator to connect Orchestrator:
- Client Id - the unique identifier for the client app registration
- Client Secret Key - the password for the app registration
- Subscription Id - the unique key for your organization's Azure subscription
- Directory (tenant) Id - the unique key for the tenant you use within the Azure subscription.
For instructions, see Setup in Azure below.
You need an Amazon Web Services (AWS) subscription with Amazon Elastic Compute Cloud (Amazon EC2) for hosting your cloud robots.
You must set up AWS and get an AWS access key from your AWS administrator, which consists of:
- Access Key ID - the unique identifier for the Orchestrator connection
- Secret Access Key - the password for this connection.
These are long-term credentials and, like a username and password, Orchestrator needs to use the access key ID and secret access key together to authenticate requests it makes to the AWS API.
For instructions, see Setup in AWS below.
You need a Google Cloud Platform (GCP) subscription which includes Compute Engine for hosting your cloud robots.
You must set up a GCP project and get the following details from your GCP administrator to connect Orchestrator:
- Client Id - the unique identifier for your GCP project
- Private Key - the key for the GCP service account used for the integration.
For instructions, see Setup in GCP below.
If your cloud service provider is Microsoft Azure, follow the instructions in this section to prepare to connect Orchestrator to Azure.
Robots need a machine on which to run. As part of elastic robot orchestration, we can use your cloud-hosted virtual machine (VM) to create machines on demand for robots to run when needed.
When creating a virtual machine in Azure, Microsoft provides a set of images to build your virtual machines. They are images of different operating systems, such as Windows Server or Windows 10 Pro, that allow you to install the software you need to run automation jobs.
To capture a virtual machine image:
You now have a fully configured image that you can use to create new virtual machines for automation.
If your cloud services provider is Amazon Web Services (AWS), follow the instructions in this section to configure Amazon Elastic Compute Cloud (Amazon EC2) for elastic robot orchestration.
AWS best practices
Choosing the right AWS region: Ensure Amazon Virtual Private Cloud (Amazon VPC) is located in an appropriate region. We recommend you always pick the AWS region that is closest to the region where your Orchestrator instance is hosted when creating an elastic robot pool. Consider both latency and data transfer costs between Orchestrator, Robots, and the customer application when determining the location of the VPC. Contact the UiPath support team for details on how to allocate all your assets close to each other. Learn more about regions and instances in the Getting Started guide.
Capacity and cost optimization: Ensure Amazon Elastic Compute Cloud (Amazon EC2) resources are sized appropriately according to the deployment, customer requirements, and UiPath best practices. Amazon EC2 passes on to you the financial benefits of Amazon’s scale. See Amazon EC2 Instance Purchasing Options for a more detailed description of Amazon EC2 pricing. UiPath allows you to use your existing machines to take advantage of your optimized EC2 size configuration. We recommend downsizing or terminating idle or underutilized Amazon EC2 instances to optimize costs.
UiPath:Managed: true
. The cost displayed in the calculator is for the infrastructure only. To get a more accurate TCO value, also consider the
cost of UiPath licenses.
You can see the new image in the Amazon EC2 console, on the left under Images > AMIs. You now have a fully configured image that you can use to create new virtual machines for automation.
If your cloud service provider is Google Cloud Platform (GCP), follow the instructions in this section to prepare to connect Orchestrator to GCP.
- Create a new project in GCP.
- Get the Project ID and save it for later use.
- Create a service account in your GCP project.
- Create a service account key in JSON and save the Private Key value for later use.
If you want to use elastic robot orchestration and have us create machines for you on demand, you must create custom machine images in your GCP project.
The following instructions are a sample configuration for creating an image from a persistent disk, which is created from an existing Windows VM you have under your project.
Now that your cloud service provider is set up, you can proceed to connect Orchestrator to it and set up the elastic robots.
In Orchestrator:
Your provider validates the information and then connects your Orchestrator.
To connect elastic robots to Orchestrator in the cloud, you need to provision a machine template of the type Elastic robot pool. This machine template is used when UiPath manages the robots and they run in your cloud.
When creating the elastic robot pool, you have two options:
- You can allow us to automatically create machines when they're needed based on your generalized cloud VM. This automates the provisioning process for both machines and robots. Whenever a process needs to run, the required number of machines are created. In addition, when the elastic robot pool is first used, we install the required UiPath software to run the robot on the new machines.
- (AWS or Azure only) You can add specific VMs that you want us to use for elastic robot orchestration. This is a limited version of elastic robot orchestration where we can start and stop the VM as needed to run processes and install the required UiPath software to run the robot, but we only use the specified machines. We cannot create new machines for you, nor can we remove machines that you created.
To create the elastic robot pool:
Your elastic robot pool is now set up and ready to be used in a modern folder to run jobs.
Do not interfere with the cloud resources (VMs, images) once you add them to an elastic robot pool.
For example:
-
do not power cycle the VM manually,
-
do not delete the VM from the CSP while it is still in the pool, or
-
do not connect or disconnect the Robot to/from Orchestrator.
You need to add the elastic robot pool to a modern folder and grant automation permissions for the folder to the account that uses the virtual machine.
Your modern folder is now set up and the account is configured.
Now that setup in Orchestrator is also complete, you can start running automations in the cloud.
Test the elastic robot orchestration setup by running your first automation in the cloud.
Creating the first virtual machine can take some time - from 10 minutes to several hours (observed only in Azure). A virtual machine must be available to run a job before you can test-run an automation.
The machines of the Elastic Robot Pool show up in the Machine dropdown when you create an automation. The runtime is the one set at Elastic Robot Pool creation.
In Orchestrator:
- Make sure you have published a project or uploaded a package to Orchestrator.
- Go to Automations > Processes from your modern folder.
- Create a new process.
- Start the job.
While a job is in progress, you can access the live stream of the robot running the automation. If troubleshooting or debugging is needed, you can take control of the execution using your own mouse and keyboard, without pausing the automation.
The live streaming and remote control features are available for Automation Cloud Robots (both Serverless and VM), Elastic Robots, and Windows Robots version 2023.4+.
To enable live streaming and remote control, see Enabling the features.
You can monitor elastic robot orchestration to check for errors on the following pages:
- You can see pending jobs that are waiting for an available machine on the Jobs page. If jobs are pending longer than expected, check your cloud service provider setup to make sure everything is configured properly.
- In Azure, AWS, or GCP, you can see the virtual machines being created. You can also see the created virtual machines in Orchestrator, on the Monitoring page of the modern folder. When one becomes available, it is already connected to Orchestrator, so it runs the next pending job. If virtual machines are not being created, check the configuration of your machine template in your cloud service provider and the elastic robot pool in Orchestrator.
- On the Alerts page in Orchestrator, you can set the State filter to All to see details about the Cloud Robots component and see as new robots are created or any errors. To see alerts, you need to have the Alerts - View and Machines - View permissions from a role that is directly assigned to your account (not inherited from groups), and to be added to the folders where elastic robot orchestration is used.
With Automatically Create Machines switched off, if you find the machines you selected during setup are not shown when later editing the elastic robot pool, this may be caused by some machines being currently or previously allocated in your other elastic robot pools. You can use the same machine in only one elastic robot pool at a time.
To recover from this problem:
- Go to the Alerts page to find the message for machine import.
- Check the message to see if any machines got skipped. If so, continue with this process. Otherwise, check the configuration of the VM in your cloud service provider.
- Remove the machine from any other pools.
- Wait for the current task running on the machine to get terminated, usually less than 1 minute.
- Add the machine in the elastic robot pool.
status CREATE_FAILED for stack <name>
, you can track stack events to determine the cause.
Errors can occur during CloudFormation stack creation, most frequently due to AWS permissions or quota.
To recover from this problem:
Will the machine images that I created be automatically updated with the latest Windows version and updates?
No. If you want to have the latest Windows version and updates, you need to rebuild your image in the cloud services provider (CSP).
We take care to update your VMs to use the latest version of UiPath Robot within approximately 2 weeks of a new version becoming available.
The update happens:
- when a machine needing an update first starts
- before a machine that was running jobs shuts down
- for machines that are in constant use and are not able to receive the update for 2 weeks since the update was available, we schedule a short maintenance window on the machine to apply the update.
Install the UiPath remote runtime on the ERO template.
During the installation:
Select the desired browser extension, such as Chrome Extension. The extension must be installed under the same user who executes the jobs. To ensure the proper functioning of the extension, open it after the installation completes.
The latest UiPath remote runtime version is available on the Product Downloads page of the Customer Portal.
Post-installation:
Open Studio Desktop, go to Home > Tools > UiPath Extensions, and click Install for the desired browser. Only supported browsers are displayed in the list.
- Overview
- Supported Cloud Providers
- Machine Provisioning Options
- Sample Configuration
- Requirements
- Azure Requirements
- AWS Requirements
- GCP Requirements
- Cloud Provider Setup
- Setup in Azure
- Setup in Azure: Preparing a Virtual Machine Image
- Setup in AWS
- Setup in AWS: Generate an AWS Access Key
- Setup in AWS: Create an AWS EC2 Image
- Setup in GCP
- Setup in GCP: Creating Virtual Machines
- Setup in Orchestrator
- Configuring the Cloud Provider Connection
- Creating an Elastic Robot Pool
- Configuring the Modern Folder and Account Roles
- Test Running an Automation in the Cloud
- Live streaming and remote control
- Troubleshooting
- Monitoring
- Machine Pool Setup
- Machine Provisioning Failed (AWS Only)
- Frequently Asked Questions
- Will the machine images that I created be automatically updated with the latest Windows version and updates?
- When are UiPath Robot updates applied?
- How can I enable browser extensions on my machine?