RHEL6 64bit
下载apache hadoop-2.6.0的二进制程序,解压到某个目录(建议在各机器上的路径相同);
根据http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/ClusterSetup.html这篇文章进行设置。该文描述的是非HA模式。因为只需HDFS,所以只需设置两个配置文件core-site.xml和hdfs-site.xml。简单配置即可(实验性的):
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://host-name-or-ip:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/root/hadoop/tmp</value> <!-- 所有目录均可修改 -->
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/root/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/root/dfs/data</value>
</property>
</configuration>
然会设置slaves文件。最后在namenode启动namenode进程,datanode启动相应datanode进程。
注意事项:
1. 15/04/15 09:08:16 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
这是lib/native中本地库有问题,直接下载的二进制hadoop的native库可以在RHEL7上使用,但在RHEL6上用不了,必须自己编译一份。
2. No Route to Host from <dn2/192.168.2.53> to <nmnode:9000> failed on socket timeout exception: java.net.NoRouteToHostException: ûÓе½Ö÷»úµÄ·ÓÉ; For more details see: http://wiki.apache.org/hadoop/NoRouteToHost
这可能是namenode上的防火墙没有关