本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用以下命令在 Amazon EC2 上自动设置 UiPath RPA机器人 AWS CloudFormation
由 Rahul Sharad Gaikwad 博士 () 和 Tamilselvan P () AWS 创作 AWS
摘要
此模式说明了如何在亚马逊弹性计算云 (AmazonRPA) 实例上部署机器人流程自动化 (EC2) 机器人。它使用 I EC2mage Builder 管道来创建自定义 Amazon 系统映像 (AMI)。AMI是预配置的虚拟机 (VM) 映像,其中包含用于部署EC2实例的操作系统 (OS) 和预安装的软件。此模式使用AWS CloudFormation 模板在自定义版本上安装 UiPath Studio 社区版
作为此解决方案的一部分,使用基础版启动 EC2 Windows 实例AMI,并在实例上安装 UiPath Studio 应用程序。该模式使用 Microsoft 系统准备(Sysprep)工具复制自定义的 Windows 安装。之后,它会删除主机信息并AMI从实例中创建最终信息。然后,您可以使用AMI带有自己的命名约定和监控设置的最终版本,按需启动实例。
注意此模式不提供有关使用RPA机器人的任何信息。有关该信息,请参阅UiPath 文档 |
此模式提供以下自动化和优点:
应用程序部署和共享:您可以构建 Amazon EC2 AMIs 以进行应用程序部署,并通过 I EC2 mage Builder 管道在多个账户之间共享它们,该管道使用AWS CloudFormation 模板作为基础设施即代码 (IaC) 脚本。
Amazon EC2 配置和扩展: CloudFormation IaC 模板提供自定义计算机名称序列和 Active Directory 自动加入功能。
可观察性和监控:该模式设置了 Amazon CloudWatch 控制面板,以帮助您监控 Amazon EC2 指标(例如CPU和磁盘使用情况)。
RPA为您的业务带来的好处:RPA提高准确性,因为机器人可以自动、一致地执行分配的任务。 RPA还可以提高速度和生产力,因为它消除了不会增加价值的操作并可以处理重复的活动。
先决条件和限制
先决条件
一个活跃的AWS账户
AWS用于部署 CloudFormation 模板的 I@@ dentity and Access Management (IAM) 权限
IAM使用 I EC2 mage Builder 设置跨账户AMI分发的@@ 策略
架构
管理员在
ec2-image-builder.yaml
文件AMI中提供基本 Windows,然后在 CloudFormation 控制台中部署堆栈。CloudFormation 堆栈部署 EC2 Image Builder 管道,其中包括以下资源:
Ec2ImageInfraConfiguration
Ec2ImageComponent
Ec2ImageRecipe
Ec2AMI
EC2Image Builder 管道使用基础版启动一个临时 Windows EC2 实例AMI并安装所需的组件(在本例中为 UiPath Studio)。
EC2Image Builder 会删除所有主机信息,然后AMI从 Windows Server 中创建一个。
您可以使用自定义
ec2-provisioning yaml
文件更新文件AMI并根据您的要求启动多个EC2实例。您可以使用 CloudFormation 模板部署 Count 宏。此宏为 CloudFormation 资源提供了 C ount 属性,因此您可以轻松地指定多个相同类型的资源。
更新 CloudFormation
ec2-provisioning.yaml
文件中宏的名称并部署堆栈。管理员根据要求更新
ec2-provisioning.yaml
文件并启动堆栈。该模板使用 UiPath Studio 应用程序部署EC2实例。
工具
AWS 服务
AWS CloudFormation
帮助您以自动且安全的方式对基础架构资源进行建模和管理。 Amazon CloudWatch
可帮助您观察和监控云上AWS、本地和其他云上的资源和应用程序。 亚马逊弹性计算云 (Amazon EC2
) 在云中提供安全且可调整大小的计算容量。AWS您可以根据需要启动任意数量的虚拟服务器,并快速扩展或缩减它们。 EC2Image Builder
简化了在本地AWS或本地使用的虚拟机和容器镜像的构建、测试和部署。 Amazon EventBridge
可帮助您跨AWS现有系统或软件即服务 (SaaS) 应用程序大规模构建事件驱动型应用程序。 AWSIdent@@ ity and Access Management (IAM) 可帮助您安全地控制对AWS资源的访问。借IAM助,您可以集中管理权限,控制用户可以访问哪些AWS资源。您可以使用 IAM 控制对哪个用户进行身份验证 (登录) 和授权 (具有权限) 以使用资源。
AWSLambda
是一项无服务器、事件驱动的计算服务,它允许您为几乎任何类型的应用程序或后端服务运行代码,而无需预置或管理服务器。您可以从 200 多种AWS服务和 SaaS 应用程序中调用 Lambda 函数,并且只需按实际用量付费。 Amazon Simple Storage Service (Amazon S3)
是一项基于云的对象存储服务,可帮助您存储、保护和检索任意数量的数据。 AWSSystems Manager SSM 代理(代理)可帮助 Systems Manager 更新、管理和配置EC2实例、边缘设备、本地服务器和虚拟机(VMs)。
代码存储库
此模式的代码可在 GitHub UiPath RPA机器人设置中使用 CloudFormation
最佳实践
AWSAMIs每个月都会发布新的 Windows。其中包含最新的操作系统补丁、驱动程序和启动代理。我们建议您在启动新实例或构建自己的自定义镜像时使用最新AMI版本。
在镜像生成期间应用所有可用的 Windows 或 Linux 安全补丁。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
设置 EC2 Image Builder 管道。 |
| AWS DevOps |
查看 EC2 Image Builder 设置。 | EC2Image Builder 设置包括基础架构配置、分发设置和安全扫描设置。若要查看设置,请执行以下操作:
注意最佳做法是,应仅通过 CloudFormation 模板对 EC2 Image Builder 进行任何更新。 | AWS DevOps |
查看镜像管道。 | 要查看已部署的镜像管道,请执行以下操作:
| AWS DevOps |
查看 Image Builder 日志。 | EC2Image Builder 日志按 CloudWatch 日志组进行聚合。要查看日志,请执行 CloudWatch以下操作:
EC2Image Builder 日志也存储在 S3 存储桶中。若要查看存储桶中的日志,请执行以下操作:
| AWS DevOps |
将 UiPath 文件上传到 S3 存储桶。 |
| AWS DevOps |
任务 | 描述 | 所需技能 |
---|---|---|
部署计数宏。 |
如果要使用控制台,请按照上一篇长篇故事或CloudFormation 文档中的说明进行操作。 | DevOps 工程师 |
测试计数宏。 | 若要测试宏的功能,请尝试启动宏附带的示例模板。
| DevOps 工程师 |
任务 | 描述 | 所需技能 |
---|---|---|
部署 Amazon EC2 配置模板。 | 要使用 CloudFormation以下方法部署EC2映像管道:
| AWS DevOps |
查看亚马逊EC2设置。 | Amazon EC2 设置包括安全、联网、存储、状态检查、监控和标签配置。若要查看这些配置,请执行以下操作:
| AWS DevOps |
查看 CloudWatch 控制面板。 |
注意配置堆栈后,需要一段时间才能在仪表板中填充指标。 控制面板提供以下指标: | AWS DevOps |
查看关于内存和磁盘使用情况的自定义指标。 |
| AWS DevOps |
查看内存与磁盘使用情况警报。 |
| AWS DevOps |
验证快照生命周期规则。 |
| AWS DevOps |
任务 | 描述 | 所需技能 |
---|---|---|
删除堆栈。 | PoC 或试点项目完成后,我们建议您删除创建的堆栈,以确保您无需为这些资源付费。
重要堆栈删除操作开始后无法停止。堆栈进入 如果删除失败,则堆栈将处于 有关保护堆栈不被意外删除的信息,请参阅AWS CloudFormation 文档中的保护堆栈不被删除。 | AWS DevOps |
故障排除
事务 | 解决方案 |
---|---|
当你部署 Amazon EC2 配置模板时,你会收到错误消息:收到来自转换 123xxxx:: Count 的格式错误的响应。 | 这是一个已知问题。(请参阅AWS CloudFormation 宏存储库中的自定义解决方案和 PR。) |
相关资源
GitHub 存储库
AWS参考文献
在@@ AWS CloudFormation 控制台上创建堆栈(CloudFormation 文档)
故障排除 CloudFormation(CloudFormation 文档)
监控内存和磁盘指标 forAmazon EC2实例(Amazon EC2 文档)
如何使用 CloudWatch 代理在 Windows 服务器上查看 “性能监视器” 的指标?
(reAWS: post 文章)
其他参考资料