一般在數(shù)據(jù)節(jié)點的log日志信息里能找到導致啟動不起來的原因。 1.Namenode和Datanode的NamenodeID不一致描述:一般在集群多次重新格式化HDFS之后,或者剛安裝時會碰到。日志信息如下: java.io.IOException: Incompatible namespaceIDs in /root/tmp/dfs/data: NameNode namespaceID = 1307672299; DataNode namespaceID = 389959598 解決辦法:最直接有效的辦法就是修改Datanode上的namenodeID(位于/dfs/data/current/VERSION文件中)或修改NameNode的namespaceID(位于/dfs/name/current/VERSION文件中),使其一致。 2.Datanode突然不堪重負宕掉只需重啟壞掉的Datanode或者JobTracker。當集群中的某單個節(jié)點出現(xiàn)問題,不必重新重啟整個系統(tǒng),只需重啟這個節(jié)點,然后會自動連接到整個集群里。 在壞死的節(jié)點上輸入以下命令: bin/Hadoop-daemon.sh start DataNode bin/Hadoop-daemon.sh start jobtracker 以上方法也可以用于動態(tài)加入datanode,允許用戶動態(tài)將某個節(jié)點加入集群中。 在hadoop集群中,HDFS分布式文件系統(tǒng)和mapreduce計算框架是可以獨立部署安裝的,在hadoop2中體現(xiàn)很明顯,如果只需要使用部分節(jié)點進行計算,只需要單獨啟動resourcemanager和需要使用的結(jié)點上的nodemanager即可,查找命令可以參考/hadoop2/sbin/start-yarn.sh中是如何寫的就可以找到答案了! 在hadoop2/sbin/start-yarn.sh腳本中,寫了啟動resourcemanager和所有節(jié)點上的nodemanager,所以只需要參考該腳本文件,就能得到啟動單個節(jié)點上的nodemanager的方法: hadoop2/sbin/hadoop-daemon.sh startdatanode hadoop2/sbin/yarn-daemon.sh nodemanager 然后執(zhí)行下集群HDFS的負載均衡即可完成動態(tài)添加節(jié)點了! 在hadoop1中 bin/Hadoop-daemon.sh --config ./conf start DataNode bin/Hadoop-daemon.sh --config ./conf start tasktracker
|
|
來自: 昵稱25533110 > 《待分類1》