windows10系统下eclipse连接虚拟机ubuntu中的hadoop

参考博文:https://www.linuxidc.com/Linux/2014-12/110514p2.htm,

                https://blog.csdn.net/xiaoyezi_1834/article/details/51792081

 

1.关闭ubuntu中的防火墙

指令:sudo ufw disable

查看防火墙状态:指令是:sudo ufw status

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

处于关闭状态

开启防火墙指令:sudo ufw enable

2.下载hadoop插件并安装

hadoop-eclipse-plugin-2.6.0.jar  将其拷贝到D:\Program Files (x86)\eclipse\javaee\eclipse\dropins目录中,一般是在D:\Program Files (x86)\eclipse\javaee\eclipse\plugins目录中但是由于版本不同存放的位置不一样,我的就是放到dropins中,此种目录为我的电脑中eclipse的安装目录,其实就是eclipse安装目录下的javaee文件夹下eclipse中。

3.配置Hdoop的安装目录

(1)下载和虚拟机中ubuntu版本一个的hadoop的安装包hadoop-2.7.6.tar.gz,在windows下直接用平常的解压软件解压即可,我的事7z软件解压后为hadoop-2.7.6.tar,记住解压后该文件存在的目录。

 (2)打开Eclipse,Window -> Preferences 出现Hadoop Map/Reduce选项

(3)配置Hadoop installation directory,点击Browser按钮,填入Hadoop的安装目录4

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

4.新建Hadoop Location

(1)打开Map/Reduce视图:Window -> Show View -> Other... -> MapReduce Tools  -> Map/Reduce Locatons,底部框中出现Map/Reduce Locatons

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 

 (2)在Map/Reduce Locatons下方,右键选择New Hadoop location...,根据hadoop/etc/hadoop/mapred-site.xml和hadoop/etc/hadoop/core-site.xml配置相应的IP和端口

可参考我的伪分布式配置文档https://blog.csdn.net/windyxue/article/details/86165831

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 

5.新建Hadoop项目

(1)File -> new - project -> Map/Reduce Project 

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

(2)Next -> 输入Project name:WordCount -> Next -> Finish

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

6.链接DFS

(1)左侧Project Explorer一栏中出现DFS Locations和WordCount两个选项。如果不出现鼠标放在左侧右键单击选择refresh

前提是在ubuntu中开启hadoop进程。可以选择refresh来刷新,reconnect来进行重新连接。

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

最开始装hadoop没运行过程序的时候name1中的内容是空的,只有一个文件夹显示其下文件数为0.

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

我在配置的时候一直出错,主要有以下两中:

第一种:connectexception,connectrefused  链接拒绝

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 第二种:containsapplying  文件正展开

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 经过各种找错,才发现原来是配置文件mapred-site.xml文件中9001端口未配置

 其实该过程中出这种错误可能是多方面的,

1.最开始我这考虑的是我虚拟机网络的链接方式的问题,桥连接和NAT模式

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 一度认为是链接方式的问题,但是我改链接方式为桥连接的时候我虚拟机ubuntu中的ipv4不存在,不存在,这样根本无法通过ip链接,肯定不行,只能还原到NAT模式,但是只有改一次链接方式,ubuntu中的ip就会发生改变。

改为NAT模式后,我继续想办法找错,首先在ubuntu中通过指令:ifconfig -a 来查看ip 找到ip后

在windows系统下按win+R键,启动命令控制行,输入cmd进入所谓的黑框框界面,输入指令ping 192.168.198.137查看是否ping通,结果显示ping通,说明能链接到该机器上。但是还是现实链接拒绝,所以就又下了一个putty软件,看看这个是否连接上

putty软件比较小,双击exe文件就可以直接打开,然后输入ip,也可以正常访问,这部分截图找不到了,putty具体使用方法可以百度一下。

还有可能问题是ubuntu中的防火墙未关闭,关闭后重新试试

还有就是windows系统中的防火墙未关闭,关闭试试,也有可能是talnet未开启,但是我尝试开启我电脑的这个功能,开启不了,所以也就不了了之了。

windows10系统下eclipse连接虚拟机ubuntu中的hadoop

 

其中还查看过9000端口是否被占用的问题,在ubuntu中查看端口的占用情况

指令是netstat -tpnl参考微博https://blog.csdn.net/yjc_1111/article/details/53817750

最后觉得再次查看一下配置文件该配置文件应该为hadoop/etc/hadoop下的,这时候才发现是mapred-site.xml的问题。然后重新连接才链接上,整个过程耗费了两天时间真的是在csdn上各种方法尝试。