Configuring input.json
使用 UiPath 产品、基础架构、证书和 Automation Suite 的高级设置配置 input.json 文件。
input.json 文件允许您配置要部署的 UiPath™ 产品、应用于所选产品的参数、设置和首选项,以及云基础架构的设置。您必须更新此文件以更改默认值,并为集群使用任何高级配置。
Some products might have dependencies. For details, refer to Automation Suite products.
要编辑 input.json,您可以在客户端计算机上使用自己喜欢的文本编辑器。
下表描述了必须更新以正确配置 Automation Suite 的主要input.json参数。
| 常规参数 | 描述 |
|---|---|
kubernetes_distribution | 您使用的 Kubernetes 发行版。 对于 OpenShift 上的 Automation Suite,值为openshift 。 |
install_type | 确定是以在线模式还是离线模式部署集群。如果未指定,则集群将以在线模式部署。要在离线模式下部署集群,您必须将 install_type 参数的值显式设置为 offline。可能的值: online 或 offline默认值: online |
registries | 用于为 UiPath™ 产品和 Automation Suite 拉取 Docker 映像和 Helm 图表的 URL。registry.uipath.com |
istioMinProtocolVersion | Istio 接受用于安全通信的最低 TLS 协议版本。 可以设置为TLSV1_2或TLSV1_3 。 |
fqdn | 用于访问产品的完全限定域名。 确保 Istio Ingress 可以访问 FQDN。 |
admin_username | 您要设置为主机组织管理员的用户名。 |
admin_password | 要设置的主机管理员密码。 |
profile | 默认值,不可更改: - ha :多节点 HA 就绪生产配置文件。 |
network | Enables IPv4/IPv6 operation for the cluster networking stack used by Automation Suite. For details, refer to Networking. |
telemetry_optout | true 或false - 用于选择不将遥测数据发送回 UiPath™。默认情况下,它设置为false 。如果要选择退出,请设置为true 。 |
fips_enabled_nodes | 指示是否要在计划安装 Automation Suite 的节点上启用 FIPS 140-2。 可能的值为true和false 。 |
storage_class | 指定用于 PV 配置的存储类。 此存储类必须支持多个副本,以实现最佳高可用性,并拥有备份功能。 For details, refer to the Block storage section. |
storage_class_single_replica | 提供用于 PV 配置的存储类。 对于不需要高可用性的组件,此存储类可以具有单个副本。 该存储类不能具有备份功能。 有关详细信息,请参阅文件存储部分。 storage_class_single_replica值可以与storage_class值相同。 |
storage_class_name_with_rwx_support | 指定支持 ReadWriteMany (RWX) 访问模式的存储类。此字段可确保需要共享持久卷的组件使用正确的已启用 RWX 的存储。 如果启用了 Studio Web 或 ECS,则此字段不能为空。如果留空,则系统会在验证期间引发错误。 对于全新安装,请提供具有 RWX(ReadWriteMany)支持的存储类名称。 为了使用 Studio Web 从 2.2510.0 之前的版本升级,请使用与 storage_class_single_replica中指定的相同的存储类名称,确保其支持 RWX 访问模式。 |
exclude_components | 使用此参数可防止安装非必要组件。 有关详细信息,请参阅自带组件。 |
namespace | 指定要安装 Automation Suite 的命名空间。 For details, refer to Custom namespace configuration. |
argocd.application_namespace | 计划安装的应用程序的命名空间。 理想情况下,这应与计划安装 Automation Suite 的命名空间相同。 |
argocd.project | 部署 Automation Suite 所需的 ArgoCD 项目。 仅当您要使用共享或全局 ArgoCD 实例而不是专用的 ArgoCD 实例时,这才是必需的。 |
workload_resources | 为uipathctl创建的工作负载配置 CPU 和内存请求和限制。有关详细信息,请参阅“为 uipathctl 创建的工作负载配置资源请求和限制” 。 |
有关配置示例,请参阅input.json 示例。
UiPath™ 产品
You can enable and disable products in Automation Suite at the time of installation and at any point post-installation. For details on each product configuration, refer to Managing products.
Orchestrator 示例:
"orchestrator": {
"enabled": true,
"external_object_storage": {
"bucket_name": "uipath-as-orchestrator"
},
"testautomation": {
"enabled": true
},
"updateserver": {
"enabled": true
}
"orchestrator": {
"enabled": true,
"external_object_storage": {
"bucket_name": "uipath-as-orchestrator"
},
"testautomation": {
"enabled": true
},
"updateserver": {
"enabled": true
}
自带组件
Automation Suite 允许您使用自己的 Gatekeeper 和 OPA 策略、Cert Manager、Istio、监控、日志记录组件等。如果您选择排除这些组件,请在安装 Automation Suite 之前确保它们在集群中可用。
- 有关可选组件列表和职责矩阵,请参阅Automation Suite 堆栈。
- Make sure to review the compatibility matrix for versions that are validated with Automation Suite.
以下示例显示了已排除组件的列表。您可以删除要让 Automation Suite 配置的组件。
"exclude_components": [
"argocd",
"monitoring",
"istio",
"istio-configure",
"logging",
"gatekeeper",
"network-policies",
"velero",
"alerts",
"cert-manager",
"external-secrets"
]
"exclude_components": [
"argocd",
"monitoring",
"istio",
"istio-configure",
"logging",
"gatekeeper",
"network-policies",
"velero",
"alerts",
"cert-manager",
"external-secrets"
]
排除 Istio
如果您自带 Istio 组件,请确保在input.json文件中包含 Istio 网关中的gateway_selector标签。从 Automation Suite 2.2510.2 开始,您还可以在input.json的ingress部分中设置istio_gateway_service_name参数,以配置 Istio 入口网关服务名称。有关详细信息,请参阅OpenShift input.json 示例。
要查找网关选取器标签,请执行以下步骤:
- 通过运行
oc get pods -n <istio-system>命令列出<istio-system>命名空间中的所有 Pod。 - 查找适用于您的 Istio 网关部署的网关。
如果您计划自行安装 WASM 插件,并且希望避免为 Automation Suite 安装程序提供对<istio-system>命名空间的写入权限,则必须将istio-configure组件添加到exclude_components列表中。
不包括证书管理器
如果您选择使用自己的证书管理器,并且 TLS 证书由私有或非公共 CA 颁发,则必须手动将叶证书和中间 CA 证书包含在 TLS 证书文件中。如果是公共 CA,客户端系统将自动信任它们,您无需采取进一步的措施。
没有集群角色
如果您仅向 Automation Suite 安装程序授予了命名空间作用域的权限,而没有任何集群角色,则您必须使用自己的组件。在此流程中,安装程序无法部署或管理创建集群范围资源的组件,因此您必须自行在集群中配置这些组件并将其排除。有关完整权限模型,请参阅“在不带集群角色的情况下授予安装权限” 。
将以下内容添加到 input.json:
- 列出您在
exclude_components中自行提供的组件。 - 将
telemetry_optout设置为true。无法在此流程中启用遥测,因为它需要uipathadmin没有的集群范围的权限。
{
"exclude_components": [
"argocd",
"istio",
"istio-configure",
"logging",
"monitoring",
"gatekeeper",
"velero",
"alerts",
"cert-manager",
"network-policies",
"external-secrets"
],
"telemetry_optout": true
}
{
"exclude_components": [
"argocd",
"istio",
"istio-configure",
"logging",
"monitoring",
"gatekeeper",
"velero",
"alerts",
"cert-manager",
"network-policies",
"external-secrets"
],
"telemetry_optout": true
}
证书配置
如果安装时未提供证书,则安装程序将创建自行颁发的证书并在集群中对这些证书进行配置。
只有在安装期间授予 Automation Suite 安装程序管理员权限时,才能在安装时创建证书。 如果您无法向安装程序授予管理员权限,则必须自行创建和管理证书。
有关如何获取证书的详细信息,请参阅“管理证书”。
请务必指定证书文件的绝对路径。运行 pwd 以获取放置文件目录的路径,并将证书文件名附加到 input.json 中。
| 参数 | 描述 |
|---|---|
server_certificate.ca_cert_file | 证书颁发机构证书的绝对路径。此证书颁发机构是对 TLS 证书进行签名的机构。CA 捆绑包必须仅包含用于对 TLS 证书进行签名的链证书。链式证书上限为九个证书。 如果您使用的是自签名证书,则需要指定先前创建的 rootCA.crt 的路径。如果要安装程序生成该路径,请留空。 |
server_certificate.tls_cert_file | TLS 证书的绝对路径(server.crt 是自签名证书)。如果要安装程序生成该路径,请留空。如果您自己提供证书,则 server.crt文件必须包含整个链,如以下示例所示:-----server cert----------root ca chain----- |
server_certificate.tls_key_file | 证书密钥的绝对路径(server.key 是自签名证书)。如果要安装程序生成该路径,请留空。 |
identity_certificate.token_signing_cert_file | 用于对令牌进行签名的身份令牌签名证书的绝对路径(identity.pfx 是自签名证书)。如果您希望安装程序使用服务器证书生成身份证书,请留空。 |
identity_certificate.token_signing_cert_pass | 导出身份令牌签名证书时设置的纯文本密码。 |
additional_ca_certs | 包含其他 CA 证书的文件的绝对路径,作为 Automation Suite 的一部分运行的所有服务均会信任这些证书。文件中的所有证书均必须为有效的 PEM 格式。例如,如果证书不是由公共证书颁发机构颁发,则需要提供包含 SQL Server CA 证书的文件。 |
基础架构先决条件
您必须提供在 Azure 或 AWS 上配置的先决条件的配置详细信息。有关input.json参数要求,请参阅以下“先决条件”部分:
- SQL database (mandatory)
- Caching (mandatory)
- Storage (mandatory)
- Proxy configuration (optional)
外部对象存储配置
常规配置
Automation Suite 允许您使用自己的外部存储提供程序。您可以从以下存储提供程序中进行选择:
- Azure
- AWS
- 兼容 S3
您可以通过以下方式之一配置外部对象存储:
- 在安装过程中;
- 安装后,使用
input.json文件。
- 为了使 Automation Suite 在使用预签名 URL 时正常运行,您必须确保可从 Automation Suite 集群、浏览器和所有计算机(包括工作站和机器人计算机)访问外部对象存储。
- 只能在 2014 年 1 月 30 日之后创建的、部署在任何区域中的 Automation Suite 存储桶上启用密钥管理服务器端加密服务 (SSE-KMS)。SSE-KMS 功能需要纯 SignV4 API。由于与 SignV2 向后兼容,2014 年 1 月 30 日之前创建的区域不使用纯 SignV4 API。因此,SSE-KMS 仅在使用 SignV4 进行通信的区域中起作用。要了解配置各个区域的时间,请参阅AWS 文档。
如果使用私有端点访问容器,则必须在input.json文件中添加fqdn参数,并将私有端点指定为值。
下表列出了可用于配置每个外部对象存储提供程序的 input.json 参数:
| 参数 | Azure | AWS | 兼容 S3 | 描述 |
|---|---|---|---|---|
external_object_storage.enabled | ✅ | ✅ | ✅ | 指定是否要使用自己的对象存储。 可能的值: true和false 。 |
external_object_storage.create_bucket | ✅ | ✅ | ✅ | 指定是否要配置存储桶。 可能的值: true和false 。 |
external_object_storage.storage_type | ✅ | ✅ | ✅ | 指定要配置的存储提供程序。该值区分大小写。 可能的值: azure和s3 。许多 S3 对象存储要求将 CORS 设置为来自 Automation Suite 集群的所有流量。您必须在对象存储级别配置 CORS 策略,以允许使用集群的 FQDN。 |
external_object_storage.fqdn | ❌ | ✅ | ✅ | 指定 S3 服务器的 FQDN。 对于 AWS 实例和非实例配置文件为必需。 |
external_object_storage.port | ❌ | ✅ | ✅ | 指定 S3 端口。 对于 AWS 实例和非实例配置文件为必需。 |
external_object_storage.region | ❌ | ✅ | ✅ | 指定托管存储桶的 AWS 区域。 对于 AWS 实例和非实例配置文件为必需。 |
external_object_storage.access_key | ❌ | ✅ | ✅ | 指定 S3 帐户的访问密钥。 对于 AWS 非实例配置文件为必需。 |
external_object_storage.secret_key | ❌ | ✅ | ✅ | 指定 S3 帐户的密钥。 对于 AWS 非实例配置文件为必需。 |
external_object_storage.use_instance_profile | ❌ | ✅ | ✅ | 指定是否要使用实例配置文件。AWS 身份和访问管理 (IAM) 实例配置文件可为在 Amazon Elastic Compute Cloud (EC2) 实例上运行的应用程序或服务授予对 AWS 资源的安全访问权限。如果您选择 AWS S3,则实例配置文件允许 EC2 实例与 S3 存储桶交互,而无需将显式 AWS 凭据(例如访问密钥)存储在实例上。 |
external_object_storage.bucket_name_prefix1 | ❌ | ✅ | ✅ | 指定存储桶名称的前缀。 对于 AWS 非实例配置文件为可选。 |
external_object_storage.bucket_name_suffix1 | ❌ | ✅ | ✅ | 指定存储桶名称的后缀。 对于 AWS 非实例配置文件为可选。 |
external_object_storage.account_key | ✅ | ❌ | ❌ | 指定 Azure 帐户密钥。 |
external_object_storage.account_name | ✅ | ❌ | ❌ | 指定 Azure 帐户名称。 |
external_object_storage.azure_fqdn_suffix | ✅ | ❌ | ❌ | 指定 Azure FQDN 后缀。 可选参数。 |
1配置外部对象存储时,您必须遵循提供程序为bucket_name_prefix和bucket_name_suffix提供的命名规则和约定。除此之外,后缀和前缀的总长度不得超过 25 个字符,并且您不得以连字符 ( - ) 作为前缀结尾或后缀开头,因为我们已经为您自动添加了字符。
为确保与 Automation Suite 进行安全且兼容的通信,兼容 S3 的对象存储必须支持以下一个或多个安全 TLS 密码套件:
- TLS 1.3:
TLS_AES_128_GCM_SHA256TLS_AES_256_GCM_SHA384TLS_CHACHA20_POLY1305_SHA256
- TLS 1.2:
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHATLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHATLS_ECDHE_RSA_WITH_AES_128_CBC_SHATLS_ECDHE_RSA_WITH_AES_256_CBC_SHATLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
受支持的密码套件列表可能会随着时间的推移而不断变化,以与 Go 密码库中的安全最佳实践和更新保持一致。有关最新列表,请参阅Go 文档。
特定于产品的配置
您可以使用“常规配置”部分中描述的参数来更新 Automation Suite 的常规配置。这意味着所有已安装的产品将共享相同的配置。
如果要以不同方式配置一个或多个产品,可以覆盖常规配置。您只需指定要以不同方式设置外部对象存储的产品,并使用相同的参数来定义配置。请注意,所有其他已安装的产品将继续继承常规配置。
以下示例显示了如何覆盖 Orchestrator 的常规配置:
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure,aws>
"fqdn": "", // <needed in the case of aws instance and non-instance profile>
"port": 443, // <needed in the case of aws instance and non-instance profile>
"region": "",
"access_key": "", // <needed in the case of aws non instance profile>
"secret_key": "", // <needed in the case of aws non instance profile>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "",
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
},
"orchestrator": {
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure>
"fqdn": "", // <needed in the case of aws instance and non-instance profile>
"port": 443, // <needed in the case of aws instance and non-instance profile>
"region": "",
"access_key": "", // <needed in case of aws non instance profile>
"secret_key": "", // <needed in case of aws non instance profile>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "",
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
}
}
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure,aws>
"fqdn": "", // <needed in the case of aws instance and non-instance profile>
"port": 443, // <needed in the case of aws instance and non-instance profile>
"region": "",
"access_key": "", // <needed in the case of aws non instance profile>
"secret_key": "", // <needed in the case of aws non instance profile>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "",
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
},
"orchestrator": {
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure>
"fqdn": "", // <needed in the case of aws instance and non-instance profile>
"port": 443, // <needed in the case of aws instance and non-instance profile>
"region": "",
"access_key": "", // <needed in case of aws non instance profile>
"secret_key": "", // <needed in case of aws non instance profile>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "",
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
}
}
轮换 Process Mining 的 Blob 存储凭据
要轮换 Automation Suite 中 Process Mining 的 Blob 存储凭据,必须使用新凭据更新存储的密码。请参阅轮换 Blob 存储凭据。
预签名 URL 配置
您可以使用 disable_presigned_url 标志来指定是否要在全局级别禁用预签名 URL 访问。默认情况下,为整个平台启用预签名 URL。可能的值为 true 和 false。
{
"disable_presigned_url" : true
}
{
"disable_presigned_url" : true
}
- 您只能为新安装更改此参数的默认值。该操作无法撤销,也不适用于现有集群。
- 您只能将此配置应用于整个平台,无法在产品级别覆盖全局配置。
符合 OCI 的外部注册表配置
要配置符合 OCI 的外部注册表,请更新 input.json 文件中的以下参数:
| 键 | 值 |
|---|---|
registries.docker.url | 默认值: registry.uipath.com Automation Suite 用于托管容器映像的注册表 URL 或 FQDN。 |
registries.docker.username registries.docker.password | 用于从注册表中拉取 Docker 映像的身份验证信息。如果在输入文件中找到其中一个值,则在配置外部注册表时必须同时提供这两个值。 |
registries.docker.pull_secret_value | 注册表拉取密码。 此字段是可选的。 |
registries.helm.url | 默认值: registry.uipath.com Automation Suite 用于托管服务的 Helm 图表的注册表 URL 或 FQDN。 |
registries.helm.username registries.helm.password | 用于从注册表中拉取 Helm 图表的身份验证信息。如果在输入文件中找到其中一个值,则在配置外部注册表时必须同时提供这两个值。 |
registry_ca_cert | 与为注册表配置的证书相对应的 CA 文件的位置。如果注册表由您内部托管的私有证书颁发机构签名,则您必须提供该注册表项以建立信任。 |
registries.docker.pull_secret_name | 存储注册表凭据的 Kubernetes 密码的名称。使用此参数引用包含注册表身份验证信息的现有密码。 |
您可以使用不同的方法生成pull_secret_value的编码版本,包括使用 Docker 的方法。
以下配置示例显示了用于存储注册表凭据的 Kubernetes 密码定义:
apiVersion: v1
kind: Secret
metadata:
name: registry-credentials
data:
url: base64Encode(sfbrdevhelmweacr.azurecr.io)
username: base64Encode(registry-username)
password: base64Encode(registry-password)
apiVersion: v1
kind: Secret
metadata:
name: registry-credentials
data:
url: base64Encode(sfbrdevhelmweacr.azurecr.io)
username: base64Encode(registry-username)
password: base64Encode(registry-password)
以下配置示例显示了典型的符合 OCI 的注册表设置:
{
"registries": {
"docker": {
"url": "registry.domain.io",
"username": "username",
"password": "password",
"pull_secret_value": "pull-secret-value"
},
"helm": {
"url": "registry.domain.io",
"username": "username",
"password": "password"
},
"trust": {
"enabled": true,
"public_key": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFNE4vSzNzK2VXUTJHU3NnTTJNcUhsdEplVHlqRQp1UC9sd0dNTnNNUjhUZTI2Ui9TTlVqSVpIdnJKcEx3YmpDc0ZlZUI3L0xZaFFsQzlRdUU1WFhITDZ3PT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg==",
"detection_mode": false
}
},
"registry_ca_cert": "/etc/pki/ca-trust/extracted/ca-bundle.trust.crt"
}
{
"registries": {
"docker": {
"url": "registry.domain.io",
"username": "username",
"password": "password",
"pull_secret_value": "pull-secret-value"
},
"helm": {
"url": "registry.domain.io",
"username": "username",
"password": "password"
},
"trust": {
"enabled": true,
"public_key": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFNE4vSzNzK2VXUTJHU3NnTTJNcUhsdEplVHlqRQp1UC9sd0dNTnNNUjhUZTI2Ui9TTlVqSVpIdnJKcEx3YmpDc0ZlZUI3L0xZaFFsQzlRdUU1WFhITDZ3PT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg==",
"detection_mode": false
}
},
"registry_ca_cert": "/etc/pki/ca-trust/extracted/ca-bundle.trust.crt"
}
自定义命名空间配置
您可以指定单个自定义命名空间来替换默认的uipath 、 uipath-check和uipath-installer命名空间。 要定义自定义命名空间,请为可选namespace参数提供值。 如果未提供namespace参数的值,则系统会改用默认命名空间。
自定义命名空间标签配置
如果希望 UiPath 命名空间包含自定义命名空间标签,请将以下部分添加到 input.json 文件中。请务必添加您自己的标签。
"namespace_labels": {
"install-type": "aksoffline",
"uipathctlversion": "rc-10_0.1",
"updatedLabel": "rerun"
},
"namespace_labels": {
"install-type": "aksoffline",
"uipathctlversion": "rc-10_0.1",
"updatedLabel": "rerun"
},
自定义节点容错配置
如果您需要在计划安装 Automation Suite 的节点上自定义污点和容错,请使用以下标志更新 input.json。确保为 spec 字段提供适当的值。
"tolerations": [
{
"spec": {
"key": "example-key",
"operator": "Exists",
"value": "optional-value",
"effect": "NoSchedule"
}
},
{
"spec": {
"key": "example-key2",
"operator": "Exists",
"value": "optional-value2",
"effect": "NoSchedule"
}
}
]
"tolerations": [
{
"spec": {
"key": "example-key",
"operator": "Exists",
"value": "optional-value",
"effect": "NoSchedule"
}
},
{
"spec": {
"key": "example-key2",
"operator": "Exists",
"value": "optional-value2",
"effect": "NoSchedule"
}
}
]
在单个集群上安装多个 Automation Suite 实例
如果您在同一集群上安装多个 Automation Suite 实例,则需要为每个安装创建不同的input.json文件,并使用不同的资源填写 JSON 值,例如具有:
- FQDN - 每次安装必须具有不同的 FQDN。
- 命名空间 - 每次安装必须具有不同的命名空间。提供您授予了要安装 Automation Suite 的所有权限的命名空间的值。
argocd.application_namespace- 它必须与 Automation Suite 具有要安装的所有权限的命名空间相同。argocd.project- 默认。fabric.redis- 填写有关不同 Redis 安装的详细信息,无论它们位于 OpenShift 集群的内部还是外部。- SQL - 填写有关不同数据库的详细信息,无论它们位于 OpenShift 集群的内部还是外部。
sql_connection_string _template- 填写有关不同数据库的详细信息,无论它们位于 OpenShift 集群的内部还是外部。
这些不同的资源可以是 Redis 服务、数据库或命名空间。但是,在入口服务注释中,负载均衡器 IP 将是指向同一 OpenShift 集群的通用 IP。
特定于 Orchestrator 的配置
Orchestrator 可以将机器人日志保存到 Elasticsearch 服务器。您可以在 orchestrator.orchestrator_robot_logs_elastic 部分中配置此功能。如果未提供,则系统会将机器人日志保存到 Orchestrator 的数据库中。
下表列出了 orchestrator.orchestrator_robot_logs_elastic 参数:
| 参数 | 描述 |
|---|---|
orchestrator_robot_logs_elastic | Elasticsearch 配置。 |
elastic_uri | 应使用的 Elasticsearch 实例的地址。应以 URI 的形式提供。如已提供,则还需要用户名和密码。 |
elastic_auth_username | 用于身份验证的 Elasticsearch 用户名。 |
elastic_auth_password | 用于身份验证的 Elasticsearch 密码。 |
Insights 特定配置
如果启用 Insights,则用户可以包含将用于发送计划电子邮件/警示电子邮件的 SMTP 服务器配置。如果未提供,计划电子邮件和警示电子邮件将不起作用。
You can use the uipathctl command-line tool to apply configuration changes. For details, refer to the uipathctl reference guide.
insights.smtp_configuration 字段详细信息:
| 参数 | 描述 |
|---|---|
tls_version | 有效值为 TLSv1_2、TLSv1_1、SSLv23。如果不使用 TLS,则完全省略密钥。 |
from_email | 警示/计划电子邮件的发件人地址。 |
host | SMTP 服务器的主机名。 |
port | SMTP 服务器的端口 |
username | 用于 SMTP 服务器身份验证的用户名。 |
password | 用于 SMTP 服务器身份验证的密码。 |
enable_realtime_monitoring | 标记以启用 Insights 实时监控。有效值为 true、false。默认值为 false。 |
示例
"insights": {
"enabled": true,
"enable_realtime_monitoring": true,
"smtp_configuration": {
"tls_version": "TLSv1_2",
"from_email": "test@test.com",
"host": "smtp.sendgrid.com",
"port": 587,
"username": "login",
"password": "password123"
}
}
"insights": {
"enabled": true,
"enable_realtime_monitoring": true,
"smtp_configuration": {
"tls_version": "TLSv1_2",
"from_email": "test@test.com",
"host": "smtp.sendgrid.com",
"port": 587,
"username": "login",
"password": "password123"
}
}
Process Mining 特定配置
如果启用 Process Mining,我们建议用户指定一个辅助 SQL Server,作为独立于主 Automation Suite SQL Server 的数据仓库。数据仓库 SQL Server 将处于高负载状态,可以在 processmining 部分中进行配置:
| 参数 | 描述 |
|---|---|
sql_connection_str | 数据库设置为占位符的 DotNet 格式连接字符串: Initial Catalog=DB_NAME_PLACEHOLDER 。 |
airflow.metadata_db_connection_str1 | 这适用于 PostgreSQL AutomationSuite Airflow数据库。自定义 Airflow 元数据数据库位置的 Sqlalchemy PSYCOPG2 格式连接字符串: PostgreSQL:5432/DB_NAME_PLACEHOLDER 。示例: postgresql+psycopg2://testadmin:<password>@postgres.company.com:5432/DB_NAME_PLACEHOLDER您还可以使用 metadata_db_connection_str文件的全局级别的Process Mining部分中的input.json来为 Airflow 元数据库提供值。在这种情况下, airflow.metadata_db_connection_str是可选的。 |
warehouse.sql_connection_str | Processmining 数据仓库 SQL Server 的 DotNet 格式 SQL 连接字符串,其中包含数据库名称占位符: Initial Catalog=DB_NAME_PLACEHOLDER 。 |
warehouse.sqlalchemy_pyodbc_sql_connection_str | Process Mining 数据仓库 SQL Server 的 Sqlalchemy PYODBC 格式 SQL 连接字符串,其中包含数据库名称占位符: sqlServer:1433/DB_NAME_PLACEHOLDER 。 |
warehouse.master_sql_connection_str | 如果安装程序通过sql.create_db: true设置创建数据库,则必须为 Processmining 数据仓库 SQL Server 提供 DotNet 格式的主 SQL 连接字符串。 连接字符串中的数据库必须设置为master 。 |
1配置示例:
"processmining": {
"enabled": true,
"app_security_mode": "system_managed",
"airflow": {
"metadata_db_connection_str": "postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
}
}
"processmining": {
"enabled": true,
"app_security_mode": "system_managed",
"airflow": {
"metadata_db_connection_str": "postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
}
}
AutomationSuite_Airflow的 PostgreSQL 的 Process Mining 连接字符串示例
"processmining": {
"enabled": true,
"app_security_mode": "system_managed",
"airflow": {
"metadata_db_connection_str": "postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
},
"warehouse": {
"sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=AutomationSuite_Warehouse;Persist Security Info=False;User Id=testadmin;Password='<password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
"sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://testadmin:<password>@kerberossql.autosuitead.local:1433/AutomationSuite_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
"master_sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;User Id=testadmin;Password='<password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
"processmining": {
"enabled": true,
"app_security_mode": "system_managed",
"airflow": {
"metadata_db_connection_str": "postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
},
"warehouse": {
"sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=AutomationSuite_Warehouse;Persist Security Info=False;User Id=testadmin;Password='<password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
"sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://testadmin:<password>@kerberossql.autosuitead.local:1433/AutomationSuite_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
"master_sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;User Id=testadmin;Password='<password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
使用 Kerberos 身份验证时,请利用Integrated Security和Trusted_Connection参数。 通过将Integrated Security设置为true并将Trusted_Connection设置为yes ,即可将当前登录用户的凭据用于连接。 在这种情况下,您无需指定单独的用户名和密码。
为 Process Mining 数据仓库 SQL Server 配置连接字符串时,应省略 SQL Server 的命名实例。
SQL Server 命名实例不能在同一 TCP 端口上运行。 因此,仅端口号就足以区分实例。
tcp:server,1445 代替 tcp:server\namedinstance,1445。模板PYODBC 连接字符串postgresql_connection_string_template_sqlalchemy_pyodbc (用于 PostgreSQL)与您自带数据库时使用的 PYODBC 连接字符串sqlalchemy_pyodbc_sql_connection_str的名称不同。当您使用自己的数据库时,模板 SQL sql_connection_string_template和sql_connection_str的连接字符串名称也不同。
如果您使用自己的数据库,并在input.json文件的processmining部分中使用sql_connection_str或sqlalchemy_pyodbc_sql_connection_str连接字符串配置该数据库, airflow.metadata_db_connection_str模板连接字符串sql_connection_string_template和postgresql_connection_string_template_sqlalchemy_pyodbc (用于PostgreSQL)如果指定,将被忽略。
Automation Suite Robot 特定配置
Automation Suite 机器人可以使用包缓存来优化流程运行,并使其运行得更快。 NuGet 包从文件系统获取,而不是从 Internet/网络下载。 这需要至少 10GB 的额外空间,并且应分配给专用节点的主机文件系统上的文件夹。
要启用包缓存,您需要更新以下 input.json 参数:
| 参数 | 默认值 | 描述 |
|---|---|---|
packagecaching | true | 设置为 true 时,机器人使用本地缓存进行包解析。 |
packagecachefolder | /uipath_asrobots_package_cache | 存储包的无服务器代理节点上的磁盘位置。 |
如果您的集群 RBAC 策略限制节点上的 get 和 list 权限,则 Automation Suite Robot 无法自动确定最大并发作业数。在这种情况下,请配置以下 input.json 参数以显式定义限制:
| 参数 | 默认值 | 描述 |
|---|---|---|
concurrency_limit | 未设置 | 可并发运行的最大作业数。如果未设置,Automation Suite Robot 使用节点上的 get 和 list 权限根据可用节点容量自动确定此限制。 |
AI Center 特定配置
本节仅适用于 S3 端点(Azure 存储不需要)。
为使 AI Center 正常运行,您必须在input.json文件中配置aicenter.external_object_storage.port和aicenter.external_object_storage.fqdn参数。
即使已经配置了文件的external_object_storage部分,您也必须在input.json文件的aicenter部分中配置参数。
以下示例显示了 AI Center 的有效input.json配置:
"aicenter": {
"external_object_storage" {
"port": 443,
"fqdn": "s3.us-west-2.amazonaws.com"
}
},
"external_object_storage": {
"enabled": true,
"create_bucket": false,
"storage_type": "s3",
"region": "us-west-2",
"use_instance_profile": true
}
...
"aicenter": {
"external_object_storage" {
"port": 443,
"fqdn": "s3.us-west-2.amazonaws.com"
}
},
"external_object_storage": {
"enabled": true,
"create_bucket": false,
"storage_type": "s3",
"region": "us-west-2",
"use_instance_profile": true
}
...
特定于 Integration Service 的配置
主权云队列配置
在队列端点使用非标准 FQDN 后缀的主权云或国家云环境中,您可以使用input.json中integrationservices下的可选queue_config.fqdn_suffix字段覆盖默认值。
默认情况下,Integration Service 对于 AWS 使用amazonaws.com ,对于 Azure 使用core.windows.net 。
用例示例:中国 AWS ( amazonaws.com.cn )、中国 Azure ( core.chinacloudapi.cn )、Azure 美国政府 ( core.usgovcloudapi.net )。
"integrationservices": {
"queue_config": {
"fqdn_suffix": ""
}
}
"integrationservices": {
"queue_config": {
"fqdn_suffix": ""
}
}
- 如果
fqdn_suffix留空或省略该字段,则适用图表默认值:amazonaws.com适用于 AWS)或core.windows.net(适用于 Azure)。 - 如果提供了非空值,它将覆盖 AWS 和 Azure 队列 URL 的队列端点 FQDN 后缀。
- 如果在
external_object_storage中设置了azure_fqdn_suffix,则 Integration Service 会自动对队列端点后缀使用相同的值。在这种情况下,您无需单独设置queue_config.fqdn_suffix。
SQL 的服务主体身份验证
将 SQL 身份验证与 Azure Active Directory 服务主体用于数据库连接时,必须将advanced_configuration节显式添加到integrationservices中的input.json块。将your-tenant-id替换为您的 Azure 租户 ID。
"integrationservices": {
"enabled": true,
"advanced_configuration": {
"gallupx": {
"extraEnv": {
"AZURE_TENANT_ID": "your-tenant-id"
}
}
}
}
"integrationservices": {
"enabled": true,
"advanced_configuration": {
"gallupx": {
"extraEnv": {
"AZURE_TENANT_ID": "your-tenant-id"
}
}
}
}
Document Understanding 特定配置
SQL 的服务主体身份验证
将 SQL 身份验证与 Azure Active Directory 服务主体用于数据库连接时,必须将advanced_configuration节显式添加到documentunderstanding中的input.json块。将your-tenant-id替换为您的 Azure 租户 ID。
"documentunderstanding": {
"enabled": true,
"enable_sql_wi": null,
"advanced_configuration": {
"du-annotations": {
"additionalConfigs": {
"AZURE_TENANT_ID": "your-tenant-id"
}
}
},
},
"documentunderstanding": {
"enabled": true,
"enable_sql_wi": null,
"advanced_configuration": {
"du-annotations": {
"additionalConfigs": {
"AZURE_TENANT_ID": "your-tenant-id"
}
}
},
},
- UiPath™ 产品
- 自带组件
- 排除 Istio
- 不包括证书管理器
- 没有集群角色
- 证书配置
- 基础架构先决条件
- 外部对象存储配置
- 常规配置
- 特定于产品的配置
- 轮换 Process Mining 的 Blob 存储凭据
- 预签名 URL 配置
- 符合 OCI 的外部注册表配置
- 自定义命名空间配置
- 自定义命名空间标签配置
- 自定义节点容错配置
- 在单个集群上安装多个 Automation Suite 实例
- 特定于 Orchestrator 的配置
- Insights 特定配置
- Process Mining 特定配置
- Automation Suite Robot 特定配置
- AI Center 特定配置
- 特定于 Integration Service 的配置
- 主权云队列配置
- SQL 的服务主体身份验证
- Document Understanding 特定配置
- SQL 的服务主体身份验证