你好,游客 登录 注册 搜索
背景:
阅读新闻

Java之美[从菜鸟到高手演变]之eclipse连接hadoop集群

[日期:2015-01-20] 来源:CSDN博客  作者:二青 [字体: ]

作者:二青
个人站点:zhangerqing.cn 邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef

 

准备工具:

 

Ubuntu 14.10 desktop 64 biteclipse 4.3 kepler jee versionhadoop 2.6.0hadoop eclipse plugin 2.6.0起初我是打算用win7做实验,后来遇到一个null pointer的问题很奇怪,在网上找了很多资料都不起作用,有些问题很像,单用的并不是同一个版本,因此也不一定起作用,所以为了方便,我就直接改成用 Ubuntu desktop版的了,这样就方便多了。在VirtualBox上装一个Ubuntu 14.10 desktop 64 bit版,配置jdk,下载安装eclipse kepler即可。1. 将编译好的eclipse hadoop插件拷贝到eclipse安装目录下的plugin目录下,重启eclipse。下载地址 源码地址2. 打开Window -> Preference -> Hadoop Map/Reduce,配置右面的"Hadoop installation directory"项,指向hadoop安装目录。注意:此处并非是linux上真实的hadoop的安装目录,而是直接将hadoop安装包拷贝到当 前系统的某个目录下,解压即可。\

3. Window -> Open Perspective -> Other -> Map/Reduce,eclipse的下方会出现如下视图:\

点击右上角的蓝色大象\

location name随便填入,host填写hadoop集群的master所在的IP,第一个Port填写mapred-site.xml里定义的端口,如下图 一,9001,第二个Port填写里core-site.xml定义的端口,如下图二,9000。填写完重启eclipse。\
\

4. 打开上一个设置的页面,切换到Advanced parameters标签,修改如下配置项:dfs.replication,默认是3,要根据你的Datanode的个数来定,如果你仅有2个 datanode,那么就写2,如果只有一个,就写1,大于或者等于3个,写3。
hadoop.tmp.dir,这个要跟上节建立的Hadoop集群配置中core-site.xml 中的hadoop.tmp.dir设置一样,此处我们填写的是/root/hadoop/tmp。重启eclipse。
5. 我们可以看到左侧资源管理器里的DFS Locations视图\

右键文件夹可以上传/下载文件或者目录。注意:如果此时报:Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied: error,则需要修改dfs的访问权限,编辑hdfs-site.xml文件,加入:

 

1.<property> 
2.<name>dfs.permissions.enabled</name> 
3.<value>false</value> 
4.</property>


注意:生产环境不建议这么做。
6. 运行自带word count示例新建Map/Reduce项目,进入/home/adam/hadoop/share/hadoop/mapreduce/sources 目录,解压hadoop-mapreduce-examples-2.6.0-sources.jar包,将里面的WordCount.java复制到新 建的项目里,点击Run Configurations配置启动参数。这里的output文件夹必须是之前没有创建的,这里会自动创建,否则报“目录已存在”的错误。\

最后Run As “Run On Hadoop”即可,执行完毕后,去看hdfs上的output1目录,查看输出。
这样eclipse就连接到hadoop集群并且可以执行map/reduce任务了。
有什么问题欢迎与我联系:
作者:二青
个人站点:zhangerqing.cn 邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef





收藏 推荐 打印 | 录入:Cstor | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款