win7 x64下eclipse远程到hadoop2.6.0集群服务器+word count 实例演示

来源:互联网 发布:东南大学苏州软件学院 编辑:程序博客网 时间:2024/05/05 07:37

由于实验室在做Spark的研究,所以需要搭建相关的平台进行实验。由于每次提交测试代码都需要先打包后上传到linux虚拟机中,再ssh到服务器上去跑比较麻烦。所以就有如下的分享。
假设你已经搭建好完全分布式hadoop集群了,搭建步骤见第一篇:
http://blog.csdn.net/youxia918/article/details/46607709
1.下载解压hadoop-2.6.0.tar.gz到win7
2.安装eclipse4.3及以上的版本
3.下载所需插件(github上下载的源码需要自己编译。这里使用已经编译好的插件即可)
①hadoop-eclipse-plugin-2.6.0.jar
②hadoop.dll 将此组件放在hadoop解压目录bin下
③winutils.exe将此组件放在C:\Windows\System32
注:②③的组件也要求是hadoop2.6.0的,根据你下载的hadoop版本来选择。②③组件不配置会报错,亲测。
下载地址:
链接:http://pan.baidu.com/s/1jGGNitC 密码:w5on
配置:
①将hadoop-eclipse-plugin-2.6.0.jar拷贝到eclipse的plugin目录下,启动eclipse。看到出现DFS Locations即为成功。
这里写图片描述
②点击windows->preferences->Hadoop Map/Reduce将hadoop-2.6.0解压安装目录导入进来。
这里写图片描述
③点击windows->show view->mapreduce tools->Map/reduce Locations
这里写图片描述
创建连接:点击图标如图所示

这里写图片描述
1是你给hadoop起的name (随意)。
3 port填写是参照yarn-site.xml 中的yarn.resourcemanager.resource-tracker.address
2和4参考core-site.xml中的fs.defaultFS
5填写集群hadoop的用户名即可。
验证结果:
这里写图片描述
这里提一下如果你想多hdfs进行操作的话,需要修改win7的用户名与集群的hadoop安装用户名一致,才可以,不然会报permission denied。修改如下:
这里写图片描述
这里写图片描述
4.新建简单的MapReduce项目(word count)
点击:windows->open Perspective->other->map/reduce
这里写图片描述
点击File->New->Project->mapreduce project
这里写图片描述
依据向导一步步点击就好了。
在src中新建WordCount class类
代码如下:(网上的代码中并没有设置conf.set,会报错)
这里写图片描述
这其中必要的设置conf.set(“mapred.jar”,”F:\HADOOP\hadoop.jar”);
具体参考:http://blog.csdn.net/andyelvis/article/details/7706205

注:代码运行模式有两种:代码修改如②
参考:http://www.open-open.com/lib/view/open1418191526714.html
①不需要设置
FileInputFormat.addInputPath(job, newPath(“hdfs://192.168.11.134:9000/in/test*.txt”));//路径1
FileOutputFormat.setOutputPath(job, newPath(“hdfs://192.168.11.134:9000/output”));//输出路径
System.exit(job.waitForCompletion(true) ? 0 : 1);
②需要配置
FileInputFormat.addInputPath(job, new Path(otherArgs[0]));
FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));
点击:Run As—>Run Configurations
这里写图片描述
在src里添加文件log4j.properties (不添加会出现log4jwarning)
这里写图片描述
内容如下:
这里写图片描述
最后:
Run As—>Run on Hadoop 结果如下:(右击Reconnect 可以看到hdfs里的变化)
这里写图片描述

0 0