有时候需要调试hadoop的程序,如果都要传到linux上,非常不方便。我们可以搭建一个windows的单机版本hadoop环境,测试我们的代码。
一、下载所需文件
- JDK下载地址,jdk1.8下载
- Hadoop下载,hadoop下载,进去后找到一个版本然后点击 Binary download 下载到本地。
- Hadoop windows环境编译工具,winutils下载 ,下载后解压出来
二、安装文件
- jdk安装,省略
- hadoop安装,由于下载的hadoop文件是不用安装的,我们只需要解压出来就可以了 解压目录 D:\dev-tools\hadoop\hadoop-2.8.3
三、环境变量配置
- jdk,省略
四、配置hadoop文件
-
配置 core-site.xml文件
<configuration> <property> <name>hadoop.tmp.dir</name> <value>/D:/data/hadoop</value> </property>
</configuration>1<property> 2 <name>fs.default.name</name> 3 <value>hdfs://localhost:9000</value> 4</property>
2. 配置mapred-site.xml
1<configuration> 2 <property> 3 <name>mapreduce.framework.name</name> 4 <value>yarn</value> 5 </property> 6 7</configuration>
配置 hdfs-site.xml
1<configuration> 2 <!-- 这个参数设置为1,因为是单机版hadoop --> 3 <property> 4 <name>dfs.replication</name> 5 <value>1</value> 6 </property> 7</configuration>
配置 yarn-site.xml
1<configuration> 2 <property> 3 <name>yarn.nodemanager.aux-services</name> 4 <value>mapreduce_shuffle</value> 5 </property> 6 <property> 7 <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> 8 <value>org.apache.hadoop.mapred.ShuffleHandler</value> 9 </property> 10</configuration>
找到 hadoop-env.cmd 文件并打开,添加下面配置。
1set JAVA_HOME=%JAVA_HOME% 2set HADOOP_HOME=D:\dev-tools\hadoop\hadoop-2.8.3 3rem %HADOOP_HOME%\bin 加入到运行时path中 4set PATH=%PATH%;%HADOOP_HOME%\bin
五、替换文件
解压我们之前下载的 winutils-master 文件,找到符合自己的版本的bin目录,把 winutils.exe和hadoop.dll 复制到 bin 目录
六、运行
1.运行cmd窗口,执行hdfs namenode -format ,格式化hdfs文件系统。
2.运行cmd窗口,切换到hadoop的sbin目录,执行start-all.cmd 启动hadoop,包括yarn/hdfs
七、测试
打开下面的网页可以查看hdfs状态
在hadoop 2.x中,管理界面为 http://localhost:50070
在hadoop 3.0中,已经改为 http://localhost:9870

打开下面的网页可以查看yarn状态

配置好的hadoop 2.8.3,已经上传到网盘,可以自行下载后配置环境变量即可使用