我的命令:
aws emr add-steps --cluster-id j-10366NQM2PJDC --steps 类型=火花,名称= SparkWordCountApp,参数数量= [ - 部署模式,簇, - 主,纱, - CONF,spark.yarn.submit.waitAppCompletion =假, - NUM-执行人,5, - 执行-cores,5, - 执行存储器,20G,S3://wordCount.py,s3://input-bucket/inputFile.txt,s3://输出桶/],ActionOnFailure = CONTINUE
调用时发生错误(AccessDeniedException) AddJobFlowSteps操作:用户: 阿尔恩:AWS:STS :: 503059920414:假设角色/ EMR_EC2_DefaultRole / I-052a3cd61db3879d9 无权执行:elasticmapreduce:AddJobFlowSteps on 资源: ARN:AWS:elasticmapreduce:我们 - 东 - 2:503059920414:簇/ J-10366NQM2PJDC
有人可以对此有任何指示吗?我是新来的。
答案 0 :(得分:0)
您似乎正在使用实例配置文件角色EMR_EC2_DefaultRole
来调用EMR以将STEPS添加到群集。该错误表示,您的实例个人资料角色的policy
不允许访问弹性地图缩减Action
:AddJobFlowSteps。实际上,附加到此角色AmazonElasticMapReduceforEC2Role
的默认托管策略将不具有此访问权限。
因此,您需要为您的角色EMR_EC2_DefaultRole add提供一个策略,以允许使用elasticmapreduce:AddJobFlowSteps Action。