先丢点问题小结到这里,免得忘记,有空再弄个详细教程玩,网上的教程要不就是旧版的,要不就是没说到点子上,唉。
1.服务器禁用ipV6配置.
2.找不到winutils.exe,系统变量设置了HADOOP_HOME也不行,程序中直接设定环境变量,还能省去系统配置,更方便。
System.setProperty("hadoop.home.dir","xxxxxxxxx");
3.连接不上服务器的hdfs端口
查看/etc/hosts中,主机名是否没绑定127.0.0.1或127.0.1.1,ubuntu中这是主要原因,hosts中主机名要绑定外网IP。
slaves中去掉localhost,加上所有服务器的主机名,一行一个,/etc/hosts中绑定其它服务器的主机名和对应的外网IP。
只有一台机器的话,也是推荐直接放主机名,否则复制到其它从服务器的时候,还要再改,否则"localhost"就会和下面从服务器的重叠了。
有的教程中,xml中是用IP的,但是个人认为用主机名好,然后在hosts中绑定一下。用IP的话,服务器的IP一换,要改的地方就多了,用主机名时只要改改hosts就好了。
slaves中的配置是datanode起来的关键,列出的机器,才会有datanode服务。
4.windows连接上hdfs服务器后,安全模式关闭后,可读取但是不能写操作,这是因为默认是用当前用户名去通信的,关闭权限校验?或去改当前用户名?麻烦,直接一行代码搞定!
System.setProperty("HADOOP_USER_NAME","xxxxxxxx");
Hadoop 2.4.1 设置问题小结,布布扣,bubuko.com
原文:http://www.cnblogs.com/zxub/p/3881450.html