此错误的来源是什么?如何修复?
2015-11-29 19:40:04,670 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to anmol-vm1-new/10.0.1.190:8020. Exiting.
java.io.IOException: All specified directories are not accessible or do not exist.
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:217)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:254)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:974)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:945)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:278)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:220)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:816)
at java.lang.Thread.run(Thread.java:745)
2015-11-29 19:40:04,670 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool <registering> (Datanode Uuid unassigned) service to anmol-vm1-new/10.0.1.190:8020
2015-11-29 19:40:04,771 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool <registering> (Datanode Uuid unassigned)
答案 0 :(得分:5)
有两种可能的解决方案可以解决
<强>首先强>
您的namenode和datanode群集ID不匹配,请确保它们相同。
在名称节点中,更改位于以下位置的文件中的群集ID:
$ nano HADOOP_FILE_SYSTEM/datanode/current/VERSION
在数据节点中,您的群集ID存储在文件中:
Hadoop 1.x: $ hadoop namenode -format
Hadoop 2.x: $ hdfs namenode -format
第二名:
完全格式化namenode:
use Cake\Routing\Router;
答案 1 :(得分:3)
我遇到了同样的问题并通过以下步骤解决了这个问题:
第1步。删除hdfs
目录(对我而言,这是默认目录“/tmp/hadoop-root/
”)
rm -rf /tmp/hadoop-root/*
第2步。运行
bin/hdfs namenode -format
格式化目录
答案 2 :(得分:1)
这个的根本原因是datanode和namenode clusterID不同,请用namenode clusterID统一它们然后重新启动hadoop然后它应该被解析。
答案 3 :(得分:1)
问题出现是因为群集ID与datanode和namenode不匹配。
请按照以下步骤操作:
答案 4 :(得分:0)
问题出现是因为群集ID与datanode和namenode不匹配。
请按照以下步骤操作:
1-转到Hadoop_home /删除文件夹数据
2-创建具有anthor名称data123的文件夹
3-创建两个文件夹namenode和datanode
4 - 转到hdfs-site并经过你的路径
<name>dfs.namenode.name.dir</name>
<value>........../data123/namenode</value>
<name>dfs.datanode.data.dir</name>
<value>............../data123/datanode</value>
答案 5 :(得分:0)
有一些存储I / O错误时,可能会出现此问题。在这种情况下,VERSION文件不可用,因此显示为上述错误。
您可能需要排除hdfs-site.xml
中那些损坏的驱动器上的存储位置。
答案 6 :(得分:0)
对我来说,这很有效-
这应该再次创建当前目录,并在VERSION文件中使用正确的clusterID