HDFS 啟動HDFS缺少服務

2022-09-09 08:30:15 字數 2783 閱讀 7610

啟動hadoop後使用jps命令檢視程序,發現只有namenode和nodemanger。

原因:格式化兩次namenode。導致namenode和datanode中的cid不一致。

$ hadoop namenode -format

解決方法:修改namenode和datanode的cid為同乙個或者清除資料夾(先停止hadoop所有服務)。

上述方法執行完沒有結果則檢視埠號是否被占用。

檢視hadoop下的配置檔案core-site.xml內容:

$ vim /opt/hadoop2.6.5/etc/hadoop/core-site.xml

<

property

>

<

name

>hadoop.tmp.dir

name

>

<

value

value

>

property

>

$ ls

data  name  namesecondary

#name: namenode的資訊

#data: datanode的資訊

#檢視name下的version資訊

$ cat name/current/version

#fri mar 15 10:12:21 cst 2019

namespaceid=596602248

clusterid=cid-b604bc78-8f8a-4cf6-a02b-3ac257ebef93

ctime=0

storagetype=name_node

blockpoolid=bp-139131966-192.168.142.129-1552615941181

layoutversion=-60

#修改data下的clusterid

$vim data/current/version

#fri mar 15 10:37:33 cst 2019

storageid=ds-a9a026d4-3833-4086-91c4-17e68c157add

clusterid=cid-b604bc78-8f8a-4cf6-a02b-3ac257ebef93

ctime=0

datanodeuuid=b3848163-9ee4-4192-bc58-c96184c3dddd

storagetype=data_node

layoutversion=-56

啟動hadoop即可。

直接刪除臨時目錄下檔案,格式化namenode節點。

$ rm -rf /hadoop-2.6.5/tmp/

$ hadoop namenode -format

啟動hadoop即可。

#開啟日誌檔案

$ cd /hadoop-2.6.5/logs/

#日誌資訊使用 型別-使用者名稱-服務-hostname.log 的形式儲存。比如datanode節點:

caused by: j**a.net.bindexception: 位址已在使用

檢視埠是否被占用,如果被占用則殺掉對應程序即可

$ netstat -anp | grep 50090

啟動HDFS時datanode無法啟動的坑

啟動hdfs,進入sbin目錄,也可以執行.start all.sh start dfs.sh 在此之前要進行namenode的格式化 bin hdfs namenode format 格式化是個巨大的坑,慎用!當我們進行多次格式化的時候,會出現datanode無法啟動。原因在於多格式化之後,dat...

獲取hdfs (大資料)HDFS

hdfs 是 hadoop 的分布式檔案系統,主要用於離線的大檔案資料資料儲存。hdfs 架構 hdfs 其實與作業系統的檔案系統類似,hdfs 主要有兩種角色,乙個是 namenode 檔案索引 另乙個是 datanode 儲存資料 namenode 主要負責記錄乙個檔案的儲存元資料 例如 檔名 ...

HDFS集群啟動過程詳解

hdfs的啟動過程和關閉過程都經過指令碼進行了封裝,只需要執行start all.sh和stop all.sh就可以。操作較簡單。下面針對啟動階段的原理和詳細過程進行說明,對關閉過程目前還沒有調研,所以暫缺。hdfs的啟動分三步驟 下面一一描述。1.初始化過程 獲取一些必要的引數值,初始化fsima...