使用自动终止策略 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

使用自动终止策略

自动终止策略允许您编排集群清理,而无需监控和手动终止未使用的集群。向集群添加自动终止策略时,您可以指定空闲时间,在此时间之后集群应自动关闭。

根据发布版本,Amazon EMR 使用不同的条件将集群标记为空闲。

  • 在 Amazon EMR 6.4.0 及更高版本中,当没有活动的 YARN 应用程序、没有 HDFS 利用率、没有活动的 EMR Notebooks 电脑或 EMR Studio 连接以及没有集群应用程序用户界面时,集群则标记为空闲。

    注意

    Amazon EMR 6.4.0 及更高版本支持用于检测主节点 (master node) 上的活动的集群文件:/emr/metricscollector/isbusy。当你使用集群运行 shell 脚本或非 YARN 应用程序时,您可以定期接触或更新isbusy,以告知Amazon EMR 集群不处于空闲状态。

  • 在 Amazon EMR 5.30.0 至 5.33.0 以及 6.1.0 至 6.3.0 版本中,在没有活动的 YARN 应用程序,HDFS 利用率低于 10%,且集群没有活动的 EMR Notebooks 电脑或 EMR Studio 连接时,集群标记为空闲状态。

您可以在创建集群时附加自动终止策略,也可以将策略添加到现有集群。要更改或禁用自动终止,您可以更新或删除策略。

Considerations

在使用自动终止策略之前,请注意以下功能和限制:

  • Amazon EMR 5.30.0 和 6.1.0 及更高版本支持自动终止。

  • 自动终止适用于以下 Amazon Web Services 区域 区域:美国东部(弗吉尼亚北部和俄亥俄)、美国西部(加利福尼亚北部和俄勒冈)、亚太地区(孟买、首尔、新加坡、悉尼和东京)、加拿大(中部)、欧洲(爱尔兰、法兰克福、伦敦、巴黎和斯德哥尔摩)、南美洲(圣保罗)。

  • 如果您没有指定金额,则空闲超时默认为 60 分钟(1 小时)。您可以指定最小空闲超时为 1 分钟,最长空闲超时时间为 7 天。

  • 在 Amazon EMR 6.4.0 及更高版本,当您使用 Amazon EMR 控制台创建新集群时,默认情况下,会启用自动终止。

使用自动终止的权限

在应用和管理 Amazon EMR 的自动终止策略之前,您需要以下示例 IAM 权限策略中列出的权限。

{ "Version": "2012-10-17", "Statement": { "Sid": "AllowAutoTerminationPolicyActions", "Effect": "Allow", "Action": [ "elasticmapreduce:PutAutoTerminationPolicy", "elasticmapreduce:GetAutoTerminationPolicy", "elasticmapreduce:RemoveAutoTerminationPolicy" ], "Resource": "<your-resources>" } }

附加、更新或删除自动终止策略

本部分包括从 Amazon EMR 集群附加、更新或删除自动终止策略的说明。在使用自动终止策略之前,请确保您有必要的 IAM 权限。请参阅 使用自动终止的权限

Console

在创建集群时,附加自动终止策略

  1. 通过以下链接打开 Amazon EMR 控制台:https://console.aws.amazon.com/elasticmapreduce/

  2. 选择创建集群

  3. 硬件配置下,选择自动终止

  4. 指定空闲时数和分钟数,在此之后,集群应自动终止。默认空闲时间为 1 小时。

  5. 选择适用于您的应用程序的其他设置,然后选择 Create Cluster (创建集群)

在创建 EMR Notebooks 时,附加自动终止策略

  1. 通过以下链接打开 Amazon EMR 控制台:https://console.aws.amazon.com/elasticmapreduce/

  2. 选择 Notebook instances (笔记本实例),然后选择 Create notebook instance (创建笔记本实例)

  3. 选择创建集群

  4. 选择启用自动终止,然后指定空闲时数和分钟数,之后集群应自动终止。默认空闲时间为 1 小时。

  5. 选择适用于 EMR Notebooks 的其他设置,然后选择 Create Cluster (创建集群)

在正在运行的集群上附加、更新或删除自动终止策略

  1. 通过以下链接打开 Amazon EMR 控制台:https://console.aws.amazon.com/elasticmapreduce/

  2. 选择集群,然后选择要更新的集群。

  3. 在 Cluster Details (集群详细信息) 页面上,选择 Hardware (硬件)标签。

  4. 选择或清除启用自动终止以启用或禁用该功能。如果启用自动终止,请指定空闲时数和分钟数,在此之后,集群应自动终止。

Amazon CLI

使用Amazon CLI附加或更新自动终止策略

  • 您可以使用aws emr put-auto-termination-policy命令附加或更新集群上的自动终止策略。

    以下示例指定了 3600 秒空闲时间超时。如果不指定空闲时间超时,该值默认为 1 小时。

    aws emr put-auto-termination-policy \ --cluster-id <your-cluster-id> \ --auto-termination-policy IdleTimeout=3600
    注意

    为了便于读取,包含 Linux 行继续符 (\)。它们可以通过 Linux 命令删除或使用。对于 Windows,请将它们删除或替换为脱字符 (^)。

    当你使用aws emr create-cluster命令时,您还可以为--auto-termination-policy指定值。有关在 Amazon CLI 中使用 Amazon EMR 命令的更多信息,请参阅 Amazon CLI命令参考

使用Amazon CLI删除西东终止策略

  • 使用aws emr remove-auto-termination-policy命令从集群中删除自动终止策略。有关在 Amazon CLI 中使用 Amazon EMR 命令的更多信息,请参阅 Amazon CLI命令参考

    aws emr remove-auto-termination-policy --cluster-id <your-cluster-id>