如果编写MapReduce程序,大多数人喜欢在本地上使用自己喜欢的IDE编写代码。这篇主要记录了在搭建这个环境的一些过程。
环境
- Windows
- VirtualBox(network mode: bridge桥接方式)
材料
- Eclipse Neon
- JDK
- hadoop-eclipse-plugin-2.7.3.jar
- hadoop.dll
- winutils.exe
- hadoop-2.7.3.tar.gz
Hadoop在VirtualBox上配置
请参考 Hadoop2.7.3 环境配置
这里说明由于设备配置一般,只在VBOX上建立一个节点,既做namenode 又做 datanode。
配置Windows环境
1.Eclipse Neon
2.JDK,并且配置好环境变量
3.解压hadoop-2.7.3
4.配置 hadoop 环境变量
5.添加bin 到Path
6.把hadoop.dll 和winutils.exe 放置 hadoop-2.7.3\bin目录内.
7.把hadoop.dll 和winutils.exe 放置 C:\Windows\System32目录内.
配置Eclipse
1.把 hadoop-eclipse-plugin-2.7.3.jar 放到eclipse/plugins下
2.设置hadoop home目录
3.打开 “window”-“show view” -“Mepreduce Tools” –“Mep/Reduce Locations”
Location name : 任意
Map/Reduce(V2) Master
Host: master
Port:10020
对应于Vbox上 Hadoop 的 mapred-site.xml == > mapreduce.jobhistory.address
DFS Master
Host: master
Port: 9000
对应于Vbox上 Hadoop 的 core-site.xml == > fs.default.name
4.在Windows上C:\Windows\System32\drivers\etc\host文件添加 Vbox上虚拟机的IP
5.Eclipse上查看链接情况
如果出现类似
org.apache.hadoop.security.AccessControlException: Permission denied: user=lenvol, access=WRITE_EXECUTE, inode="/input":hadoop:supergroup:rwxr-xr-x.
解决方法:
进入到Vbox 上的虚拟机,然后在 hadoop 的配置文件 hdfs-site.xml 内添加
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>