UiPath Orchestrator Guide

The Azure App Service Installation Script

Important!

Make sure you have Web Deploy 3.5 installed on the machine where you are running the script as detailed here, and your SQL server deployed and configured as detailed here.

The Azure installation script enables you to install Orchestrator on one or multiple nodes.

One Node Installation

To install Orchestrator on an Azure App Service perform the following steps:

  1. In the Azure Portal, under App Services, create a new app service with a custom name such as UiPathOrchestrator. For more information, see Microsoft's official documentation.
  2. Set the database connection string in the Application Settings of the web app, with the name "Default". For example, Server=13.13.13.13;Initial Catalog=UiPath;Persist Security Info=False;User ID=dbUser;Password=pass123; MultipleActiveResultSets=False;Encrypt=True; Connection Timeout=30;TrustServerCertificate=True.
  3. Select the app and, in the Overview tab, click Get Publish Profile. The [appservicename].PublishSettings file is downloaded.
  4. Download the UiPathOrchestrator.zip archive.
  5. Run the Publish-Orchestrator.ps1 script, in PowerShell, as follows:
Publish-Orchestrator.ps1 `
-action Deploy `
-hostAdminPassword "CustomHostAdminPassword" `
-isHostPassOneTime `
-defaultTenantAdminPassword "CustomDefaultTenantAdminPass" `
-isDefaultTenantPassOneTime `
-package "path/to/package" `
-activitiesPackagePath "path/to/UiPathActivities.zip" `
-publishSettingsPath "path/to/publishSettings" `
-nugetRepositoryType "RepositoryType" `
-storageType "StorageType" `
-storageLocation "StorageLocation" `

Where:

  • hostAdminPassword - Mandatory. Specify a custom password for the host administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
  • isHostPassOneTime - Optional. Enables you to enforce a password reset on the first login for the host administrator if set to 1. If this parameter is omitted, the host admin password is not a one-time password.
  • defaultTenantAdminPassword - Mandatory. Specify a custom password for the default tenant administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
  • isDefaultTenantPassOneTime - Optional. Enables you to enforce a password reset on the first login for the default tenant administrator if set to 1. If this parameter is omitted, the host admin password is not a one-time password.
  • package "path/to/package" - Mandatory. Indicate the full path of the UiPath.Web.zip archive.
  • -activitiesPackagePath "path/to/UiPathActivities.zip" - Optional. Specify the full path of the UiPathActivities.zip archive, which is included by default, starting with v2018.4.4, in UiPathOrchestrator.zip. This enables you to install the local activity feed in Azure at install-time. Please note that this parameter can be used only with the Legacy repository type. Otherwise, it has to be manually set up.
  • publishSettingsPath "path/to/publishSettings" - Mandatory. Specify the full path of the [appServiceName].PublishSettings file.
  • nugetRepositoryType "RepositoryType" - Mandatory. This parameter specifies where NuGet packages are saved. It can be populated as follows:
    • Composite - Package metadata is saved to the SQL database for faster search and filtering. Execution media and packages are saved to the location specified through the storageType and storageLocation parameters. This is the default value in both update scenarios and clean installations.
    • Legacy - Uses FileSystem for package sync. Packages and activities are saved in the locations specified in the NuGet.Packages.Path and NuGet.Activities.Path parameters, respectively. Execution media is saved to the location specified through the storageType and storageLocation parameters. Platform users must enter this value in update scenarios to maintain access to preexisting packages.
  • storageType "StorageType" - Defines the target where execution media and packages are to be saved. It can be populated with the following targets:
    • FileSystem - such as storageType "FileSystem". This is the default value in both update scenarios and clean installations.
    • Azure - such as storageType "Azure".
    • Amazon - such as storageType "Amazon".
    • Minio - such as storageType "Minio".
  • storageLocation "StorageLocation" - Defines the actual location where execution media and packages are to be saved. Particularities:
    • FileSystem - provide an absolute path in the RootPath=.\Storage format, such as storageLocation "RootPath=C:\FolderName\AnotherFolderName".
    • Azure - provide a connection string, such as storageLocation "DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net".
    • Amazon - provide a connection string, such as storageLocation" "EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false".
    • Minio - provide a connection string, such as storageLocation" "host=localhost:9001;accessKey=YVKYFJ0ZY246KDKP0634;secretKey=bdBEk2ubhIFsTNPuQ80PjKL+oqZBj67HoSWBFnw1".
      More information on these deployments types is available here.

This procedure generates two files:

  • AzurePublishParameters.json
  • AzureApplicationSettings.json
  1. Store the AzurePublishParameters.json file to a preferred location, as you need it for future deployments.
  2. Open the AzureApplicationSettings.json file with a text editor such as Notepad++.
  3. Copy all the information present in the AzureApplicationSettings.json file to the Azure Portal, in the Application settings tab, under the App settings section.
  4. Start the Orchestrator app service. Enjoy using Orchestrator on your Azure Portal.

Clustered Installation

To install Orchestrator on multiple nodes on an Azure App Service perform the following steps:

  1. In the Azure Portal, under App Services, create a new app service with a custom name such as UiPathOrchestrator. For more information, see Microsoft's official documentation.
  2. Set the database connection string in the Application Settings of the web app, with the name "Default". For example, Server=13.13.13.13;Initial Catalog=UiPath;Persist Security Info=False;User ID=dbUser;Password=pass123; MultipleActiveResultSets=False;Encrypt=True; Connection Timeout=30;TrustServerCertificate=True.
  3. In the Scale out (App Service plan) tab, select the Scale to a specific instance count option and provide the desired Instance count.
  4. In the Overview tab, click Get Publish Profile. The [appServiceName].PublishSettings file is downloaded.
  5. Download the UiPathOrchestrator.zip archive.
  6. Run the Publish-Orchestrator.ps1 the script, in PowerShell, as follows:
Publish-Orchestrator.ps1 `
-action Deploy `
-hostAdminPassword "CustomHostAdminPassword" `
-isHostPassOneTime `
-defaultTenantAdminPassword "CustomDefaultTenantAdminPass" `
-isDefaultTenantPassOneTime `
-package "path/to/package" `
-activitiesPackagePath "path/to/UiPathActivities.zip" `
-publishSettingsPath "path/to/publishSettings" `
-sessionStateMode "Off" `
-useQuartzClustered `
-redisServer "RedisServer" `
-redisPassword "RedisPassword" `
-redisPort [RedisPort] `
-robotsElasticSearchUrl "RobotsElasticSearchUrl" `
-robotsElasticSearchTargets "ElasticSearchUrl" `
-robotsElasticSearchUsername "Username" `
-robotsElasticSearchPassword "Password" `
-serverElasticSearchDiagnosticsUsername "Username" `
-serverElasticSearchDiagnosticsPassword "Password" `
-nugetRepositoryType "RepositoryType" `
-storageType "StorageType" `
-storageLocation "StorageLocation" `

Where:

  • hostAdminPassword - Mandatory. Specify a custom password for the host administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
  • isHostPassOneTime - Optional. Enables you to enforce a password reset on the first login for the host administrator if set to 1. If this parameter is omitted, the host admin password is not a one-time password.
  • defaultTenantAdminPassword - Mandatory. Specify a custom password for the default tenant administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
  • isDefaultTenantPassOneTime - Optional. Enables you to enforce a password reset on the first login for the default tenant administrator if set to 1. If this parameter is omitted, the host admin password is not a one-time password.
  • package "path/to/package" - Mandatory. Indicate the full path of the UiPath.Web.zip archive.
  • -activitiesPackagePath "path/to/UiPathActivities.zip" - Optional. Specify the full path of the UiPathActivities.zip archive, which is included by default, starting with v2018.4.4, in UiPathOrchestrator.zip. This enables you to install the local activity feed in Azure at install-time. Please note that this parameter can be used only with the Legacy repository type. Otherwise, it has to be manually set up.
  • publishSettingsPath "path/to/publishSettings" - Mandatory. Specify the full path of the [appServiceName].PublishSettings file.
  • sessionStateMode "Off" - Mandatory. This parameter has been deprecated so it is compulsory to disable it by setting it to Off.
  • useQuartzClustered - Mandatory. A switch that indicates that this is a clustered installation.
  • redisServer "RedisServer" - Mandatory. If you want to use Redis as your database, provide this parameter and the URL of the server as a value.
  • redisPassword "RedisPassword" - Mandatory. If you want to use Redis, provide the password for your Redis server instance.
  • redisPort [RedisPort] - Mandatory. If you want to use Redis, provide the port used by your Redis server.
  • robotsElasticSearchUrl "RobotsElasticSearchUrl" - Optional. This should be used only if you want to use Elasticsearch for logging. Provide the Elasticsearch URL as the value, such as "http://elasticserver:9200". If your Orchestrator instance requires authentication, provide the ElasticSearchUsername, ElasticSearchPassword, elasticSearchDiagnosticsUsername, and elasticSearchDiagnosticsPassword parameters.
  • robotsElasticSearchTargets "ElasticSearchUrl - Optional. This parameter enables you to send Robot logs only to the configured Elasticsearch server. Provide the Elasticsearch URL as the value, such as "http://elasticserver:9200". Please note that it can only be used in conjunction with the -robotsElasticSearchUrl parameter. If you do not provide this parameter, Robot logs are sent to both the configured SQL database and Elasticsearch.
  • serverElasticSearchUsername "Username" - Optional. This parameter enables you to indicate the username for your Elasticsearch instance if its authentication is enabled.
  • serverElasticSearchPassword "Password" - Optional. This parameter enables you to indicate the password for your Elasticsearch instance if its authentication is enabled.
  • serverElasticSearchDiagnosticsUsername "Username" - Optional. This parameter enables you to indicate the username for your Elasticsearch instance if its authentication is enabled. This parameter together with elasticSearchDiagnosticsPassword "Password" are required for internal Orchestrator logs.
  • serverElasticSearchDiagnosticsPassword "Password" - Optional. This parameter enables you to indicate the password for your Elasticsearch instance if its authentication is enabled. This parameter together with elasticSearchDiagnosticsUsername "Username" are required for internal Orchestrator logs.
  • nugetRepositoryType "RepositoryType" - Mandatory. This parameter specifies where NuGet packages are saved. It can be populated as follows:
    • Composite - Package metadata is saved to the SQL database for faster search and filtering. Execution media and packages are saved to the location specified through the storageType and storageLocation parameters. This is the default value in both update scenarios and clean installations.
    • Legacy - Uses FileSystem for package sync. Packages and activities are saved in the locations specified in the NuGet.Packages.Path and NuGet.Activities.Path parameters, respectively. Execution media is saved to the location specified through the storageType and storageLocation parameters. Platform users must enter this value in update scenarios to maintain access to preexisting packages.
  • storageType "StorageType" - Defines the target where execution media and packages are to be saved. It can be populated with the following targets:
    • FileSystem - such as storageType "FileSystem". This is the default value in both update scenarios and clean installations.
    • Azure - such as storageType "Azure".
    • Amazon - such as storageType "Amazon".
    • Minio - such as storageType "Minio".
  • storageLocation "StorageLocation" - Defines the actual location where execution media and packages are to be saved. Particularities:
    • FileSystem - provide an absolute path in the RootPath=.\Storage format, such as storageLocation "RootPath=C:\FolderName\AnotherFolderName".
    • Azure - provide a connection string, such as storageLocation "DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net".
    • Amazon - provide a connection string, such as storageLocation" "EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false".
    • Minio - provide a connection string, such as storageLocation" "host=localhost:9001;accessKey=YVKYFJ0ZY246KDKP0634;secretKey=bdBEk2ubhIFsTNPuQ80PjKL+oqZBj67HoSWBFnw1".
      More information on these deployments types is available here.

This procedure generates two files:

  • AzurePublishParameters.json
  • AzureApplicationSettings.json
  1. Store the AzurePublishParameters.json file to a preferred location, as you need it for future deployments.
  2. Open the AzureApplicationSettings.json file with a text editor such as Notepad++.
  3. Copy all the information present in the AzureApplicationSettings.json file to the Azure Portal, in the Application settings tab, under the App settings section.
  4. Start the Orchestrator app service. Enjoy using Orchestrator on your Azure Portal.


The Azure App Service Installation Script


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.