hadoop進行多次 namenode format後,可能就會有啟動hadoop後datanode卻未啟動的狀況,原因是namenode format後,hadoop就會重新配置其namespaceIdc,解決方法是在datanode節點將datanode的version檔案配置修改使其與namenode的version檔案配置一致。
1.開啟namenode的version文件查看配置(通常位在$HADOOP_HOME/hadop_data/hdfs/namenode/current)
2.開啟datanode節點的version(通常位在$HADOOP_HOME/hadoop_data/hdfs/datanode/current
)將namespaceID修改使其與namenode節點的namespaceID一致(datanode的version文件可能不只一個,請在$HADOOP_HOME/hadoop_data/hdfs/datanode/
下多找幾層,若有namespaceID的將其修改,若沒有也不要特別多加上去)
3.通常修改namespaceID後應該就可以成功啟動datanode了,但可能我換過hadoop主機的IP配置,所以導致其他項目也跟著跑掉,若修改完namespaceID後仍無法順利啟動datanode請修改datanode的version文件將clusterID、blockpoolID也修改與namenode的version文件一致。