首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何启动EC2实例并按需运行任务

如何启动EC2实例并按需运行任务
EN

Stack Overflow用户
提问于 2019-01-19 04:13:22
回答 3查看 105关注 0票数 1

我们正在AWS上开发一个深度学习应用程序。模型训练的自动化是相当具有挑战性的。第一步是为训练准备数据,这涉及到从数十万个小的2D numpy数组生成一个巨大的3D numpy数组(> 100 is )。小的numpy数组以小文件的形式保存在S3存储桶中。转换后,大的numpy数组将保存到另一个S3存储桶中。训练脚本将在训练之前提取大的3Dnumpy数组。因为lambda函数有内存限制,所以我们必须手动启动一个EC2实例。

我想知道从外部启动一个EC2实例并在该实例上运行python脚本以执行数据加载和转换的最佳实践是什么?

整个工作流程可能会使用AWS step功能实现自动化。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-01-19 17:08:03

我会选择最简单的解决方案,因为这并不是那么复杂的任务(从架构的角度来看)。

为存储新的大数组的存储桶配置S3事件,一旦对象被放入存储桶中,就会触发lambda函数(如果您在同一存储桶中存储所有/不同数据,则可以更细粒度,根据prefix触发)。

在lambda函数内部,您只需启动新EC2实例并将user data脚本传递给它,该脚本将下载必要的文件并运行任务(这可以使用boto3 for Python来完成)。

在这种情况下使用CloudFormation有点过头了(我的观点)。

票数 1
EN

Stack Overflow用户

发布于 2019-01-19 04:29:19

您可以使用云形成模板中的配置集来定义步骤,在这些步骤中,您可以在启动EC2资源时执行复制或运行脚本或命令。您甚至可以暂时运行它,以便它在所有操作完成后自动关闭。

然后,您可以使用脚本或Lambda函数来执行Cloudformation堆栈

票数 0
EN

Stack Overflow用户

发布于 2019-01-19 22:56:01

你有没有考虑过使用亚马逊SageMaker?很容易配置可重复的训练任务。我很乐意听到你的反馈,并回答任何问题。

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

https://stackoverflow.com/questions/54260826

复制
相关文章

相似问题

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