如何配置AWS EMR使其在最后一个作业完成后等待一段时间?
可以实现,具体配置方法如下
你要的需求完全可以通过EMR的**自动终止策略(Auto Termination Policy)**实现,核心是设置集群的空闲超时时间为5分钟:当最后一个作业完成后集群进入空闲状态,开始倒计时,这段时间内提交新作业会重置计时器,超时无新作业才会终止。
配置方式分三种:
1. 控制台创建集群时配置
- 进入EMR集群创建页面,在「集群配置」环节找到「自动终止」选项
- 勾选「启用自动终止」
- 将「空闲超时」设置为5分钟(对应300秒)
- 完成后续集群创建流程即可
2. AWS CLI创建集群时配置
使用create-cluster命令时添加自动终止策略参数,示例命令如下:
aws emr create-cluster \ --name "自定义集群名称" \ --release-label emr-6.15.0 \ --instance-type m5.xlarge \ --instance-count 3 \ --auto-termination-policy IdleTimeout=300 \ --use-default-roles
3. 给已运行的集群添加/修改该策略
- CLI方式:执行以下命令替换集群ID即可
aws emr put-auto-termination-policy \ --cluster-id j-XXXXXXXXX \ --auto-termination-policy IdleTimeout=300
- 控制台方式:进入目标集群详情页,找到「自动终止」选项,点击编辑后设置空闲超时为300秒
注意事项
- 空闲计时从最后一个作业步骤完成时开始,若期间提交新的作业步骤,计时器会立即重置
- 如果集群开启了「终止保护」,需要先关闭该保护才能配置自动终止策略
- 该策略仅在集群无运行中步骤时触发计时,完全匹配你需要的“作业完成后等待5分钟再终止”的场景
内容的提问来源于stack exchange,提问作者Weever
相关产品推荐
相关产品推荐

