搭建hadoop遇到的一些问题
1、今天搭建好环境后,不小心用了root管理员账号启动了start-all.sh,后来取消了,但是还是在/home/hadoop/tmp/生成了一些所有者为root的文件。
引用
2011-12-08 21:03:26,135 INFO org.apache.hadoop.hdfs.server.common.Storage: Image file of size 96 saved in 0 seconds.
2011-12-08 21:03:26,142 ERROR org.apache.hadoop.hdfs.server.namenode.FSNamesystem: FSNamesystem initialization failed.
java.io.FileNotFoundException: /home/hadoop/tmp/dfs/name/current/edits (Permission denied)
查看后,发现/home/hadoop/tmp/dfs/name/current/edits 这个文件(夹)的所有者变为‘root:root’,将文件全部删除 是一个比较快得解决方法
2、问题2 “hadoop Problem binding to :9000 : Address already in use”
这个问题是由于之前的start-all.sh 命令,root用户已经启用了9000这个端口,我用hadoop用户stop-all.sh 不能关掉这个端口,所以会提示端口已被占用。
引用
[hadoop@hhumaster ~]$ netstat -ntl | grep 9000
tcp 0 0 ::ffff:121.248.200.26:9000 :::* LISTEN
[hadoop@hhumaster ~]$ lsof -i:9000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 9302 root 37u IPv6 39077 0t0 TCP hhumaster:cslistener(LISTEN)
然后删掉改进程就可以了。
3、后来start-all.sh,又出现了这样的问题,输入jsp命令,
引用
[hadoop@hhumaster ~]$ jps
10272 Jps
9441 SecondaryNameNode
namenode 又没有启动成功,查看日志发现下面的信息:
引用
2011-07-12 00:21:42,196 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: hadoop001.sqa/10.1.1.1:9000. Already tried 0 time(s).
修改master机器的hosts文件 将127.0.0.1 name-node 这行去掉