首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在AWS中部署bot实例

在AWS中部署bot实例
EN

Stack Overflow用户
提问于 2018-04-27 22:30:52
回答 1查看 505关注 0票数 0

我对AWS或bot的生产部署没有经验,所以我正在寻找一些关于最佳实践的建议。

该项目是一个简单的Twitter自动化机器人,编写成一个node.js应用程序。目前,我在AWS中使用Cloud9来托管它,但我觉得这可能不是最有效的方法。

我需要的是:

  • 能够轻松地部署机器人/代码库。
  • 多个实例,这样我就可以为每个用户部署一个新实例。
  • 易于访问日志和更新。
  • 使用情况报告。
  • 能够为用户绑定到前端。

如果可能的话,我想使用AWS来熟悉这个平台,但是对于我可以合并一个简单的工作流的任何建议都是开放的。

当前部署新机器人的工作流程:

  1. 创建Cloud9 EC2实例
  2. 安装依赖关系
  3. 从存储库克隆Git
  4. 使用用户访问键编辑配置
  5. 从控制台运行bot
  6. 在后台运行

到目前为止,这是非常容易的,但我只是不知道它是否实用。谢谢你的建议!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-29 01:01:43

考虑到机器人需要不断地运行(也就是说,它不能只是按需旋转几分钟,这就排除了AWS Lambda),而且每个用户都需要自己的,我会尝试一下AWS ECS。

您的初始设置如下所示:

  1. 首先,创建码头形象运行您的机器人,并将其加载到ECR码头枢纽中。
  2. 设置ECS。我建议您使用AWS法门,这样您就不必仅仅为了运行容器而管理VPC和EC2实例。你会想要创建任务定义使用你的bot码头形象。
  3. 根据需要使用任务定义运行新任务。这可以通过AWS API、AWS SDK、AWS控制台等来完成。

更新机器人只需更新您的Docker映像和任务定义,然后重新启动任务,以便他们使用新的映像。

您也应该能够为您的ECS任务设置日志记录并使用CloudWatch进行监视/报警。

使用情况报告取决于您到底要报告什么。您可以从CloudWatch事件/度量中获得所需的所有信息,或者希望从容器中将数据发送到某种存储解决方案(RDS、DynamoDB、S3等)。

将前端绑定到机器人取决于机器人是如何设置的。例如,如果它们让REST服务器监听特定端口,那么如果它们运行在ECS上,就可以命中该端口。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50071064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档