繁体   English   中英

我可以同时运行1000个AWS微实例吗?

[英]Can I run 1000 AWS micro instances simultaneously?

我有一个简单的纯C程序,它接受一个整数作为输入,运行一段时间(假设一小时),然后返回一个文本文件。 我想用1到1000的输入整数运行这个程序1000次。

目前我正在并行运行这个程序(4个处理器),需要250个小时。 该程序适合AWS微实例(我已经测试过)。 是否可以在AWS中使用1000个微实例在一小时内完成整个工作? (费用约为20美元 - 0.02美元/例)?

如果有可能,是否有人对如何做到这一点有一些指导? 如果不是,那么是否还有一个低预算的替代品呢?

非常感谢!

为了实现这一目标,您需要:

  • 创建S3存储桶以存储引导脚本,应用程序,输入数据和输出数据

  • 自定义轻量级AMI:您可能希望创建一个自定义轻量级AMI,它知道下载引导脚本

  • 引导脚本:将从S3存储桶下载您的软件,解析包含整数[1..1000]的自定义实例标记并下载任何其他数据。

  • 您的应用程序:处理过程。

  • 处理结束脚本将结果上传到另一个结果S3存储桶并终止实例 ,您可能还希望发送SNS通知通知处理状态的结束。

  • 如果您需要结果合并,您可能需要创建另一个实例并将其用作协调器,等待所有“处理结束”通知以完成处理。 在这种情况下,您可能会考虑将来使用亚马逊的Hadoop地图减少引擎,因为它将免费提供几乎所有这些繁重的工作。

您没有指定您想要执行此操作的语言,因为您用于部署程序的应用程序不必与我推荐的C#语言相同。 Web上有很多关于如何使用SDK以编程方式生成新的Amazon实例的示例。 例如:

如何在.NET中以编程方式启动Amazon EC2实例

您可以使用已存在的程序创建自己的AMI,但如果您想对其进行调整,可能最终会感到痛苦,因为它需要您重新创建整个AMI。 我建议创建一个额外的实例,或者只是将程序托管在可从公共URL访问的位置。 然后我会创建一些将提前安装在AMI上的服务,以允许我指定下载应用程序的URL以及我想要的特定实例的命令行参数。

希望这可以帮助。

默认情况下,您只能按区域生成20个实例。 你需要问亚马逊才能使用更多实例。

如果您想要低成本但不关心延迟,则应使用现场实例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM