第一次啓動Hadoop,必須先格式化namenode
#cd $HADOOP_HOME /bin
#hadoop namenode –format
如果出現錯誤,可以試着嘗試一下刪除tmp臨時目錄。
啓動Hadoop
#cd $HADOOP_HOME/bin
#./start-all.sh
如果啓動過程,報錯safemode相關的Exception
執行命令
# hadoop dfsadmin -safemode leave
然後再啓動Hadoop
終端查看集羣狀態:
#hadoop dfsadmin -report
增加一個節點:
添加新增節點的ip或host
#cd $HADOOP_HOME/bin
#./hadoop-daemon.sh start datanode
#./hadoop-daemon.sh start tasktracker
# hadoop dfsadmin -refreshNodes
在新節點上執行(如果是增加多個節點,只需在一個新節點)
#cd $HADOOP_HOME/bin
# ./start-balancer.sh
注意事項
1.必須確保slave的firewall已關閉;
2. 確保新的slave的ip已經添加到master及其他slaves的/etc/hosts中,反之也要將master及其他slave的ip添加到新的slave的/etc/hosts中
刪除節點:
<property>
<name>dfs.hosts.exclude</name>
<value>/usr/local/hadoop/conf/excludes</value>
</property>
dfs.hosts.exclude定義的文件內容爲,每個需要下線的機器,一行一個。
#hadoop dfsadmin -refreshNodes
hadoop dfsadmin -report
可以查看到現在集羣上連接的節點
正在執行Decommission,會顯示:
Decommission Status : Decommission in progress
執行完畢後,會顯示:
Decommission Status : Decommissioned
一旦完成了機器下架,它們就可以從excludes文件移除了
登錄要下架的機器,會發現DataNode進程沒有了,但是TaskTracker依然存在,需要手工處理一下
hadoop管理員常用的命令:
hadoop job –list #列出正在運行的Job
hadoop job –kill <job_id> #kill job
hadoop fsck / #檢查HDFS塊狀態,是否損壞
hadoop fsck / -delete #檢查HDFS塊狀態,刪除損壞塊
hadoop dfsadmin –report #檢查HDFS狀態,包括DN信息
hadoop dfsadmin –safemode enter | leave