首页 文章

Hadoop CDH . 文件只能复制到0个节点而不是minReplication(= 1)

提问于
浏览
1

我有72台机器的集群的问题 . 其中60个是HOT存储,12个是COLD . 当我试图将数据放入COLD Hive表 sometimes 时出现错误:

Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /user/hive/warehouse/test.db/rawlogs/dt=2016-01-31/.hive-staging_hive_2016-06-29_12-54-09_949_6553181118480369018-1/_task_tmp.-ext-10002/_tmp.001029_3 could only be replicated to 0 nodes instead of minReplication (=1).  There are 71 datanode(s) running and no node(s) are excluded in this operation.

主机FS和HDFS上都有很多可用空间 .

配置容量|使用的容量|剩余容量|使用的块池ARCHIVE 341.65 TB 56.64 TB(16.58%)267.65 TB(78.34%)56.64 TB DISK 418.92 TB 247.78 TB(59.15%)148.45 TB(35.44%)247.78 TB

我为COLD服务器定义了4个机架 .

机架:/ 50907 1节点机架:/ 50912 1节点机架:/ 50917 1节点机架:/ 80104 9节点

它是一个工作集群,我不能像stackoverflow上的类似问题所建议的那样清理所有数据 .

更新 . 我决定在集群中的所有服务器上部署更新的拓扑脚本 . 在部署之后,我在包括namenode在内的每个节点上重启了所有hadoop守护进程,但是dfsadmin -showTopology显示了旧方案 . 我需要做什么来更新集群拓扑?也许放弃某种缓存等 .

1 回答

  • 1

    请检查并尝试消除此处提到的所有8种可能的根本原因/条件 - https://wiki.apache.org/hadoop/CouldOnlyBeReplicatedTo . 只有排除了所有这些条件,并且如果您仍然无法自行解决此问题,您应该查看以下方法 .

    CAUTION: The namenode formatting will destroy data on HDFS!!.

    已经记录了解决此问题的步骤hereherehere . 因此,我只提供没有确切命令的高级步骤,因为可以在上述链接中找到这些步骤以避免重复 .

    • 停止所有Hadoop守护进程

    • 删除相关的临时文件(参见上述链接)

    • 格式化Namenode

    • 启动所有Hadoop守护进程

相关问题