多次NameNode執行format后DataNode啟動不了解決方案


1.問題

執行start-dfs.sh后在進程中查看jps,發現NameNode啟動,但DataNode沒有

2.原因

在失敗的.log文件中看到datanode的clusterID 和 namenode的clusterID 不一致

原因可能是多次Hadoop namenode -format導致clusterID不一致

3.解決方法

1)先去hadoop路徑下的配置文件hdfs-site.xml可知dfs.namenode.name.dir的地址和dfs.datanode.data.dir的地址

默認:file://${hadoop.tmp.dir}/dfs/name、file://${hadoop.tmp.dir}/dfs/data

(/opt/module/hadoop-2.7.2/data/tmp/dfs/name、/opt/module/hadoop-2.7.2/data/tmp/dfs/data)

2)在.../name/current/VERSION 中獲得clusterID

[root@hadoop201 current]# more VERSION 
#Mon Sep 02 18:06:26 CST 2019
namespaceID=1033971221
clusterID=CID-98e754ef-ad92-49f8-88b2-6830888f2d48
cTime=0
storageType=NAME_NODE
blockpoolID=BP-1400239548-192.168.1.201-1567418785939
layoutVersion=-63

3)將clusterID修改到.../dfs/data/current/VERSION(所有啟動不了DataNode的節點都要改)

[root@hadoop201 current]# vi VERSION 
#Sun Sep 01 19:46:01 CST 2019
storageID=DS-330d79ed-7c1b-4d40-b151-81ffcadcf9f0
#clusterID=CID-ae479da3-0b1e-44b0-a383-029a213b3481
clusterID=CID-98e754ef-ad92-49f8-88b2-6830888f2d48
cTime=0
datanodeUuid=67fcc2ae-1b74-46cd-90df-336a0b1950e6
storageType=DATA_NODE
layoutVersion=-56

4)再次啟動DataNode,成功啟動

[root@hadoop201 hadoop-2.7.2]# sbin/hadoop-daemon.sh start datanode
starting datanode, logging to /opt/module/hadoop-2.7.2/logs/hadoop-root-datanode-hadoop201.com.out
[root@hadoop201 hadoop-2.7.2]# jps
11525 DataNode
10809 QuorumPeerMain
11001 NameNode
11598 Jps

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM