- 入门指南
- 要求
- 最佳实践
- 安装
- 正在更新
- 身份服务器
- 对启动错误进行故障排除
Orchestrator 安装指南
关于更新和迁移
要查看是否可以将较旧版本的 Orchestrator 升级到较新版本,请查看我们的概述指南中的 Orchestrator 升级路径矩阵。
要查看最新的可用版本,请查看发行说明页面。
在继续进行Orchestrator升级/安装之前,请仔细查看以下任务列表:
描述 |
详细信息 |
---|---|
查看系统要求 |
确保满足要安装版本的先决条件,硬件和软件要求。 |
了解新部署引入的更改 |
新的Orchestrator部署带来了您应该注意的更改。在升级/安装之前,必须注意某些事项。一些说明了最大的更改,并提供了有关如何最好地利用新版本的建议。 |
运行平台配置工具 |
平台配置工具是一个PowerShell脚本,用于帮助您成功安装/升级Orchestrator。它可以帮助您在升级之前检查环境的完整性和就绪性,并帮助您在安装后执行一些操作。 |
停止 Orchestrator |
必须在 停止应用程序的情况下升级 Orchestrator。 在应用程序运行时执行任何更新都可能导致错误,因此不受支持。 |
安装工件在您首次购买 Orchestrator 时提供,或者也可能由您的客户成功经理或我们的支持团队提供。有数种方法可以直接更新:
UiPathOrchestrator.msi
执行就地更新,该更新将复制所有设置并为旧版创建备份文件夹。它适用于单节点和多节点架构。如果升级前版本是使用弃用脚本安装,则系统不会复制部分 web.config
设置。不支持 Windows 安装程序的修复功能。
UiPathPlatformInstaller.exe
,请使用 Windows 安装程序将其更新到该版本。
在 Azure 门户中的一个或多个节点上对 Orchestrator 及其组件进行的复杂更新。
web.config
中加密的 SecureAppSettings 部分 。 为了从 Orchestrator 的 web.config
读取 EncryptionKey
,然后将其迁移到身份服务器的 appsettings.Production.json
中,密钥必须是纯文本。 在更新 Orchestrator 之前,您需要 手动解密 该部分。 Orchestrator 更新过程完成后,请记住重新加密 web.config
中的 SecureAppSettings
部分。
无论选择哪种更新方式,如果指向的数据库都不存在,则系统会在运行更新时自动创建该数据库。如果指向现有数据库,则系统会在同一过程中对其进行更新。Orchestrator SQL 数据库在安装时会自动设置为不区分大小写(“OrchDB”=“orchdb”)。
升级到最新的 Orchestrator 版本时,所有本地帐户都会自动从 Orchestrator 迁移到 Identity Server,并转换为所需格式。
此更改不会影响您的机器人。
转换完成后,您将无法再使用基本身份验证凭据以相应用户的身份登录。
升级到最新版本的 Orchestrator 时,我们强烈建议对 Identity Server 和 Webhook 使用与原始安装过程中用于 Orchestrator 的应用程序池身份类型相同的身份类型。
例如,如果您在 Orchestrator v2020.10 安装期间将应用程序池身份类型设置为自定义帐户,则在升级到 v2021.10 时,请为 Identity Server 和 Webhooks 应用程序选择相同的应用程序池身份类型(即自定义帐户)。否则,对 SQL Server 的访问可能会被阻止。
升级到 2023.10+ 时出现数据库超时错误
升级到 2023.10+ 时,Orchestrator 中超过 100,000 个组可能会导致超时错误。
要解决此问题,请直接在数据库中运行以下脚本,然后重试升级:
-- 1. Delete group subscriptions
DECLARE @rowCount BIGINT = 1
DECLARE @batchSize BIGINT = 4000
DECLARE @pivotDate DATETIME = GETUTCDATE()
WHILE (@rowCount > 0)
BEGIN
DECLARE @subscriptionsToDeleteIds TABLE(
[Id] UNIQUEIDENTIFIER NOT NULL
)
INSERT INTO @subscriptionsToDeleteIds
SELECT TOP(@batchSize) [ns].[Id]
FROM [dbo].[NotificationSubscriptions] [ns]
JOIN [dbo].[Users] [u] ON [u].[Id] = [ns].[UserId]
WHERE [u].[Type] = 3 AND -- Group
[u].[CreationTime] <= @pivotDate AND
[u].[IsDeleted] = 0
DELETE FROM [dbo].[NotificationSubscriptions]
WHERE [Id] IN (
SELECT [Id] FROM @subscriptionsToDeleteIds
)
OPTION (MAXDOP 1)
SET @rowCount = @@ROWCOUNT
WAITFOR DELAY '00:00:00.1'
END
-- 2. Create index on UserNotifications
IF NOT EXISTS(SELECT * FROM sys.indexes WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UserNotifications]') AND NAME = N'IX_UserId_CreationTime')
CREATE NONCLUSTERED INDEX [IX_UserId_CreationTime] ON [dbo].[UserNotifications]
(
[UserId] ASC,
[CreationTime] ASC
) INCLUDE ([TenantNotificationId]) WITH (ONLINE = ON);
-- 1. Delete group subscriptions
DECLARE @rowCount BIGINT = 1
DECLARE @batchSize BIGINT = 4000
DECLARE @pivotDate DATETIME = GETUTCDATE()
WHILE (@rowCount > 0)
BEGIN
DECLARE @subscriptionsToDeleteIds TABLE(
[Id] UNIQUEIDENTIFIER NOT NULL
)
INSERT INTO @subscriptionsToDeleteIds
SELECT TOP(@batchSize) [ns].[Id]
FROM [dbo].[NotificationSubscriptions] [ns]
JOIN [dbo].[Users] [u] ON [u].[Id] = [ns].[UserId]
WHERE [u].[Type] = 3 AND -- Group
[u].[CreationTime] <= @pivotDate AND
[u].[IsDeleted] = 0
DELETE FROM [dbo].[NotificationSubscriptions]
WHERE [Id] IN (
SELECT [Id] FROM @subscriptionsToDeleteIds
)
OPTION (MAXDOP 1)
SET @rowCount = @@ROWCOUNT
WAITFOR DELAY '00:00:00.1'
END
-- 2. Create index on UserNotifications
IF NOT EXISTS(SELECT * FROM sys.indexes WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UserNotifications]') AND NAME = N'IX_UserId_CreationTime')
CREATE NONCLUSTERED INDEX [IX_UserId_CreationTime] ON [dbo].[UserNotifications]
(
[UserId] ASC,
[CreationTime] ASC
) INCLUDE ([TenantNotificationId]) WITH (ONLINE = ON);
杀毒软件问题
有些防病毒软件可能会阻止数据迁移脚本在升级期间正常运行。
登录尝试问题
将 2019.10 或更旧版本的 Orchestrator 更新后,“配置文件”页面将不会显示在该更新之前进行的登录尝试。
升级或迁移 Orchestrator 后,建议您使用联机或脱机激活从“许可证”页面更新许可证信息。有关说明,请参阅激活许可证。
Legacy
不再是受支持的 NuGet 存储库类型。 先前驻留在 Legacy
存储库中的包将迁移到 Composite
存储库。 对于复合存储库,使用 UiPath.Orchestrator.dll.config
中的 Storage.Type 和 Storage.Location 参数配置包位置。 升级后,所有与 Legacy
相关的应用程序设置将弃用,并且失效:
NuGet.Packages.Path
NuGet.Activities.Path
Nuget.EnableRedisNodeCoordination
Nuget.EnableNugetServerLogging
NuGet.EnableFileSystemMonitoring
NuGet.存储库.类型
web.config
中配置 NuGet.Packages.Path
和 NuGet.Activities.Path
参数的方式。
~/NuGetPackages
和 ~/NuGetPackages/Activities
),则包的新位置将变为 RootPath=.\Storage
。
2020.10 之前版本的密钥默认值 - web.config |
2020.10+ 密钥默认值 - UiPath.Orchestrator.dll.config |
---|---|
|
|
STORAGE_TYPE
和 STORAGE_LOCATION
参数,除非您在安装前已经专门将这些参数添加到 web.config
(Storage.Type
和 Storage.Location
) 中。
STORAGE_TYPE
和 STORAGE_LOCATION
参数。该矩阵考虑了您要从中升级的版本,以及先前版本和 2020.10 及更高版本中的包位置自定义。
例如,根据此功能组合,矩阵显示在静默模式下请求从版本 2019.4+ 升级的两个参数(标有复选标记)如果包存储在自定义位置,但其新存储位置是默认位置。
升级前的版本 |
之前的旧位置 |
新的组合位置 |
在存储窗口中请求的参数 |
静默模式下请求的参数 |
从 CMD 忽略的参数 |
---|---|---|---|---|---|
2019.4+ |
默认 |
默认 |
| ||
2019.4+ |
默认 |
自定义 |
| ||
2019.4+ |
自定义 |
默认 |
|
| |
2019.4+ |
自定义 |
自定义 |
|