UiPath Documentation
automation-suite
2023.4
false
EKS/AKS 上的 Automation Suite 安装指南
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

存储

除了 Microsoft SQL Server 外,Automation Suite 集群还需要一个存储组件来存储文件。 Automation Suite 是否需要对象存储和块/文件存储,具体取决于您选择的服务类型。

每个 Automation Suite 组件的存储空间估计值​

UiPath™ Platform 服务​

以下服务需要存储组件。 仅当您选择在 Automation Suite 安装过程中或更高版本中启用它们时,才需要使用这些功能。

服务 存储类型 用途 估计

Orchestrator

对象存储

  • NuGet 包(流程、库和文件夹订阅源)及其提取的内容文件

  • 存储桶文件,适用于使用 Orchestrator 存储提供程序的存储桶(外部提供程序上的存储桶使用客户自己的存储空间)

  • 执行介质,例如机器人屏幕截图以及作业或队列项目视频录制

  • 机器人写入 Orchestrator 系统存储的作业附件和其他数据

  • 已过期的数据导出(作业、队列、日志和审核 CSV 导出)

  • 当保留策略在没有客户提供的存储桶的情况下进行存档时,已删除的作业、队列项目和任务的保留存档

  • 已暂停或长时间运行的作业的作业持久性数据

  • 测试自动化执行附件(当启用测试自动化时)

通常情况下,包大小为 5 Mb,存储桶(如有)小于 1 Mb。成熟的企业会部署大约 10 GB 的包。包、存储桶文件和视频录制通常是对此商店增长贡献最大的因素。

Action Center

对象存储

  • 用户在文档任务中存储的文档

通常情况下,一个文档需要 0.15 Mb,要填写的表单会额外占用 0.15 Kb。 在成熟的企业中,总计可达到 4 GB。

Test Manager

对象存储

  • 用户存储的附件和屏幕截图

通常,所有文件和附件总计约为 5 GB。

Insights

Blockstore

  • 已发布的仪表板及其元数据

启用需要 2 GB,存储占用空间会随着数量的增加而增加。 完善的 Enterprise规模部署还需要几个 GB 的所有仪表板。 大约 10GB 的存储空间就足够了。

Apps

对象存储

  • 上传到 Apps 的附件

通常,数据库大约需要 5 GB,典型的复杂应用程序消耗大约 15 Mb。

AI Center

对象存储/文件存储

  • ML 包

  • 用于分析的数据集

  • 训练管道

典型的已建立安装将消耗 8 GB 的空间(安装五个包)和额外的 1 GB 的数据集。

管道可能会额外消耗 50GB 的块存储,但前提是处于主动运行状态。

Document Understanding

对象存储

  • ML 模型

  • OCR 模型

  • 已存储的文档

在成熟部署中,12GB 用于 ML 模型,17GB 用于 OCR,50GB 用于存储的所有文档。

Task Mining

对象存储

  • 分析和建议自动化模式需要用户活动数据。

应分析约 200 GB 的活动日志数据,以建议有意义的自动化。 但是,高度重复的任务可能需要更少的数据。

Automation Suite 机器人

文件存储

  • 缓存运行自动化所需的包

通常,成熟的 Enterprise 会部署大约 10 GB 的包。

Process Mining

对象存储

  • 在 SQL 仓库中运行查询所需的 SQL 文件

最小占用空间仅用于存储 SQL 文件。 一开始,大约 1 GB 的存储空间就足够了。

共享套件服务​

以下共享套件服务需要存储组件。 仅当您选择将它们作为 Automation Suite 安装的一部分进行安装时,才需要这些组件。

服务存储类型用途估计
监控块存储Kubernetes 和基础架构相关指标数据大约 100 GB,用于存储过去十天的监控数据
日志记录块存储应用程序运行日志大约 20 GB 用于保留前几天的日志

对象存储​

Automation Suite 支持以下对象存储:

Kubernetes 对象存储 支持的身份验证

EKS

Amazon S3

  • AWS 实例配置文件

  • 访问密钥和密钥

AKS

Azure 存储 (Blob)

  • 帐户密钥

此外,如果您在使用 Automation Suite 集群进行 S3 连接期间遇到任何与 CORS 相关的错误,则可能必须在存储帐户/存储桶级别启用以下 CORS 策略。

确保在以下 CORS 策略中将 {{fqdn}} 替换为 Automation Suite 集群的 FQDN。

这是 JSON 格式的 CORS 策略:

JSON

[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "POST",
            "GET",
            "HEAD",
            "DELETE",
            "PUT"
        ],
        "AllowedOrigins": [
            "https://{{fqdn}}"
        ],
        "ExposeHeaders": [
            "etag",
            "x-amz-server-side-encryption",
            "x-amz-request-id",
            "x-amz-id-2"
        ],
        "MaxAgeSeconds": 3000
    }
]
[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "POST",
            "GET",
            "HEAD",
            "DELETE",
            "PUT"
        ],
        "AllowedOrigins": [
            "https://{{fqdn}}"
        ],
        "ExposeHeaders": [
            "etag",
            "x-amz-server-side-encryption",
            "x-amz-request-id",
            "x-amz-id-2"
        ],
        "MaxAgeSeconds": 3000
    }
]

这是 XML 格式的 CORS 策略:

XML

<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>{{fqdn}}</AllowedOrigin>
   <AllowedMethod>HEAD</AllowedMethod>
   <AllowedMethod>GET</AllowedMethod>
   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>
   <AllowedHeader>*</AllowedHeader>
  <MaxAgeSeconds>3000</MaxAgeSeconds>
  <ExposeHeader>x-amz-server-side-encryption</ExposeHeader>
  <ExposeHeader>x-amz-request-id</ExposeHeader>
  <ExposeHeader>x-amz-id-2</ExposeHeader>
  <ExposeHeader>etag</ExposeHeader>
 </CORSRule>
</CORSConfiguration>
<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>{{fqdn}}</AllowedOrigin>
   <AllowedMethod>HEAD</AllowedMethod>
   <AllowedMethod>GET</AllowedMethod>
   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>
   <AllowedHeader>*</AllowedHeader>
  <MaxAgeSeconds>3000</MaxAgeSeconds>
  <ExposeHeader>x-amz-server-side-encryption</ExposeHeader>
  <ExposeHeader>x-amz-request-id</ExposeHeader>
  <ExposeHeader>x-amz-id-2</ExposeHeader>
  <ExposeHeader>etag</ExposeHeader>
 </CORSRule>
</CORSConfiguration>

配置​

要配置对象存储,请参阅。

备注:

由于容器是在 Azure 存储帐户的范围内创建的,因此建议为每项服务设置一个单独的容器。

同样,在 AWS 中,强烈建议为 Automation Suite 上安装的每项服务设置一个专用存储桶。 但是,如果存储桶是全局创建的,则在为每项服务提供专用存储桶时可能会遇到限制。 在这种情况下,您可以配置单个存储桶并将其用于所有目的。

如果您提供 make 权限,则 Automation Suite 安装程序支持创建容器/存储桶。 或者,您可以在安装之前配置所需的容器/存储桶并将其信息配置给安装程序。

存储要求​

存储要求
对象存储500 GB

The size of the objectstore depends on the size of the deployed and running automation. Therefore, it can be challenging to provide an accurate objectstore estimate initially during the installation. You can start with an objectstore size of 350 GB to 500 GB. To understand the usage of the objectstore, see Storage estimate for each Automation Suite component.

备注:
  • 随着自动化的扩展,您可能需要考虑对象存储大小的增加。

块存储​

块存储必须具有配置有 Kubernetes 存储类的 SCSI 驱动程序。

下表提供了有关块存储、存储类和配置程序的详细信息:

云/Kubernetes存储存储类配置程序
AWSEBS 卷ebs-scebs.csi.aws.com
AzureAzure 管理磁盘managed-premium

高级 LRS 磁盘
disk.csi.azure.com

配置​

您可以按照AWS和Azure的官方指南在 EKS 和 AKS 集群中创建存储类。

您必须将为集群创建的存储类的名称传递给 input.json 文件中的 storage_class 参数。

备注:
  • 有时,EKS 或 AKS 集群会安装 CSI 驱动程序并提供存储类。 如果未配置这些存储类,则必须在安装 Automation Suite 之前配置它们。
  • 您必须将块存储的存储类设为默认存储类,如以下示例所示。
示例​

以下示例显示了如何配置存储类以及如何在安装过程中将其提供给input.json文件:

配置 input.jsonStorageClass

Azure

{
  "storage_class": "managed_premium"
}
{
  "storage_class": "managed_premium"
}
{ "storage_class": "managed_premium" }
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  creationTimestamp: "2023-06-15T09:34:17Z"
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
    kubernetes.io/cluster-service: "true"
    storageclass.kubernetes.io/is-default-class: "true"
  name: managed-premium
parameters:
  cachingmode: ReadOnly
  kind: Managed
  storageaccounttype: Premium_LRS
provisioner: disk.csi.azure.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  creationTimestamp: "2023-06-15T09:34:17Z"
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
    kubernetes.io/cluster-service: "true"
    storageclass.kubernetes.io/is-default-class: "true"
  name: managed-premium
parameters:
  cachingmode: ReadOnly
  kind: Managed
  storageaccounttype: Premium_LRS
provisioner: disk.csi.azure.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: creationTimestamp: "2023-06-15T09:34:17Z" labels: addonmanager.kubernetes.io/mode: EnsureExists kubernetes.io/cluster-service: "true" storageclass.kubernetes.io/is-default-class: "true" name: managed-premium parameters: cachingmode: ReadOnly kind: Managed storageaccounttype: Premium_LRS provisioner: disk.csi.azure.com reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer

AWS

{
  "storage_class": "ebs-sc"
}
{
  "storage_class": "ebs-sc"
}
{ "storage_class": "ebs-sc" }
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ebs-sc
  annotations:
   storageclass.kubernetes.io/is-default-class: "true"
provisioner: ebs.csi.aws.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ebs-sc
  annotations:
   storageclass.kubernetes.io/is-default-class: "true"
provisioner: ebs.csi.aws.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ebs-sc annotations: storageclass.kubernetes.io/is-default-class: "true" provisioner: ebs.csi.aws.com reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer

存储要求​

配置要求
块存储50 GB

The size of the block store depends on the size of the deployed and running automation. Therefore, it can be challenging to provide an accurate estimate initially during the installation. You can start with a block storage size of 50 GB. To understand the usage of the block store, see Storage estimate for each Automation Suite component.

备注:

随着自动化的扩展,您可能需要考虑块存储大小的增加。

文件存储​

文件存储必须具有使用 Kubernetes 存储类配置的 SCSI 驱动程序。

云/Kubernetes存储存储类配置程序
AWSEFSefs-scefs.csi.aws.com
AzureAzure 文件azurefile-csi-premium*file.csi.azure.com
  • 对 AKS 上的 Studio Web 使用azurefile-csi-premium存储类。

配置​

您可以按照AWS和Azure的官方指南在 EKS 和 AKS 集群中创建存储类。

您必须将为集群创建的存储类的名称传递给 input.json 文件中的 storage_class_single_replica 参数。

备注:

有时,EKS 或 AKS 集群会安装 CSI 驱动程序并提供存储类。 如果未配置此存储类,则必须在安装 Automation Suite 之前进行配置。

示例​

以下示例显示了如何配置存储类以及如何在安装过程中将其提供给 input.json :

配置 input.json StorageClass

Azure

{
  "storage_class_single_replica": "azurefile-csi-premium"
}
{
  "storage_class_single_replica": "azurefile-csi-premium"
}
{ "storage_class_single_replica": "azurefile-csi-premium" }
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
    kubernetes.io/cluster-service: "true"
  name: azurefile-csi
mountOptions:
- mfsymlinks
- actimeo=30
- nosharesock
- dir_mode=0700
- file_mode=0700
- uid=1000
- gid=1000
- nobrl
- cache=none
parameters:
  skuName: Standard_LRS
provisioner: file.csi.azure.com
reclaimPolicy: Delete
volumeBindingMode: Immediate
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
    kubernetes.io/cluster-service: "true"
  name: azurefile-csi
mountOptions:
- mfsymlinks
- actimeo=30
- nosharesock
- dir_mode=0700
- file_mode=0700
- uid=1000
- gid=1000
- nobrl
- cache=none
parameters:
  skuName: Standard_LRS
provisioner: file.csi.azure.com
reclaimPolicy: Delete
volumeBindingMode: Immediate
允许卷扩展: true api 版本: storage.k8s.io/v1种类:StorageClass 元数据:标签:addonmanager.kubernetes.io/mode:确保存在 kubernetes.io/cluster-service:"true" 名称:azurefile-csi 装载选项:- mf符号链接 - actimeo=30 - nosharesock - dir_mode=0700 - file_mode=0700 - uid=1000 - gid=1000 - nobrl -缓存=无参数:sku名称:Standard_LRS 配置程序:file.csi .azure.com 回收策略:删除卷绑定模式:即时

AWS

{
  "storage_class_single_replica": "efs-sc"
}
{
  "storage_class_single_replica": "efs-sc"
}
{ "storage_class_single_replica": "efs-sc" }
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: efs-sc
parameters:
  basePath: /dynamic_provisioning
  directoryPerms: "700"
  fileSystemId: $(EFS_ID)
  gidRangeEnd: "2000"
  gidRangeStart: "1000"
  provisioningMode: efs-ap
provisioner: efs.csi.aws.com
reclaimPolicy: Delete
volumeBindingMode: Immediate
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: efs-sc
parameters:
  basePath: /dynamic_provisioning
  directoryPerms: "700"
  fileSystemId: $(EFS_ID)
  gidRangeEnd: "2000"
  gidRangeStart: "1000"
  provisioningMode: efs-ap
provisioner: efs.csi.aws.com
reclaimPolicy: Delete
volumeBindingMode: Immediate
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: efs-sc parameters: basePath: /dynamic_provisioning directoryPerms: "700" fileSystemId: $(EFS_ID) gidRangeEnd: "2000" gidRangeStart: "1000" provisioningMode: efs-ap provisioner: efs.csi.aws.com reclaimPolicy: Delete volumeBindingMode: Immediate

将 $(EFS_ID) 替换为您在配置基础架构时创建的实际文件共享 ID。

备注:

文件共享的存储类必须将目录和文件的必需权限设置为 700。

此外,在 Azure 中, UID 和 GID 必须设置为 1000,在 AWS 中, gidRangeStart 和 gidRangeEnd 必须分别设置为 1000 和 2000。

存储要求​

存储要求
文件存储510 GB

The size of the file store depends on the size of the deployed and running automation. Therefore, it can be challenging to provide an actual estimate initially, during the installation. However, you should expect approximately 510 GB of storage size to be enough to run ten concurrent training pipelines and for Automation Suite Robots. To understand the usage of the filestore, see Storage estimate for each Automation Suite component.

备注:

随着自动化的扩展,您可能需要考虑文件存储大小的增加。

备份和还原​

要备份 Automation Suite 集群,您需要额外的对象存储来备份集群配置和用户数据。

下表描述了支持的备份存储:

Kubernetes对象存储
EKSAWS S3
AKSAzure 存储帐户
备注:

建议使用单独的对象存储来存储备份。

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新