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

查看集群状态和详细信息

创建集群后,您可以监控其状态和获取有关其执行和可能发生的错误的详细信息 (即使在集群终止后也是如此)。Amazon EMR 会将有关已终止集群的元数据保存两个月 (之后将删除) 以供您参考。无论集群是在运行中还是已终止,应用程序历史记录都会在记录后保存一周。虽然您无法从集群历史记录中删除集群,但借助 AWS Management Console,您可使用 Filter 来聚焦您关注的集群,而借助 AWS CLI,您可使用选项与 list-clusters 命令来聚焦您关注的集群。

使用 AWS Management Console查看集群状态

Amazon EMR 控制台中的 Clusters List 列出了您的账户和区域中的所有集群,包括已终止的集群。此列表将显示每个集群的 NameIDStatus、集群的 Creation time、集群已运行的 Elapsed time 以及集群中的所有 EC2 实例产生的 Normalized instance hours。此列表是起始点,旨在使您能够深入了解每个集群的详细信息以进行分析和故障排除。

查看集群信息的梗概

  • 选择 Name 下的集群链接旁的向下箭头。

    集群的行将展开以提供有关集群、硬件、步骤和引导操作的更多信息。利用此部分中的链接可深入了解具体信息。例如,单击 Steps 下的链接可访问步骤日志文件,查看与步骤关联的 JAR,深入了解步骤的作业和任务以及访问日志文件。

     集群信息

深入查看集群状态

  • 选择 Name 下的集群链接以打开该集群的集群详细信息页面。使用各个选项卡查看信息,如以下部分所述。

    使用各个选项卡查看以下信息:

     集群信息
    Tab 信息

    总结

    使用此选项卡可查看您的集群配置的基本信息,如用于与主节点进行 SSH 连接的 URL、Amazon EMR 在创建集群时安装的开源应用程序、日志在 Amazon S3 中的存储位置以及用于创建集群的 Amazon EMR 的版本。

    应用程序历史记录

    使用此选项卡可查看 YARN 应用程序详细信息。对于 Spark 作业,您可深入了解有关作业、阶段和执行程序的可用信息。有关更多信息,请参阅 查看应用程序历史记录

    监控

    使用此选项卡可查看描绘您指定的时间段内的集群操作的关键指标的图形。您可以查看集群级别数据、节点级别数据以及有关 I/O 和数据存储的信息。

    硬件

    使用此选项卡可查看有关您的集群中节点的信息,包括 EC2 实例 ID、DNS 名称和 IP 地址等。

    活动

    使用此选项卡可查看集群的事件日志。有关更多信息,请参阅 监控 CloudWatch 事件

    步骤

    使用此选项卡可查看您提交的步骤的状态和访问其日志文件。有关步骤的更多信息,请参阅 使用 CLI 和控制台执行步骤

    Configurations

    使用此选项卡可查看应用于集群的所有自定义配置对象。有关配置分类的更多信息,请参阅 Amazon EMR 版本指南 中的配置应用程序

    Bootstrap actions

    使用此选项卡可查看集群在启动时运行的任何引导操作的状态。引导操作用于自定义软件安装和高级配置。有关更多信息,请参阅 创建引导操作以安装其他软件

使用 AWS CLI 查看集群状态

以下示例说明如何使用 AWS CLI 检索集群详细信息。有关可用命令的更多信息,请参阅 Amazon EMR 的 AWS CLI 命令参考。您可以使用 describe-cluster 命令查看集群级别详细信息,包括状态、硬件和软件配置、VPC 设置、引导操作、实例组等。以下示例演示了使用 describe-cluster 命令的情景,并随后提供了 list-clusters 命令的示例。

例 查看集群状态

要使用 describe-cluster 命令,需要集群 ID。此示例演示使用它获取特定日期范围内创建的集群的列表,然后使用返回的集群 ID 之一列出有关各个集群状态的更多信息。

以下命令描述集群 j-1K48XXXXXXHCB (将替换为您的集群 ID)。

aws emr describe-cluster --cluster-id j-1K48XXXXXXHCB

您的命令的输出与以下内容类似:

{ "Cluster": { "Status": { "Timeline": { "ReadyDateTime": 1438281058.061, "CreationDateTime": 1438280702.498 }, "State": "WAITING", "StateChangeReason": { "Message": "Waiting for steps to run" } }, "Ec2InstanceAttributes": { "EmrManagedMasterSecurityGroup": "sg-cXXXXX0", "IamInstanceProfile": "EMR_EC2_DefaultRole", "Ec2KeyName": "myKey", "Ec2AvailabilityZone": "us-east-1c", "EmrManagedSlaveSecurityGroup": "sg-example" }, "Name": "Development Cluster", "ServiceRole": "EMR_DefaultRole", "Tags": [], "TerminationProtected": false, "ReleaseLabel": "emr-4.0.0", "NormalizedInstanceHours": 16, "InstanceGroups": [ { "RequestedInstanceCount": 1, "Status": { "Timeline": { "ReadyDateTime": 1438281058.101, "CreationDateTime": 1438280702.499 }, "State": "RUNNING", "StateChangeReason": { "Message": "" } }, "Name": "CORE", "InstanceGroupType": "CORE", "Id": "ig-2EEXAMPLEXXP", "Configurations": [], "InstanceType": "m4.large", "Market": "ON_DEMAND", "RunningInstanceCount": 1 }, { "RequestedInstanceCount": 1, "Status": { "Timeline": { "ReadyDateTime": 1438281023.879, "CreationDateTime": 1438280702.499 }, "State": "RUNNING", "StateChangeReason": { "Message": "" } }, "Name": "MASTER", "InstanceGroupType": "MASTER", "Id": "ig-2A1234567XP", "Configurations": [], "InstanceType": "m4.large", "Market": "ON_DEMAND", "RunningInstanceCount": 1 } ], "Applications": [ { "Version": "1.0.0", "Name": "Hive" }, { "Version": "2.6.0", "Name": "Hadoop" }, { "Version": "0.14.0", "Name": "Pig" }, { "Version": "1.4.1", "Name": "Spark" } ], "VisibleToAllUsers": true, "BootstrapActions": [], "MasterPublicDnsName": "ec2-X-X-X-X.compute-1.amazonaws.com", "AutoTerminate": false, "Id": "j-jobFlowID", "Configurations": [ { "Properties": { "hadoop.security.groups.cache.secs": "250" }, "Classification": "core-site" }, { "Properties": { "mapreduce.tasktracker.reduce.tasks.maximum": "5", "mapred.tasktracker.map.tasks.maximum": "2", "mapreduce.map.sort.spill.percent": "90" }, "Classification": "mapred-site" }, { "Properties": { "hive.join.emit.interval": "1000", "hive.merge.mapfiles": "true" }, "Classification": "hive-site" } ] } }

例 按创建日期列出集群

要检索特定日期范围内创建的集群,请使用 list-clusters 命令与 --created-after--created-before 参数。

以下命令将列出在 2014 年 10 月 9 日和 2014 年 10 月 12 日之间创建的所有集群。

aws emr list-clusters --created-after 2014-10-09T00:12:00 --created-before 2014-10-12T00:12:00

例 按状态列出集群

要按状态列出集群,使用 list-clusters 命令与 --cluster-states 参数。有效集群状态包括:STARTING、BOOTSTRAPPING、RUNNING、WAITING、TERMINATING、TERMINATED 和 TERMINATED_WITH_ERRORS。

aws emr list-clusters --cluster-states TERMINATED

您还可使用以下快捷方式参数来列出处于指定状态的所有集群:

  • --active 筛选处于 STARTING、BOOTSTRAPPING、RUNNING、WAITING 或 TERMINATING 状态的集群。

  • --terminated 筛选处于 TERMINATED 状态的集群。

  • --failed 参数筛选处于 TERMINATED_WITH_ERRORS 状态的集群。

以下命令返回相同的结果。

aws emr list-clusters --cluster-states TERMINATED
aws emr list-clusters --terminated