文件只能复制到 0 个节点而不是 1 个节点 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

文件只能复制到 0 个节点而不是 1 个节点

当将文件写入 HDFS 时,会复制到多个核心节点。当您看到此错误时,这意味着 NameNode 守护程序在 HDFS 中没有任何可用的 DataNode实例可供写入数据。换句话说,没有发生数据块复制。此错误可能是由多种问题导致的:

  • HDFS 文件系统可能已经用尽了空间。这是最有可能的原因。

  • DataNode 作业运行时实例可能不可用。

  • DataNode 实例可能已被阻止,无法与主节点通信。

  • 核心实例组中的实例可能并不可用。

  • 权限可能会缺失。例如, JobTracker 守护程序可能无权创建任务跟踪器信息。

  • DataNode 实例的预留空间设置可能不足。通过检查 dfs.datanode.du.reserved 配置设置,确定情况是否如此。

要检查此问题是否由 HDFS 磁盘空间耗尽所致,请查看中的HDFSUtilization CloudWatch指标。如果此值过高,您可以将其它核心节点添加到此集群。如果您认为您的集群可能耗尽 HDFS 磁盘空间,则可以在中设置警报, CloudWatch 以便在的HDFSUtilization值超过一定水平时提醒您。有关更多信息,请参阅 手动调整正在运行的集群的大小使用监控亚马逊 EMR 指标 CloudWatch

如果 HDFS 空间不足不是问题,请检查 DataNode 日志、 NameNode日志和网络连接是否存在其他可能阻止 HDFS 复制数据的问题。有关更多信息,请参阅 查看日志文件