AWS 使用 boto3 自动缩放创建 EMR 无法正常工作
Posted
技术标签:
【中文标题】AWS 使用 boto3 自动缩放创建 EMR 无法正常工作【英文标题】:AWS Create EMR using boto3 Autoscaling not working properly 【发布时间】:2019-05-19 19:39:57 【问题描述】:我使用 boto3 自动缩放 emr,然后使用 EMR_AutoScaling_DefaultRole
自动缩放它。自动缩放无法正常工作:
最初它会发出警告
政策正在等待附件。
最后没有给出错误
Amazon EMR 集群 j-XXXXXXXXXXXX (test_emr...) 中实例组 ig-XXXXXXXXXXXX 的 Auto Scaling 策略在 2018 年 12 月 19 日 10:03 UTC 无法附加并失败。
如何分配 Autoscaling 角色?
【问题讨论】:
重新格式化问题 【参考方案1】:除了@Harsh Bafna 的回答。您还需要为 EMR_AutoScaling_DefaultRole 角色设置信任关系策略。
"Version": "2012-10-17",
"Statement": [
"Effect": "Allow",
"Principal":
"Service": [
"application-autoscaling.amazonaws.com",
"elasticmapreduce.amazonaws.com"
]
,
"Action": "sts:AssumeRole"
]
【讨论】:
【参考方案2】:您需要将 AmazonElasticMapReduceforAutoScalingRole 策略添加到 EMR_AutoScaling_DefaultRole。
转到“IAM > Roles > EMR_AutoScaling_DefaultRole”并在权限选项卡中单击附加并添加 AmazonElasticMapReduceforAutoScalingRole。
此外,要对这些故障进行故障排除,您可以使用 CLI 中的 describe-cluster 命令。响应将包括 Auto Scaling 策略状态,如果策略附加失败,则会给出错误消息以显示失败原因。
【讨论】:
我在 IAM 中找不到“EMR_AutoScaling_DefaultRole”角色。 @GirishJambkar :您能否确保您的用户有权将角色附加到已运行的 EC2/EMR 节点。我还通过实际错误的故障排除步骤更新了答案。 @GirishJambkar 欢迎。如果它帮助您解决问题,请接受答案。 :-) 是的,绝对苛刻!!!它帮助我解决了这个问题。除此之外,我们需要设置信任关系策略,如回复中提到的 Ritesh。以上是关于AWS 使用 boto3 自动缩放创建 EMR 无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章
正在寻找将 aws pig 步骤注入已经运行的 emr 的 boto3 python 示例?
您如何使用 boto3(或其他方式)在 emr 上自动化 pyspark 作业?
使用 boto3 创建自动缩放组 amazon ec2 时出现关键错误