Hadoop 0.21.0 集群配置小记

来源:LinuxIDC.com 作者:LinuxIDC.com
  

完成了一个三台机器的hadoop集群的配置,两台linux+一台windows7的组合,比较怪异,但毕竟是出于学习的目的,所以就尝试了不同的平台。何况hadoop本身就具有跨平台的特性。下面介绍一下整个配置的过程一些关键的地方和一些问题的解决:

使用版本:0.21.0

主要参考资料:

[1]http://hadoop.apache.org/common/docs/r0.21.0/cn/cluster_setup.html这部分中文的内容有点旧,没有针对0.20+版本进行更新

[2] http://www.linuxidc.com/Linux/2011-12/48549.htm

[3] http://www.linuxidc.com/Linux/2011-12/48550.htm

[4] http://www.linuxidc.com/Linux/2011-12/48551.htm

集群组成:

HDFS是Hadoop应用用到的一个最主要的分布式存储系统。一个HDFS集群主要由一个NameNode和很多个Datanode组成:Namenode管理文件系统的元数据,而Datanode存储了实际的数据。从任务角度,集群又由jobTracker和taskTracker组成,其中jobTracker负责调度,而taskTracker负责具体的任务的处理;jobTracker和namenode可以分别配置于不同的机器上,也可以位中同一台机器,而taskTracker和datanode最好在同一台机器上。在我这里,由于环境的限制,jobTracker和namenode一同配置在作为master的192.168.1.67上,而另外两台,66和55分为作为slave,配置datanode+tasknode。其中66为Ubuntu10.10 server,而55为win7 旗舰版。

关于配置方面

先说明下关于windows下使用hadoop的配置,因为其相对比较特殊

需要安装cygwin,具体安装方法请参考资料[2],在安装cygwin时,注意要添加openssh组件,为了方便起见,最好安装一些文本编辑器,如vim,或者nano。在安装完成cygwin之后,要配置好ssh server,参见 http://www.linuxidc.com/Linux/2011-12/48552.htm .注意 ,如果是win7,那么由于权限问题,需要我们建立一个用户来运行sshd服务,在cygwin中的命令行里都会有相应提示,大家注意看,按着做就成。 在建立该用户的时候,要注意的是,用户名和密码要和另外两台服务器的用户名密码相同,这样才方便集群管理。

如果启动hadoop出现java.lang.NoClassDefFoundError:org/apache/hadoop/util/PlatformName错误,则要修改${HADOOP_HOME}/bin/hadoop-config.sh文件中的第190行的一下的内容

JAVA_PLATFORM=`CLASSPATH=${CLASSPATH} ${JAVA} -Xmx32m ${HADOOP_JAVA_PLATFORM_OPTS} org.apache.hadoop.util.PlatformName | sed -e "s/ /_/g"`

JAVA_PLATFORM=`CLASSPATH=${CLASSPATH} ${JAVA} -Xmx32m -classpath ${HADOOP_COMMON_HOME}/hadoop-common-0.21.0.jar org.apache.hadoop.util.PlatformName | sed -e "s/ /_/g"`

参见 http://www.linuxidc.com/Linux/2011-12/48553.htm

其它一些注意事项:

在0.21版本中,${HADOOP_HOME}/conf/下的配置文件中,不再有hadoop-site.xml,由core-site.xml,hdfs-site.xml,mapred-site.xml取而代之,

在core-site中,配置fs.default.name属性,即NameNode的URI,值为 hdfs://主机名:商品/

在hdfs-site.xml中,

配置dfs.data.dir,即DataNode存放块数据的本地文件系统路径,值可以是以逗号分割的路径列表

配置dfs.name.dir,即NameNode持久存储名字空间及事务日志的本地文件系统路径。

例如

  1. <configuration>  
  2. <property>  
  3. <name>dfs.data.dirname>  
  4. <value>/data/hadoop-jobs/datavalue>  
  5. property>  
  6. <property>  
  7. <name>dfs.name.dirname>  
  8. <value>/data/hadoop-jobs/namevalue>  
  9. property>  
  10. <property>  
  11.     <name>dfs.replicationname>  
  12.     <value>1value>  
  13.         

时间:2011-12-03 14:53 来源:LinuxIDC.com 作者:LinuxIDC.com 原文链接

好文,顶一下
(2)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量