啟動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...