automation-suite
2022.4
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。
UiPath logo, featuring letters U and I in white
Automation Suite 安装指南
Last updated 2024年11月4日

AWS 部署架构

架构图



完整的组件列表

入口点

  • 主堆栈 – 主体入口点:

    • 网络堆栈
    • Uipath-sf 堆栈
  • 深度可配置堆栈

    • 网络堆栈
    • Uipath-sf 堆栈
  • Uipath-sf 堆栈

嵌套堆栈

  • Uipath-sf

    • SSL 堆栈
    • 路由堆栈
    • 服务器堆栈
    • 数据库堆栈
    • 备份堆栈
    • 管理堆栈
    • Lambda 函数 (AWS::Lambda::Function):
      • FindAMIFunction – 用于查找匹配的 AMI ID。
      • CreateInputJsonFunction – 用于创建 Automation Suite 安装程序使用的配置。
      • ComputeResourceSizeFunction – 用于根据所选服务和部署类型计算所需的最低 EC2 实例硬件配置。
    • 用于提供最低权限的 IAM 角色 (AWS::IAM::Role):
      • FindAmiLambdaRole
      • CreateInputJsonLambdaRole
      • ComputeResourceSizeLambdaRole
    • 用于存储敏感信息的密码 (AWS::SecretsManager::Secret):
      • RDSPassword
      • OrgSecret
      • PlatformSecret
      • ArgoCD 密码
      • ArgoCdUserSecret
      • InputJsonSecret
      • KubeconfigSecret
    • SSL 堆栈(可选)
  • 网络堆栈(可选)
  • 备份堆栈 (可选):

    • ClusterBackupStorage (AWS::EFS::FileSystem) – 用于存储备份的 Amazon Elastic 文件系统。
    • SharedStorageSecurityGroup (AWS::EC2::SecurityGroup) – 用于允许来自集群节点的 NFS 网络连接的安全组。
    • SharedStorageMountTargetOne (AWS::EFS::MountTarget) – 为 EFS 文件系统和第一个私有子网创建装载目标的资源。
    • SharedStorageMountTargetTwo (AWS::EFS::MountTarget) – 为 EFS 文件系统和第二个私有子网创建装载目标的资源。
    • SharedStorageMountTargetThree (AWS::EFS::MountTarget) – 为 EFS 文件系统和第三个私有子网创建装载目标的可选资源。
  • 数据库堆栈

    • RDSDBInstance (AWS::RDS::DBInstance) – Amazon RDS 数据库实例。数据库 SKU 为 db.m5.2xlarge
    • DBSubnetGroup (AWS::RDS::DBSubnetGroup) – 包含私有子网的私有子网组。
    • DbSecurityGroup (AWS::EC2::SecurityGroup) – 允许访问数据库实例的安全组。
  • 路由堆栈注意:Alb 和 Nlb 堆栈是互斥配置

    • Alb 堆栈:

      • ExternalLoadBalancer (AWS::ElasticLoadBalancingV2::LoadBalancer) – 用于分发 Automation Suite 流量的应用程序负载均衡器。它可以是内部的,也可以是面向互联网的。
      • ELBSecurityGroup (AWS::EC2::SecurityGroup) – 应用于负载均衡器的安全组。
      • HttpsTargetGroup (AWS::ElasticLoadBalancingV2::TargetGroup) – 负载均衡器的目标组。
      • HttpsListener (AWS::ElasticLoadBalancingV2::Listener) – 负载均衡器的侦听器。
    • Nlb 堆栈:

      • ExternalLoadBalancer (AWS::ElasticLoadBalancingV2::LoadBalancer) – 用于分发 Automation Suite 流量的网络负载均衡器。它可以是内部的,也可以是面向互联网的。
      • TcpTargetGroup (AWS::ElasticLoadBalancingV2::TargetGroup) – 负载均衡器的目标组。
      • TcpListener (AWS::ElasticLoadBalancingV2::Listener) – 负载均衡器的侦听器。
    • KubeLoadBalancer (AWS::ElasticLoadBalancingV2::LoadBalancer) – 用于节点注册的专用网络负载均衡器。
    • KubeApiTcpTargetGroup (AWS::ElasticLoadBalancingV2::TargetGroup) – KubeLoadBalancer 的节点注册流量的目标组。
    • KubeApiTcpListener (AWS::ElasticLoadBalancingV2::Listener) – KubeLoadBalancer 的节点注册流量的侦听器。
    • Rke2RegistrationTcpTargetGroup (AWS::ElasticLoadBalancingV2::TargetGroup) – KubeLoadBalancer 的节点注册流量的目标组。
    • Rke2RegistrationTcpListener (AWS::ElasticLoadBalancingV2::Listener) – KubeLoadBalancer 的节点注册流量的侦听器。
    • RootRecordSet (AWS::Route53::RecordSet) – FQDN 的 DNS A 记录。
    • SubdomainRecordSet (AWS::Route53::RecordSet) – FQDN 的子域的 DNS A 记录。
  • 管理堆栈

    • LifecycleAutomationLogs (AWS::Logs::LogGroup) – 用于记录来自 SSM 自动化的事件的日志组。
    • 用于提供正常节点删除的 SSM 文档 (AWS::SSM::Document) 步骤集:
      • ServerRemoveInstanceDocument
      • AgentRemoveInstanceDocument
      • UpdateAMIDocument – 更新自动调整组的 AMI ID。
    • Autoscaling Lyfecycle 挂钩 (AWS::AutoScaling::LifecycleHook) 允许我们在 EC2 实例收到实例终止事件时运行 SSM 文档:
      • ServerAsgLifeCycleHookTerminating
      • AgentAsgLifeCycleHookTerminating
    • 触发 SSM 文档执行的事件规则 (AWS::Events::Rule):
      • ServerTerminateEventRule
      • AgentTerminateEventRule
    • 运行 SSM 文档并将日志添加到日志组所需的 IAM 角色 (AWS::IAM::Role):
      • AutomationAssumeRole
      • EventsBridgeAssumeRole
    • 服务器堆栈
    • ServerLaunchConfiguration (AWS::EC2::LaunchTemplate) – 服务器节点的 EC2 实例配置。磁盘配置:
      • 操作系统磁盘 – sku gp2,容量 128GiB
      • 集群磁盘 – sku gp2,容量 300GiB
      • etcd 磁盘 – sku io1,容量 32GiB
      • 数据磁盘 – sku gp2,容量为 512GiB 或 2TiB,无论所选服务如何。
    • AgentLaunchConfiguration (AWS::EC2::LaunchTemplate) – 代理节点的 EC2 实例配置。磁盘配置:
      • 操作系统磁盘 – sku gp2,容量 128GiB
      • 集群磁盘 – sku gp2,容量 300GiB
    • GpuEnabledNode (AWS::EC2::Instance) – 可选 GPU 节点。它具有与代理相同的磁盘配置。
    • TaskMiningNode (AWS::EC2::Instance) - 可选 Task Mining 节点。仅在选择 Task Mining 服务时部署。它具有与代理相同的磁盘配置。
    • BastionHost (AWS::EC2::Instance) – 可选 EC2 实例,用于通过 SSH 连接到集群节点。它具有 t3.large 实例类型和 200GiB 的 gp2 磁盘。
    • ServerAutoScalingGroup (AWS::AutoScaling::AutoScalingGroup) – 服务器的自动调整组。
    • AgentAutoScalingGroup (AWS::AutoScaling::AutoScalingGroup) – 代理的自动调整组
    • 可选 ServiceFabricIamRole (AWS::IAM::Role),它有权执行以下操作:
      • 写入日志
      • 读取 EC2 实例配置
      • 下载 AWS 快速入门资源
      • 访问 Automation Suite 安装配置密码
      • 访问集群 kubeconfig 配置密码
    • ServiceFabricSecurityGroup (AWS::EC2::SecurityGroup) – 允许访问 UiPath 应用程序的安全组。
    • BastionSecurityGroup (AWS::EC2::SecurityGroup) – 允许通过 SSH 访问堡垒的可选安全组
    • AsgProcessModifierFunction (AWS::Lambda::Function) – 用于在创建 CF 堆栈期间修改 ASG 流程。
    • AsgProcessModificationRole (AWS::IAM::Role) – 为 AsgProcessModifierFunction 提供最低权限的 IAM 角色
    • SSM 参数 (AWS::SSM::Parameter):
      • InstanceAMIIdSSMParameter – 存储节点的 AMI ID。
      • InstanceAMIImageNameSSMParameter – 保存部署时使用或通过 UpdateAMIDocument 更新的映像名称。
    • Autoscaling Lyfecycle 挂钩 (AWS::AutoScaling::LifecycleHook),使我们能够在安装程序成功后将 EC2 实例转换为 InService 状态:
      • ServerAsgLifeCycleHookLaunching
      • AgentAsgLifeCycleHookLaunching

部署和实例类型映射

该模板会动态计算部署所需的硬件,如下所示:

  • 根据安装的服务(基本或完整产品选择),它会在集群级别设置最低要求。
  • 根据部署配置文件(多节点或单节点配置文件),它设置单个虚拟机的最低要求。
  • 根据实例在您部署区域中的可用性和上述要求选择实例类型。

下表显示了部署和可能的实例类型之间的映射关系:

部署类型

实例类型

基本单节点

c5.4xlargec5a.4xlargem5.4xlargem5a.4xlarge

完整单节点

c5a.8xlargec5.9xlargem5.8xlarge

基本多节点

c5.4xlargec5a.4xlargem5.4xlargem4.4xlarge

完整多节点

c5a.8xlargec5.9xlargem5.8xlargem5a.8xlarge
  • 架构图
  • 完整的组件列表
  • 入口点
  • 嵌套堆栈
  • 部署和实例类型映射

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。