花了好几天,搭建好windows和linux下连接HDP集群的调试环境,在此记录一下

  hadoop2.2.0的版本比hadoop0.x和hadoop1.x结构变化很大,没有eclipse-hadoop插件支持,在网上找了好久才找到,自己编译的比较麻烦,而且不成功,还好最后找到了。

环境及配置:

1.eclipse版本及hadoop插件下载地址:http://download.csdn.net/detail/kangdakangdaa/7880519

如果要用myeclipse开发方便的朋友,采用myeclipse8.6版本,至少我试过8.5版本是不行,不能识别插件

myeclipse8.6下载地址:http://download.csdn.net/detail/lgscofield/4471379

2.为了windows解析域名方便,修改C:\Windows\System32\drivers\etc\hosts文件

编辑添加hadoop集群配置的hosts文件添加进去,如:

192.168.0.128 hadoop1

也可以不添加修改,可以直接用hadoop集群的ip用作远程访问。

  接下来我们先来说在linux怎么连接hadoop集群,在windows用eclipse和myeclipse远程连接hadoop集群在文章的末尾有说明

3. 安装配置:

  下载eclipse,直接解压,无配置安装, 将插件hadoop-eclipse-plugin-2.2.0.jar放在eclipse/plugins目录下.

  运行eclipse.exe。

  在eclipse可视窗口,windows——>show view——Other——>MapReduce Tools——>mapreduce locations.

  在界面上显示的Mapreduce Locations下方,右键点击New Mapreduce Locations:

配置如下:

参数提示:Location name:随便取个名字,如ccbhadoop

     Map/Reduce(V2) Master:根据hdfs的config(可从Ambari的配置界面上查找)中配置dfs.datanode.ipc.address的值填写。

     DFS Master:Namenode的IP和端口,根据core-site.xml中的配置fs.defaultFS的值填写。这个配置非常重要。

  配置成功后可以看到Package Explorer一栏以下信息:

如果打开eclipse时看不到这一栏,可打开Window——》Open Perspective——》Other——》Map/Reduce.如果没有这一项,说明插件未被正确识别。

  打开window——preferences对话框,搜索hadoop,找到“Hadoop Map/Reduce”项,点击Browse...配置hadoop源的路径,也可以将hadoop-2.2.0.2.1.0.0-92复制到其他目录下,但是要在该目录下有lib目录,这样新建hadoop工程时就能自动加载该目录下所有的jar包。

   新建mapreduce工程:

File——》Project——》Map/Reduce Project——》finish

打开工程,可以看到配置路径的jar包已经导入进来:

添加WordCount.java,运行:如果不需要加参数,可直接Run

如需要配置参数,如输入路径输出路径:

右键——Run as——Run Configurations:

再Run.在console窗口查看是否运行成功。

可以看到DFS Locations的文件与输入输出路径是对应的

提示:在DFS Locations上显示的文件可以直接右键添加/删除,然后在相应的文件下,右键刷新Refresh。

Windows下远程连接linux下hadoop集群

  注意:步骤与以上基本一致,为了保证网络畅通,需要主机与Namenode相互之间能ping通即可,(不需要ssh,也不需要安装unix虚拟环境cygwin)。

  Myeclipse8.6版本能连接成功,试过8.5的不能正确识别插件。

  将hadoop-eclipse-plugin-2.2.0.jar重命名为hadoop-myeclipse-2.2.0-plugin.jar,放置在myeclipse8.6/dropins目录下。然后配置过程与以上第2步完全一致。

疑问说明:

1.windows远程连接hadoop集群需要安装Cygwin?

网上有很多文章都说通过Cygwin来连接hadoop的,但是我认为hadoop本来是在linux下安装使用的,在windows下安装Cygwin来安装hadoop是为了模拟linux的环境,能够使用linux下的命令脚本,所以最好在linux下环境下安装学习,我就是在VM虚拟机安装了伪分布式的hadoop,先实现与windows的通信(也就是相互ping通),然后在windows下通过myeclipse来开发调试程序,与上面的效果是一致的。

HDP2.0.6+hadoop2.2.0+eclipse(windows和linux下)调试环境搭建的更多相关文章

  1. windows 64位下,React-Native环境搭建详解 (Android)

    React-Native环境搭建需要: 1.安装Java JDK 2.安装Android Studio 3.安装node.js 4.安装git 5.安装Python 2.x (注意目前不支持Pytho ...

  2. 2017.7.18 windows下ELK环境搭建

    参考来自:Windows环境下ELK平台的搭建 另一篇博文:2017.7.18 linux下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1.7, ...

  3. Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建

    Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建 由于公司里的Solr调试都是用远程jpda进行的,但是家里只有一台电脑所以不能jpda进行调试,这是因为jpda的端口冲突.所以 ...

  4. 跟我一起,利用bitcms内容管理系统从0到1学习小程序开发:一、IIS下SSL环境搭建

    缘起 1.从事互联网十来年了,一直想把自己的从事开发过程遇到的问题给写出来,分享给大家.可是可是这只是个种想法,想想之后就放下了,写出来的类文章是少之又少.古人说无志之人常立志,有志之人立长志.今天, ...

  5. 从0开始学爬虫9之requests库的学习之环境搭建

    从0开始学爬虫9之requests库的学习之环境搭建 Requests库的环境搭建 环境:python2.7.9版本 参考文档:http://2.python-requests.org/zh_CN/l ...

  6. Windows、Linux下文件操作(写、删除)错误的产生原因、及解决方法

    catalog . 引言 . Linux平台上涉及的File IO操作 . Windows平台上涉及的File IO操作 0. 引言 本文试图讨论在windows.linux操作系统上基于C库进行文件 ...

  7. Eclipse+Tomcat+MAVEN+SVN项目完整环境搭建

    1.JDK的安装 首先下载JDK,这个从sun公司官网可以下载,根据自己的系统选择64位还是32位,安装过程就是next一路到底.安装完成之后当然要配置环境变量了. ————————————————— ...

  8. Windows 和  Linux 下 禁止ping的方法

    Windows 和Linux 下 禁止ping的方法 目的: 禁止网络上的其他主机或服务器ping自己的服务器 运行环境: Windows 03.08  linux 方法: Windows 03下: ...

  9. Windows下Lua+Redis 断点调试环境搭建==Linux下类似

    Lua+Redis 断点调试环境搭建 windows环境,使用Redis,写lua脚本头疼的问题之一不能对脚本断点调试,google加上自己的摸索,终于搞定. 1.下载ZeroBraneStudio, ...

随机推荐

  1. 定时任务schedule(spring boot )

    1. 定时任务实现方式:SpringBoot自带的Scheduled,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多,本文主要介绍. 执行方式:单线程(串行)多线程(并行) ...

  2. 微信开发获取media_id错误码汇总

    微信开发遇到的错误汇总: 1. 错误代码40001 "errcode": 40001,    "errmsg": "invalid credentia ...

  3. mysql has gone away

    mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了. 造成这样的原因一般是s ...

  4. 关于define和const

    1.通过define定义的常量,在C语言里面一般叫宏定义.define的本质是简单的文本替换. 2.const定义一个变量,但是这个变量的值只能在定义的时候赋予,之后就不能被更改了. 如果变量声明中带 ...

  5. C#基础(二)--之数据类型

    在第一章我们了解了C#的输入.输出语句后,我这一节主要是介绍C#的基础知识,本节的内容也是后续章节的基础,好的开端等于成功的一半.在你阅读完本章后,你就有足够的C#知识编写简单的程序了.但还不能使用继 ...

  6. 【原创】源码角度分析Android的消息机制系列(四)——MessageQueue的工作原理

    ι 版权声明:本文为博主原创文章,未经博主允许不得转载. MessageQueue,主要包含2个操作:插入和读取.读取操作会伴随着删除操作,插入和读取对应的方法分别为enqueueMessage和ne ...

  7. 一次saltstack环境变量的坑

    现场环境: salt-minion端: ip:10.0.3.149     环境:使用 nvm装的nodejs    受用nodejs自带的npm 安装pm2 sal-master端: IP:10.0 ...

  8. java中队列Queue的使用

    1.在java5中新增加了java.util.Queue接口,用以支持队列的常见操作.Queue接口与List.Set同一级别,都是继承了Collection接口.Queue使用时要尽量避免Colle ...

  9. 优雅使用 illuminate/database 包中的 Collection

    优雅使用 illuminate/database 包中的 Collection 或许你很抵抗使用 Laravel , 但是你没有理由不喜欢使用 illuminate/database.这是一个 ORM ...

  10. Linux下配置SNAT上网

    局域网有一台主机A,没有公网的IP, 也就是没有办法直接连到互联网上下载东西,同时内网有另外一台主机B,有公网接入.这个时候为了让A连接到互联网,我把B设置成NAT主机,A的网关指向B.准确的来说,现 ...