1. 程式人生 > >Hadoop叢集連線報錯(以及tmp目錄的設定)

Hadoop叢集連線報錯(以及tmp目錄的設定)

此問題用於解決此次異常之前叢集是正常工作的情況下可參考,若不是則需要重新檢視Hadoop的各個配置檔案

問題1:

在這裡插入圖片描述

經過查詢,解決辦法:

檢視叢集是否啟動?:
在這裡插入圖片描述
叢集關閉常出現在學習過程中,因為每天我們需要電腦關機,當我們的物理機關閉後,那麼虛擬機器裡面的叢集也會隨之關閉,在我們下次使用叢集前輸入命令就會報錯,所以我們需要重新啟動namenode和datanode

注:第一次格式化namanode後,不要總是每次啟動後就格式化namenode。最好直接啟動namenode和datanode。


問題2 :

namenode在第一啟動後,以及datanode第一次啟動後,叢集之間的聯絡通過產生的特定ID 來識別對方,但叢集關閉後,第二次啟動後,會有檔案殘留,可以通過 bin/hdfs namenode -format(或者hadoop namenode -format)對namenode進行格式化,則會重新產生一個新的namenode檔案(ID),這就會導致以前的datanode不再認識新的namenode(ID換了),因為只是格式化了namenode沒有更改datanode,導致叢集無法啟動

解決辦法:必須在格式化namenode前,刪除datanode裡面的資訊(預設存在根目錄下(/)的/tmp中(如圖),如果自己重新配置了存放目錄,那就要去自自己配置的目錄下刪除即可,一般把該目錄配置在hadoop安裝目錄下新建一個/data/tmp目錄,用來存放datanode資訊)

在這裡插入圖片描述
檢視tmp中的hadoop日誌
在這裡插入圖片描述