Windows部署Hadoop(无Cygwin)

记录一下Hadoop在Windows 10上的部署过程和一些小问题。

环境版本

java:jdk1.8.0_111

Hadoop: hadoop-2.7.3

配置Hadoop前需要配置java的环境,网上教程很多,在此不再详述。

文件下载

1.下载Hadoop的部署包(非src源码包)并解压。

2.下载hadoop在windows上运行所需的bin包。2.7.3版本的hadoop可至如下链接下载。如果其他版本,可以尝试在github上搜索“hadoop win”看有没有大神分享。

https://github.com/rucyang/hadoop.dll-and-winutils.exe-for-hadoop2.7.3-on-windows_X64

3.将下完的压缩包解压,将bin中的文件复制到hadoop-2.7.3目录下的bin目录中。

4.添加环境变量HADOOP_HOME,对应路径为Hadoop的解压后的目录(比如D:\envpath\hadoop-2.7.3)。

5.在环境变量Path中添加%HADOOP_HOME%\bin和%HADOOP_HOME%\sbin。

配置文件的修改

配置引自https://blog.csdn.net/tornadojava/article/details/56013420。

etc/hadoop/core-site.xml

<configuration>
   <property>
       <name>fs.defaultFS</name>
       <value>hdfs://localhost:9000</value>
   </property>
</configuration>

etc/hadoop/mapred-site.xml

<configuration>
   <property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
   </property>
</configuration>

etc/hadoop/hdfs-site.xml

配置datanode和namenode的路径。

从https://stackoverflow.com/questions/34871814/failed-to-start-namenode-in-hadoop上看到,对windows来说,路径只能设置成以下两种格式:

/c:/path/to/dir 
file:/c:/path/to/dir

因此,如果hadoop-2.7.3放在d盘的envpath下,可以进行如下配置。

<configuration>
   <property>
       <name>dfs.replication</name>
       <value>1</value>
   </property>
   <property>
       <name>dfs.namenode.name.dir</name>
       <value>/d:/envpath/hadoop-2.7.3/data/namenode</value>
   </property>
   <property>
       <name>dfs.datanode.data.dir</name>
     <value>/d:/envpath/hadoop-2.7.3/data/datanode</value>
   </property>
</configuration>

如果该路径配置有误,在格式化namenode时不会报错,但是启动Hadoop时会报路径找不到或者路径不可达的异常。

etc\hadoop\yarn-site.xml

<configuration>
    <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>
    <property>
       <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
       <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

etc/hadoop/hadoop-env.cmd

配置java环境,“=”后直接接java的目录即可。

set JAVA_HOME=D:\envpath\jdk1.8.0_111

如果是放在program files目录下,则将program files用PROGRA~1表示,比如如下:

set JAVA_HOME=D:\PROGRA~1\jdk1.8.0_111

hadoop启动

格式化NameNode

>hdfs namenode -format

如果日志输出最后的status结果为0,则表示格式化成功。

启动Hadoop

>d: //切换到d盘
>cd %HADOOP_HOME%\sbin //进入Hadoop的sbin目录
>start-all //启动hadoop
>jps //查看启动的进程,除了jps,将启动4个进程 
18096 DataNode
15012 ResourceManager
15268 NodeManager
11944 Jps
15564 NameNode
至此,Hadoop部署完成。



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值