如题, 这并不是一个教程, 只是收集了一些问题。
教程可以参考 http://blog.csdn.net/wangjia55/article/details/53160679
感谢网上的资源, 经过了几天终于配好了, 先是在windows上折腾, 但是datanode和namenode就是启动不了,然后, ubuntu下很快就弄好了, 问题还是出现了不少, 罗列一下:
首先 关闭防火墙, 关闭防火墙, 关闭防火墙。
问题1:jdk环境变量的设置
首先在/etc/profile中设置了环境变量 但是hadoop安装后 hadoop-env.sh 文件内也要设置一下
然后还有一个不明白的 就是我做了一个软链接 把另一个用户文件夹下的jdk安装包连接到/usr/lib/jvm下了 然后那个用户文件夹下的Jdk就真的到usr/lib/jvm下了, 但是我执行$echo JAVA_HOME 显示的是用户文件夹下的路径 但是profile写软链接的时候只有root下java才好使, 改成用户文件夹下的所有用户才都能用 而hadoop-env.sh 文件内又必须得写软链接 否则hadoop不能用
毕竟没学过Linux 我很方啊 感觉无从百度
反正不管多矛盾 我的Hadoop现在都能用了 哈哈哈哈
问题2:运行start-all.sh时,datanode没有启动, 其他的都启动了
解决办法: 到hadoop/logs/hadoop-hadoop-datanode-b2utyyomi-VPCEG18FG.log 中查看日志
发现namenode cluster ID 和 datanode cluster ID不一样
将datanode cluster ID改成和namenode cluster ID一样就可以了, 方法是到存储临时文件的地方 我的是/hadoop/tmp/dfs/data/version 把version里面的内容改一下就好了。
问题3:上传文件到hdfs中时
bin/hdfs dfs -mkdir /test1/
mkdir: Call From b2utyyomi-VPCEG18FG/127.0.1.1 to localhost:9000 failed on connection exception: java.net.ConnectException: 拒绝连接; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
解决办法: 我在这之前运行了stop-all.sh 你说搞笑不搞笑 简单粗暴地运行start-all.sh即可
问题4:搞ssh服务时, 我也弄了root用户, 但是一直明明密码是对的, 就是一直Permission denied.
解决办法:编辑/etc/ssh/sshd_config
找到Authentication
加上PermitRootLogin yes
保存
ssh localhost
输个密码
登录成功