参考网站:http://blog.csdn.net/zhangheng1225/article/details/8246785
有项目需要用到HBase,配置Hadoop集群的情况如下:
OS : Ubuntu 11.04
Hadoop
2.02
三台虚拟机IP分配如下:
192.168.128.131
master
兼slave
192.168.128.132
slave
192.168.128.133
slave
配置好后:
master结点上操作
1. bin/hadoop namenode -format
2. bin/hadoop
start-all.sh
3. 用jps 命令发现个任务启动正常(NameNode TaskTracker SecondaryNameNodeDataNode)
在两个slave结点上用jps命令发现个任务启动正常(TaskTracker
DataNode)
问题: master 结点上执行 bin/hadoop dfs -put 命令时出现如下错误:
INFO ipc.Client: Retrying connect toserver: localhost/192.168.128.131:9000. Already tried 0time(s).
INFO ipc.Client: Retrying connect toserver: localhost/192.168.128.131:9000. Alreadytried
1 time
(s)……
打开
http://master:50070
查看HDFS的情况,LiveNode结点为0 ….
查了不少资料,可能报错的原因很多吧,我的问题出在master结点上的/etc/hosts配置文件上
虚拟机重启后,系统在/etc/hosts文件中自动添加了如下两行
127.0.0.1
localhost
master
#Addedautomaticly by ubuntu 。
::1
localhost6 master
只需在每个节点的hosts文件中把这两行注释掉就可以了
#
127.0.0.1
localhost
master
#Addedautomaticly by ubuntu 。
#
::1
localhost6 master
OK ,在运行bin/hadoop dfs 命令就不报错了,打开
http://master:50070
查看HDFS的情况,LiveNode结点为3 ,说明没问题了。
第二种情况:slave节点的DataNode服务未能启动
原因:NameNode格式化后,各slave节点对应的hdfs-site.xml中配置的hdfs文件存储目录未被删除
假设hdfs-site.xml配置如下
<property>
<name>dfs.name.dir</name>
<value>/opt/hadoop/hadoopfs/name</value>#hadoop的name目录路径
<description>
</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/opt/hadoop/hadoopfs/data</value>
<description></description>
</property>
解决办法是:
1.在所有节点删除>/opt/hadoop/hadoopfs/name及>/opt/hadoop/hadoopfs/data
2.重新格式化NameNode,并启动hadoop