使用自定义AMI运行Amazon EMR?

use*_*258 5 c++ hadoop amazon-web-services amazon-emr amazon-ami

我需要在Amazon上运行自定义C++作为Map Reduce,并计划使用Hadoop流式处理.C++映射器可执行文件依赖于许多自定义库,其中一些构建起来非常耗时.

我希望EMR支持自定义AMI(已经有一个内置).但是,仔细查看文档后,似乎只能在预定义的映像上运行EMR:http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-cli-commands.html.

我错过了什么吗?实际上,如果只支持预定义的AMI,那么运行它的最佳选择是什么?显然,可执行文件是在s3上,但是我可以将它实际捆绑起来,这样它根本不依赖于共享库吗?

谢谢.

Esw*_*apu 1

我也在调查同样的事情。根据第一次查看文档,实现此目的的最佳选择是通过自定义引导选项。

http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-bootstrap.html

但是对于我们来说,运行自定义脚本需要 15-20 分钟。我希望有一种方法可以自定义 AMI 并将所需的软件添加到 AMI 中,而不是在每个节点启动时将其安装到它们上。