Windows下配置Hadoop及Spark环境

前言

教程所用各版本说明

一 JDK环境配置

由于项目用的JDK17,所以单独给Hadoop配了JDK11,建议直接配置JAVA_HOME环境变量为JDK11,因为后面Spark需要用到JAVA_HOME

下载JDK11

链接:https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html

目前Hadoop和Spark兼容JDK11JDK8

单独修改Hadoop的话,需要在Hadoop目录下的etc\hadoop\文件夹中hadoop-env.cmd中添加一行
set JAVA_HOME=E:\Environment\jdk-11.0.13(此处填写你的JDK路径)

注:JDK、Hadoop以及Spark的文件路径中不能出现空格和中文,类似于Program Files这样的文件夹名是不被允许的

二 Hadoop配置

1 下载Hadoop

镜像链接:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/hadoop-3.3.2/

选择hadoop-3.3.2.tar.gz

下载winutils.exe和hadoop.dll,Windows安装Hadoop需要这部分文件

链接:https://github.com/cdarlint/winutils

找到对应的版本对应bin目录中的文件,放入Hadoop下的bin 文件夹中

2 配置Hadoop环境变量

把Hadoop目录添加到系统变量HADOOP_HOME,并在系统变量Path中添加%HADOOP_HOME%\bin

Windows下配置Hadoop及Spark环境_第1张图片

cmd输入

hadoop version

n测试是否正常显示版本信息

Windows下配置Hadoop及Spark环境_第2张图片

3 配置hadoop

打开Hadoop所在目录下etc\hadoop的文件夹

修改core-site.xml

先在Hadoop目录下创建data文件夹,配置文件中路径前需加"/"。HDFS可使用localhost,如果在hosts文件已经配置了主机映射,也可以直接填主机名

<configuration>
    <property>
        <name>hadoop.tmp.dirname>
        <value>/E:/Environment/hadoop-3.3.2/data/tmpvalue> //注意前面部分路径修改为自己的
    property>
    <property>
        <name>fs.defaultFSname>
        <value>hdfs://localhost:9000value>
    property>
configuration>

修改hdfs-site.xml

<configuration>
    
    <property>
        <name>dfs.replicationname>
        <value>1value>
    property>
    <property>
        <name>dfs.namenode.name.dirname>
        <value>/E:/Environment/hadoop-3.3.2/data/namenodevalue> //注意前面部分路径修改为自己的
    property>
    <property>
        <name>dfs.datanode.data.dirname>
        <value>/E:/Environment/hadoop-3.3.2/data/datanodevalue> //注意前面部分路径修改为自己的
    property>
configuration>

修改mapred-site.xml

<configuration>
    <property>
       <name>mapreduce.framework.namename>
       <value>yarnvalue>
    property>
    <property>
       <name>mapred.job.trackername>
       <value>hdfs://localhost:9001value>
    property>
configuration>

修改yarn-site.xml

<configuration>
	 <property>
        <name>yarn.nodemanager.aux-servicesname>
        <value>mapreduce_shufflevalue>
    property>
	<property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.classname>
        <value>org.apache.hahoop.mapred.ShuffleHandlervalue>
    property>
configuration>

4 节点格式化

打开cmd输入

hdfs namenode -format

出现类似下图说明成功。如果出错,可能原因有如:环境变量配置错误如路径出现空格,或者winutils版本不对或hadoop版本过高等,或hadoop的etc下文件配置有误

Windows下配置Hadoop及Spark环境_第3张图片

5 启动Hadoop

然后cmd切换到Hadoop下的sbin目录,输入

start-all.cmd

然后回车,此时会弹出4个cmd窗口,分别是NameNode、ResourceManager、NodeManager、DataNode。检查4个窗口有没有报错。在CMD执行jps看到这4个进程,启动成功

浏览器输入localhost:9870即进入访问HDFS的Web UI界面

Windows下配置Hadoop及Spark环境_第4张图片

浏览器输入localhost:8088即进入Yarn集群节点的Web UI界面

Windows下配置Hadoop及Spark环境_第5张图片

三 Spark配置

1 下载Scala

下载链接:https://www.scala-lang.org/download/2.13.8.html

选择scala-2.13.8.zip

2 配置Scala环境变量

将解压后的Scala的bin目录添加到Path系统变量中,打开cmd输入

scala

然后回车,如果能够正常进入到Scala的交互命令环境则表明配置成功

Windows下配置Hadoop及Spark环境_第6张图片

3 下载Spark

由于spark-3.2.1版本在启动时会出现一点问题,具体原因没有深究。但尝试降低版本变成3.1.3版本后正常运行,所以就选择配置spark-3.1.3

Spark3.1.3和JDK11启动时会出现WARNING,更新到3.3.1和JDK17就好了

官网链接:https://dlcdn.apache.org/spark/

镜像地址:https://mirrors.tuna.tsinghua.edu.cn/apache/spark/

「需要注意的是spark版本需要和hadoop版本对应.如果按照本文的配置即可忽略此行文字」

4 配置Spark环境变量

把Spark目录添加到系统变量SPARK_HOME,并在系统变量Path中添加%SPARK_HOME%\bin

Windows下配置Hadoop及Spark环境_第7张图片

5 启动Spark

打开cmd窗口,输入

spark-shell

然后回车,如果能够正常进入到Spark的交互式命令行模式,则表明配置成功

Windows下配置Hadoop及Spark环境_第8张图片

浏览器输入localhost:4040即进入Spark的Web UI界面

Windows下配置Hadoop及Spark环境_第9张图片

你可能感兴趣的:(大数据,spark,hadoop,大数据)