我使用弹性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"
答案 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
命令之前为群集创建默认角色。