创建集群需要InstanceProfile - 创建安装模块的python函数

时间:2015-06-04 21:24:30

标签: python hadoop amazon-web-services boto

我使用弹性mapreduce与boto。

一切都运转良好,但自本周以来我得到了这个错误:

InstanceProfile is required for creating cluster

我试图解决这个问题,现在我们需要为弹性地图缩小创建一个默认角色。

我使用awscli执行此操作,使用以下命令,但是没有其他方法可以执行此操作(例如使用boto)?

如果没有其他方法可以创建例如python函数,那么执行下面的3个命令?

1 - pip install awscli

2 - aws configure

3 - aws emr create-default-roles

Ater使用上面的命令我还需要在mapreduce中添加这个函数:

ami_version="2.4.9",
job_flow_role="EMR_EC2_DefaultRole",
service_role="EMR_DefaultRole"

2 个答案:

答案 0 :(得分:1)

每个区域的每个帐户只需要为EMR创建角色(例如,默认角色)。这不是需要定期执行的步骤。如果您想通过boto创建角色,可以使用IAM API(http://boto.readthedocs.org/en/latest/ref/iam.html)手动创建角色,并根据http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-iam-roles-defaultroles.html

中定义的默认策略构建角色

答案 1 :(得分:1)

运行aws emr create-default-roles以在发出aws emr create-cluster命令之前为群集创建默认角色。