orchestrator
2022.10
false
UiPath logo, featuring letters U and I in white

Orchestrator User Guide

Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated Dec 9, 2024

Optimizing Unattended Infrastructure Using Machine Templates

This article walks you through the process of distributing unattended automation workload to existing infrastructure by specializing machines in executing particular types of processes in order to maximize efficiency and cut costs.

The following table shows the UiPath Robot version required to execute processes according to their target frameworks and OS compatibility considerations.

Operating system (target framework)

Robot version

Windows - Legacy (.NET Framework 4.6.1)

Any

Windows (.NET 5.0+)

2021.10+

Cross-platform (.NET 5.0+)

2021.10+

The following table shows the UiPath Robot version required to run foreground/background processes according to the robot credential considerations.

Process type

Robot credential considerations

Robot version

Background

With credentials

Any

Foreground

With credentials

Any

Background

Without credentials

2021.10+

Foreground

Without credentials

Invalid configuration. You need credentials to run foreground jobs.

Optimizing Unattended Infrastructure

Your unattended workload has unique infrastructure needs that can change over time. You can maximize efficiency and minimize waste by restricting the machine template and the associated machine infrastructure to executing a particular type of process.

  1. Add or edit a new machine template on the Machines page.
  2. Configure the two options available on the Supported usage section according to your needs:


    Field

    Description

    Process type

    On the machine infrastructure employing that machine template you can execute:

    • Foreground only - only foreground processes, (1)
    • Background only - only background processes, (2)
    • All - both background and foreground processes. (3)

    Process compatibility

    On the machine infrastructure employing that machine template you can execute:

    • Windows only - Windows-compatible processes only, (4)
    • Cross-platform only - cross-platform processes only, (5)
    • All - both Windows-compatible and cross-platform processes. (6)

Example

Let's say you've been using UiPath Studio for quite some time now, so inevitably you have gotten yourself a quite diverse collection of automations: background and foreground processes, some developed using .NET Framework 4.6.1, newer ones developed on .NET 5.0.

Your infrastructure consists of:

  • one Windows desktop
  • one high-density Windows Server
  • three Linux machines

How would an efficient optimization strategy look like?

No of processes

Compatibility (set in Studio)

Machine Template Settings (set in Orchestrator)

Why

4 background processes

Windows - Legacy

(.NET Framework 4.6.1)

We connect one Windows desktop using template A which we define as follows:

Process type = Background only Process compatibility = Windows only Unattended Runtimes = 4

  • .NET Framework 4.6.1 processes can only run on Windows machines.
  • Background processes can run concurrently under the same account.
  • Template A has 4 runtimes assigned, allowing execution of 4 jobs concurrently.

6 background processes

Cross-platform

(.NET 5.0 or higher)

We connect 3 Linux machines using template B which we define as follows:

Process type = Background only Process compatibility = Cross-platform only Unattended Runtimes = 2

  • .NET Framework 5.0 processes can run on any type of machine.
  • Template B only allows execution of background processes on the connected Linux machines.
  • Background processes can run concurrently under the same account.
  • Template B has 2 runtimes assigned, allowing execution of 2 jobs concurrently on each connected Linux machine: 2 jobs x 3 machines results in an execution capacity of 6 concurrent jobs.

10 foreground processes

Windows

(.NET 5.0 or higher)

We connect the Windows server using template C which we define as follows:

Process type = Foreground only Process compatibility = Windows only Unattended Runtimes = 10

  • .NET Framework 5.0 processes can run on any type of machine, Linux machines included, but because these are foreground processes developed for Windows, you need to run them on Windows machines.
  • One account can run one foreground process at a time.
  • A HD Windows Server allows opening multiple account sessions.
  • Template C has 10 runtimes assigned, meaning 10 sessions are opened simultaneously, allowing execution of 10 foreground jobs concurrently.

Tips & Tricks

  • Allocate background processes execution to cheaper machines (such as Linux).
  • Set Windows machines aside for foreground automation.
  • Background processes developed using .NET Framework 4.6.1 require Windows. You can resort to Windows desktops for concurrent execution. You do not need a Windows server for background processes, nor a high-density environment, since background jobs can run concurrently under the same account.
  • You need 2021.10+ robots to execute .NET. 5.0 or higher processes

Job Allocation

Orchestrator does not allow starting jobs on invalid configurations. Trying to start a job in an invalid setup results in a descriptive error message providing you with details about how to fix your configuration.



Starting a job using dynamic allocation, i.e. no machine or account specified, with an incompatible folder setup results in an error. Make sure to correct the setup, otherwise, jobs stay pending indefinitely. For example, trying to run a .NET Framework 4.6.1 background job when there are only cross-platform templates in the folder does not work, as jobs stay pending until the configuration is fixed.



Find details about how to fix the configuration on the Job Details window.



Invalid Configurations

  • Foreground processes are developed on top of a UI and need a UI to get executed. Currently, UiPath foreground automation is only possible on Windows. For this reason, foreground automation on cross-platform-only machines is not a valid setup.
  • Employing a Windows only template on a Linux machine is not a valid setup. Use Cross-platform only templates or unrestricted templates (All).
  • Employing a Cross-platform only template on a machine with a UiPath Robot version smaller than 21.8+ is not a valid setup. Update the version or set the machine template to Windows only or All.
  • Optimizing Unattended Infrastructure
  • Example
  • Tips & Tricks
  • Job Allocation
  • Invalid Configurations

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.