Win10下安装Hadoop3.1.2详解

Win10下安装Hadoop3.1.2详解

尝试在本地win10上安装hadoop,在官网选择了最新的hadoop版本,就是这里开始给自己挖了坑,对着网上的博客一顿操作,发现节点一直启动不成功。本着不放弃的原则,在不停的配置过程中继续折腾,终于解决问题。

安装环境

  • JDK 1.8
  • Windows10
  • Hadoop3.1.2

JDK 安装参考我之前Java的博客 :JDK安装详解

这里需要注意的如果jdk版本过高可能会带来问题

安装Hadoop

  1. 官网下载Hadoop3.1.2 :下载地址
  2. 解压到自定义的文件夹,我这里选择我的路径
F:\Environment\hadoop-3.1.2\hadoop

1562341002706.png

  1. 配置环境变量
JAVA_HOME : F:\Environment\java\jdk1.8.0_181
HADOOP_HOME : F:\Environment\hadoop-3.1.2\hadoop

path添加 :
    %JAVA_HOME%\bin
    %JAVA_HOME%\jre\bin
    %HADOOP_HOME%\bin

1562341035401.png
1562341106642.png

  1. 检测是否安装成功
java -version
hadoop - version

1562341133788.png

出现以上信息说明安装成功 !

修改配置文件

需要修改的文件在解压后的目录下,F:\Environment\hadoop-3.1.2\hadoop\etc\hadoop

1562341249096.png

hadoop-env.cmd

用Notepad++ 打开hadoop-env.cmd文件
找到**set JAVA_HOME=%JAVA_HOME%**一行,将其值修改为jdk所在目录
如果目录带有空格,可以通过下面两种方式处理:
这里以安装目录为C:\Program Files\Java\jdk1.8.0_181为例
因为Program Files中存在空格,若是直接使用会出现错误,可以下面两种方式之一进行处理:
只需要用PROGRA~1 代替Program Files,即改为C:\PROGRA~1\Java\jdk1.8.0_18
或是使用双引号改为 “C:\Program Files”\Java\jdk1.8.0_181

core-site.xml

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

mapred-site.xml

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

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.hahoop.mapred.ShuffleHandler</value>
        </property>
 </configuration>

hdfs-site.xml

需要再hadoop解压的根目录下创建一个data文件夹,并在data下创建namenode和datanode两个子文件夹;

1562341508342.png

1562341521829.png

然后添加配置文件 :

<configuration>
    <!-- 这个参数设置为1,因为是单机版hadoop -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property> 
     <name>dfs.permissions</name> 
     <value>false</value> 
  </property>
   <property>
       <name>dfs.namenode.name.dir</name>
       <value>/F:/Environment/hadoop-3.1.2/hadoop/data/namenode</value>
   </property>
   <property>
        <name>fs.checkpoint.dir</name>
        <value>/F:/Environment/hadoop-3.1.2/hadoop/data/snn</value>
    </property>
    <property>
        <name>fs.checkpoint.edits.dir</name>
        <value>/F:/Environment/hadoop-3.1.2/hadoop/data/snn</value>
    </property>
       <property>
       <name>dfs.datanode.data.dir</name>
       <value>/F:/Environment/hadoop-3.1.2/hadoop/data/datanode</value>
   </property>
</configuration>

配置文件修改完毕 !

替换bin文件

下载的Hadoop不支持Windows系统,需要替换bin目录下的文件方便在Windows上运行。这也是掉坑来的地方了!!!!
在网上下载到的hadooponwindows-master.zip 以及winutils中应该是只适合hadoop 3.0.0及其以下,尝试过hadooponwindows-master.zip以及winutils中最高的版本3.0.0,启动hadoop都会出现下面的错误:Error starting NodeManager、UnsatisfiedError

1562341656565.png

1562341684330.png

折腾了好久(低版本的hadoop还没下载完毕),终于找到3.1.0版本winutils,下载后直接替换掉hadoop目录下bin文件即可:

1562341824274.png

复制yarn的jar包

可以看到resourcemanager.ResourceManager: Error starting ResourceManager启动失败的日志
报了类TimelineCollectorManager找不到的错误。

解决方法: 
F:\Environment\hadoop-3.1.2\hadoop\share\hadoop\yarn\timelineservice 
将这个文件夹下的hadoop-yarn-server-timelineservice-3.1.2.jar 包 
复制到这个路径下 F:\Environment\hadoop-3.1.2\hadoop\share\hadoop\yarn 即可解决。

格式化HDFS文件系统

hdfs namenode -format

1562342111016.png

如果这一步没有什么异常基本没有问题了。

启动

进入hadoop的sbin目录
我这里在 : F:\Environment\hadoop-3.1.2\hadoop\sbin

# 启动
# 会自动开启四个新的命令行窗口,窗口没打印异常即启动成功
start-all

# 停止
stop-all

# 查看正在运行的实例进程及端口
jps 

1562342376658.png

这四个窗口不能关闭 , 否则进程会结束

1562342412603.png

访问管理GUI

启动成功后,可以访问GUI页面

http://localhost:8088

1562342517887.png

http://localhost:9870

1562342555921.png

最后我们停止一下所有进程

1562342621176.png

结尾

运行结束后你会发现hadoop安装的磁盘根目录下多了一个tmp临时文件目录

1562342703354.png

里面有一些 Hadoop的缓存文件 , 可以酌情清理 !

1562342723630.png

编辑不易 , 转载注明出处 : 西部开源-秦疆 2019.07.06 00:47 更新

猜你喜欢

转载自www.cnblogs.com/hellokuangshen/p/11141372.html