使用eclipse 在远程hadoop集群上在线运行和调试mapreduce程序

前提:

1.我使用的hadoop是hadoop-2.3.0-cdh5.1.0.tar

2.以下是我的hadoop核心配置文件的配置:

core-site.xml

<configuration>

                <property>

                                <name>fs.defaultFS</name>

                                <value>hdfs://master:9000</value>

                </property>

       <property>

                                <name>io.file.buffer.size</name>

                                <value>131072</value>

       </property>

       <property>

                                <name>hadoop.tmp.dir</name>

                                <value>file:/home/yinkaipeng/tmp</value>

                                <description>Abase for other temporary directories.</description>

                </property>

        <property>

               <name>hadoop.proxyuser.hduser.hosts</name>

               <value>*</value>

       </property>

                 <property>

               <name>hadoop.proxyuser.hduser.groups</name>

               <value>*</value>

       </property>

</configuration>


hdfs-site.xml

<configuration>

       <property>

                <name>dfs.namenode.secondary.http-address</name>

               <value>master:9001</value>

        </property>

         <property>

                  <name>dfs.namenode.name.dir</name>

                 <value>file:/usr/local/data/dfs/name</value>

            </property>

           <property>

                    <name>dfs.datanode.data.dir</name>

                    <value>file:/usr/local/data/dfs/data</value>

            </property>

            <property>

                     <name>dfs.replication</name>

                     <value>3</value>

             </property>

             <property>

                     <name>dfs.webhdfs.enabled</name>

                     <value>true</value>

         </property>

</configuration>

mapred-site.xml

<configuration>

                <property>

                                <name>mapreduce.framework.name</name>

                                <value>yarn</value>

                </property>

                <property>

                                <name>mapreduce.jobhistory.address</name>

                                <value>master:10020</value>

                </property>

                <property>

               <name>mapreduce.jobhistory.webapp.address</name>

               <value>master:19888</value>

       </property>

</configuration>


yarn-site.xml

<configuration>

                 <property>

               <name>yarn.nodemanager.aux-services</name>

               <value>mapreduce_shuffle</value>

        </property>

                 <property>

               <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

               <value>org.apache.hadoop.mapred.ShuffleHandler</value>

        </property>

        <property>

               <name>yarn.resourcemanager.address</name>

               <value>master:8032</value>

       </property>

                <property>

               <name>yarn.resourcemanager.scheduler.address</name>

               <value>master:8030</value>

               </property>

               <property>

                       <name>yarn.resourcemanager.resource-tracker.address</name>

                        <value>master:8031</value>

               </property>

               <property>

                       <name>yarn.resourcemanager.admin.address</name>

                        <value>master:8033</value>

               </property>

                <property>

               <name>yarn.resourcemanager.webapp.address</name>

               <value>master:8088</value>

       </property>

</configuration>

在hadoop2.0 中如果不配置zookeeper,只需将你将你的datanode加入slaves文件中即可。

hadoop集群配置好后,然后就是使用eclipse进行连接啦!

好的,我使用的是:hadoop-eclipse-plugin-2.2.0,从网上下载的。

下面开始我们开始工作。

  1. 启动hadoop集群

  2. hadoop-eclipse-plugin-2.2.0拷贝到eclipse的plugins 目录下,启动eclipse。

  3. 091612_zyDT_1755468.png

  4. 091612_3gye_1755468.png

  5. 091613_F9Pc_1755468.png

如现在就进行连接的话不会成功的。因为我们用的是Windows所以还需要进行以下步骤:

  1. 将电脑当前用户名改为hadoop的启动用户名

  2. eclipse连接hadoop源码目录,将hadoop-common-2.2.0-bin-master的bin目录考到eclipse的workspace



  3. 092623_5zTh_1755468.png

  4. 092624_o0Bx_1755468.png

  5. 092624_2v2e_1755468.png

  6. 092625_wa48_1755468.png

    注:上面hadoop目录为我从Linux系统上下载的解压后的hadoop。

    到这里操作hdfs就没问题了,如果要运行mapreduce还会报错,进行以下两步:

    1.将hadoop源码中的org.apache.hadoop.io.nativeio加到项目中,并进行以下修改:


    093714_UdO4_1755468.png

2.在我们的mapreduce的main函数中注入hadoop本地目录地址环境变量。

093908_g3NK_1755468.png

ok!这下就可以在Windows上进行hadoop集群的mapreduce在线调试了!

如果有问题可以留言交流哦!共同学习共同进步!

转载于:https://my.oschina.net/u/1755468/blog/366170

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值