ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool

异常信息Cluster IDs not matched 集群id不匹配 :

2020-05-19 11:39:15,345 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to hadoop01/172.17.xx.xx:8020 All specified directories are failed to load.
java.io.IOException: Cluster IDs not matched: dn cid=CID-38d0b769-99b0-4e57-add1-10638db6a63e but ns cid=CID-168894a4-1c00-46c0-a574-e28a7dc23438; bpid=BP-101642548-172.17.30.68-1574504444273

多次(hdfs namenode -format),这时namenode的clusterID会重新生成,而datanode的clusterID 保持不变,就会导致以上问题。

解决方案:

1:找到hdfs-site.xml 查看 dfs.namenode.name.dir与dfs.datanode.data.dir 的value存放路径。

<property>
        <name>dfs.datanode.data.dir</name>
        <value>/data1/dfs/data,/data2/dfs/data</value>
</property>
<property>
      <name>dfs.namenode.name.dir</name>
      <value>/data0/dfs/name</value>
</property>

2: 查看namenode的clusterID, cat /data0/dfs/name/current/VERSION 

3:查看datanode的clusterID ,你会发现你的不一致,我的改过所以一致(我的是namenode clusterID是CID-38d0b769-99b0-4e57-add1-10638db6a63e,所以吧所有datanode clusterID的都改成CID-38d0b769-99b0-4e57-add1-10638db6a63e),并且修改配置的路径下所有clusterID,所有服务器都得修改。

猜你喜欢

转载自blog.csdn.net/lucklilili/article/details/106218160