無法啟動datanode,log提示impatiable cluster IDs
阿新 • • 發佈:2019-02-14
問題產生及其原因
datanode
資料節點無法啟動,日誌提示為cluster ID有衝突,具體為namenode
的cluster ID
與datanode
的cluster ID
不一致。
產生原因之一為,多次格式化namenode
,即多次執行過以下命令:
hdfs namenode -format
這造成namenode
cluster ID
產生更新,而原來datanode
的cluster ID
沒有發生變化,因而衝突。
以上情形的典型標誌是,第一次啟動叢集成功,後續啟動失敗。
解決方法
將datanode
的cluster ID修改為與namenode
的一致。修改後繼續按照正常的三步程式即可啟動叢集。
那麼如何修改呢?在hdfs-site.xml
找到儲存namenode
和datanode
的VERSION
檔案,將namenode
的cluster ID
覆蓋掉datanode
的VERSION
檔案中的cluster ID。需要覆蓋的內容包含主節點和從節點的datanode
的VERSION
檔案。
多說一句
一般叢集namenode
只格式化一次的,別動不動就格式化namenode
。關機記得按照正常程式關閉叢集,開機按照正常程式開啟叢集,千萬別偷懶。