第一次启动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