分享

Hadoop2.2.0版本多节点集群及eclipse开发环境搭建

 用勿龍潛 2014-01-27

Hadoop2.2.0版本多节点集群及eclipse开发环境搭建

鉴于部分网友在搭建hadoop2.2.0过程中遇到各种各样的问题,特记录本人搭建集群环境,以作参考。

环境:

1、虚拟机:VMware? Workstation,版本:10.0.0

2、操作系统:ubuntu-13.10

3、hadoop版本:hadoop-2.2.0下载地址

4、jdk1.6.0_45

5、本文所用两台机器分工如下:

hostnameuseripfunctions
masterhadoop192.168.234.128NameNode/SecondaryNameNode/ResouceManager
slave1hadoop192.168.234.129DataNode/NodeManager

6、登陆工具:SecureCRT Version 6.2.0

7、开发工具:eclipse-kepler

在此,虚拟机中ubuntu操作系统的安装以及设置不再赘述。

集群环境配置步骤:

1、安装jdk,并配置环境变量:

vi /etc/profile

加入下列几行(本文java安装路径为:/usr/local/java/):

  1. export JAVA_HOME=/usr/local/java/jdk1.6.0_45  
  2. export CLASSPATH=.:$JAVA_HOME/lib.tools.jar:$JAVA_HOME/lib/dt.jar  
  3. export PATH=$JAVA_HOME/bin:$PATH  

 

保存后输入:source /etc/profile 以使其生效。

验证:输入:java -version

2、安装ssh

sudo apt-get install ssh

设置local无密码登陆

安装完成后会在当前用户主目录,即这里的/home/hadoop下产生一个隐藏文件夹.ssh(ll 或者ls -a 命令可以查看隐藏文件)。如果没有这个文件,自己新建即可,命令为:mkdir .ssh。

具体步骤如下:

2.1、 进入.ssh文件夹

2.2、 ssh-keygen -t  rsa 之后一路回 车(产生秘钥)

2.3、 把id_rsa.pub 追加到授权的 key 里面去(cat id_rsa.pub >> authorized_keys)

2.4、 重启 SSH 服 务命令使其生效 :service ssh restart

此时已经可以进行ssh localhost的无密码登陆

现在可以用SecureCRT登录了,SecureCRT的会话设置如下图:



3、修改主机名(hostname)、hosts

3.1、vi /etc/hostname

改为:master

3.2、vi /etc/hosts

如下图所示:

4、关闭防火墙:

ufw disable

5、安装hadoop2.2.0

本文将下载的hadoop-2.2.tar.gz解压到了/home/hadoop路径下
5.1在master本地文件系统创建以下文件夹:

~/dfs/name

~/dfs/data

~/temp

5.2修改hadoop配置文件

1)hadoop-env.sh

修改JAVA_HOME值:

  1. export JAVA_HOME=/usr/local/java/jdk1.6.0_45  


2)、yarn-env.sh

修改JAVA_HOME值:

  1. export JAVA_HOME=/usr/local/java/jdk1.6.0_45  


3)、slaves

加入:slave1

4)、core-site.xml

  1. <configuration>  
  2.     <property>  
  3.          <name>fs.defaultFS</name>  
  4.                 <value>hdfs://master:9000</value>  
  5.     </property>  
  6.   
  7.     <property>  
  8.          <name>io.file.buffer.size</name>  
  9.          <value>131072</value>  
  10.     </property>  
  11.   
  12.     <property>  
  13.          <name>hadoop.tmp.dir</name>  
  14.          <value>file:/home/hadoop/temp</value>  
  15.          <description>Abase for other temporary directories.</description>  
  16.     </property>  
  17.   
  18.     <property>  
  19.          <name>hadoop.proxyuser.hadoop.hosts</name>  
  20.          <value>*</value>  
  21.     </property>  
  22.   
  23.     <property>  
  24.          <name>hadoop.proxyuser.hadoop.groups</name>  
  25.          <value>*</value>  
  26.     </property>  
  27.   
  28. </configuration>  

5)、hdfs-site.xml

  1. <configuration>  
  2.     <property>  
  3.     <name>dfs.namenode.secondary.http-address</name>  
  4.          <value>master:9001</value>  
  5.     </property>  
  6.   
  7.     <property>  
  8.     <name>dfs.namenode.name.dir</name>  
  9.     <value>file:/home/hadoop/dfs/name</value>  
  10.     </property>  
  11.   
  12.     <property>  
  13.         <name>dfs.datanode.data.dir</name>  
  14.         <value>file:/home/hadoop/dfs/data</value>  
  15.     </property>  
  16.   
  17.     <property>  
  18.         <name>dfs.replication</name>  
  19.         <value>3</value>  
  20.     </property>  
  21.   
  22.      <property>  
  23.         <name>dfs.webhdfs.enabled</name>  
  24.         <value>true</value>  
  25.     </property>  
  26. </configuration>  


6)、mapred-site.xml

  1. <configuration>  
  2.     <property>  
  3.         <name>mapreduce.framework.name</name>  
  4.         <value>yarn</value>  
  5.     </property>  
  6.   
  7.     <property>  
  8.         <name>mapreduce.jobhistory.address</name>  
  9.         <value>master:10020</value>  
  10.     </property>  
  11.   
  12.     <property>  
  13.         <name>mapreduce.jobhistory.webapp.address</name>  
  14.         <value>master:19888</value>  
  15.     </property>  
  16. </configuration>  

7)、yarn-site.xml

  1. <configuration>  
  2.   
  3. <!-- Site specific YARN configuration properties -->  
  4.     <property>  
  5.         <name>yarn.nodemanager.aux-services</name>  
  6.         <value>mapreduce_shuffle</value>  
  7.     </property>  
  8.   
  9.     <property>  
  10.         <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>  
  11.         <value>org.apache.hadoop.mapred.ShuffleHandler</value>  
  12.     </property>  
  13.   
  14.     <property>  
  15.         <name>yarn.resourcemanager.address</name>  
  16.         <value>master:8032</value>  
  17.     </property>  
  18.   
  19.     <property>  
  20.         <name>yarn.resourcemanager.scheduler.address</name>  
  21.         <value>master:8030</value>  
  22.     </property>  
  23.   
  24.     <property>  
  25.         <name>yarn.resourcemanager.resource-tracker.address</name>  
  26.         <value>master:8031</value>  
  27.     </property>  
  28.   
  29.     <property>  
  30.         <name>yarn.resourcemanager.admin.address</name>  
  31.         <value>master:8033</value>  
  32.     </property>  
  33.   
  34.     <property>  
  35.         <name>yarn.resourcemanager.webapp.address</name>  
  36.         <value>master:8088</value>  
  37.     </property>   
  38.   
  39. </configuration>  


 6、克隆

hadoop集群中每个机器上面的配置基本相同,所以我们先在namenode上面进行配置部署,然后再复制到其他机器,然后稍作修改即可。

 修改slave1的hostname:slave1

7、启动验证

7.1 启动hadoop

进入安装目录: cd  ~/hadoop-2.2.0/

格式化namenode:./bin/hdfs namenode –format

启动hdfs: ./sbin/start-dfs.sh

查看java进程命令:jps

此时在master上面运行的进程有:

namenode

secondarynamenode

slave1上面运行的进程有:datanode

启动yarn: ./sbin/start-yarn.sh

此时在master上面运行的进程有:

namenode

secondarynamenode

resourcemanager

slave1上面运行的进程有:

datanode

nodemanager

或者使用命令./sbin/start-all.sh


查看集群状态:./bin/hdfs dfsadmin –report


查看文件块组成:  ./bin/hdfs fsck / -files -blocks

查看HDFS:     http://master:50070

 开发环境配置:

本文是在windows环境下安装eclipse,然后连接hadoop

1、将编译好的hadoop-eclipse-plugin-2.2.0.jar插件拷贝到~\eclipse\plugins下

2、按照下图所示配置eclipse:

配置hadoop路径

打开Map/Reduce视图:

新建并编辑hadoop参数:

 3、配置完之后的eclipse:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多