Amazon EMR
管理指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

将集群配置为暂时性或长时间运行的集群

您可以通过暂时性进程的形式运行集群:此进程可以启动集群,加载输入数据,处理数据,存储输出结果,然后自动关闭。这是执行周期性处理任务的集群的标准模型。自动关闭集群可确保您只需按处理数据所需的时间付费。

集群的另一运行模型是长时间运行的集群。在此模型中,集群可以启动和加载输入数据。由此,您可以通过交互方式查询数据、将集群用作数据仓库,或定期处理因太大而导致每次向新集群加载数据时效率低下的数据集。在此模型中,即使队列中没有等待处理的任务,集群也会持续运行。建议您在长时间运行的集群上启用的另一个选项是终止保护。此选项可防止您的集群发生意外终止或在出现错误时终止。有关更多信息,请参阅 管理集群的终止

默认情况下,您创建的集群是长时间运行的集群。如果使用控制台中的快速创建,或者在命令行或 API 中使用 create-cluster 时不指定选项,则自动终止将被禁用。不过,使用 API 启动的集群会启用自动终止。您可以使用控制台、AWS CLI 或者在执行 RunJobFlow 操作时使用 KeepJobFlowAliveWhenNoSteps 参数以编程方式指定自动终止。

使用控制台启动暂时性集群

  1. Open the Amazon EMR console at https://console.amazonaws.cn/elasticmapreduce/.

  2. 选择 Create cluster

  3. 选择 Go to advanced options

  4. Add steps (optional) 下,选择 Auto-terminate cluster after the last step is completed

  5. 按照计划和配置集群中所述继续创建集群。

使用 AWS CLI 启动暂时性集群

使用 create-cluster 命令时指定 --auto-terminate 参数以创建暂时性集群。

  • 以下示例演示如何使用 --auto-terminate 参数。您可以键入以下命令,将 myKey 替换为您的 EC2 密钥对的名称。

    注意

    包含了 Linux 行继续符 (\) 以提高可读性。可以在 Linux 命令中删除或使用它们。对于 Windows,请删除它们或将其替换为脱字号 (^)。

    aws emr create-cluster --name "Test cluster" --release-label emr-5.14.0 \ --applications Name=Hive Name=Pig --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type m4.large --instance-count 3 --auto-terminate

注意

如果您之前未创建默认 EMR 服务角色和 EC2 实例配置文件,请先键入 aws emr create-default-roles 创建它们,然后再使用 create-cluster 命令。

有关如何在 AWS CLI 中使用 Amazon EMR 命令的更多信息,请参阅 AWS CLI 参考