在window上安装hadoop3.3.4

暑假不知道啥原因电脑死机啦。环境需要重新配一下

首先需要配置Hadoop集群,但是为了代码调试方便需要先在Windows上配置Hadoop环境。

1.前期准备

首先在搭建Hadoop环境之前需要先安装JDK,并且配置好Java环境变量。
这里有个bug就是Java环境变量中不允许有空格,如 C:\Program Files\java\xxxxx , 后续步骤中在 hadoop-env.cmd 配置 JAVA_HOME 时,这种环境变量的是无法识别的,容易报 "Error JAVA_HOME is incorrectly set." 之类的错误

bash 复制代码
java version "1.8.0_381"
Hadoop 3.3.4

java8下载地址,需要注册oracle的账号登录
hadoop对应版本下载

2.安装hadoop

进入Hadoop官网下载压缩文件解压到指定目录, 解压后文件结构如下:

配置Hadoop环境变量

这里需要配置的环境变量是系统环境变量。主要需要配置的是HADOOP_HOME和Path。类似的,将bin所在路径添加到Path中。

3 修改配置文件

这里需要修改的配置文件有:

bash 复制代码
core-site.xml
hdfs-site.xml
yarn-site.xml
hadoop-env.cmd

core-site.xml

bash 复制代码
<!-- Put site-specific property overrides in this file. -->
 
<configuration>
	<property>
        <name>hadoop.tmp.dir</name>
        <value>file:/D:/work/soft/hadoop_temp/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

这个文件没有特别需要注意的地方,直接覆盖就行

hdfs-site.xml

这是Hadoop分布式文件系统的配置,主要是配置 namenode 和 datanode(执行start-all后生成的)的路径

bash 复制代码
<!-- Put site-specific property overrides in this file. -->
 
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
       <name>dfs.namenode.name.dir</name>
       <value>file:/D:/work/soft/hadoop-3.3.0/data/namenode</value>
    </property>
    <property>
       <name>dfs.datanode.data.dir</name>
       <value>file:/D:/work/soft/hadoop-3.3.0/data/datanode</value>
    </property>
<!-- 50700打不开请配置这个. -->
	<property>
        <name>dfs.http.address</name>
        <value>localhost:50070</value>
    </property>
</configuration>

下面两个value即配置了 namenode 和datanode的路径,配置成功后(执行第四步后),相关路径中会多一个data目录:

yarn-site.xml

bash 复制代码
<configuration>
 
    <!-- nodemanager要求的内存最低为1024 -->
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>1024</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>1</value>
    </property>
</configuration>

这里需要注意,nodemanager 要求的内存最低为1G,所以value至少是1024,否则无法启动nodemanager。

hadoop-env.cmd

@rem The java implementation to use. Required.

@rem set JAVA_HOME=%JAVA_HOME%

set JAVA_HOME=%JAVA_HOME%

@rem The jsvc implementation to use. Jsvc is required to run secure datanodes.

@rem set JSVC_HOME=%JSVC_HOME%

4 格式化HDFS系统

CMD切换到Hadoop的bin目录下,执行命令:

hdfs namenode -format

这里会报的错误:

1.File Not Found winutils.exe

复制代码
说明确实winutils.exe相关文件,下载地址https://github.com/4ttty/winutils,将winutils.exe放到hadoop的bin目录下即可。

2.hadoop:ExitCodeException exitCode=-1073741515

原因:

操作系统缺少 msvcr120.dll文件

下载微软常用命令集合,解压运行,将*。dll文件粘贴到C:\Windows\SysWOW64目录中。该处理为自己试过,问题已经解决:

格式化后,如果没有报什么错误,基本上算是搭建成功了

5 启动Hadoop

切换到Hadoop下sbin目录,执行 start-all 命令,

启动Hadoop,这时会启动namenode,、datanode、resourcemanager、nodemanager。切换到bin目录下执行jps命令,可以看到如下启动进程

使用管理员模式启动CMD,并执行上面命令可正常启动hadoop,下图

通过浏览器进入管理界面

http://localhost:50070/

http://localhost:8088/

6.集成到idea开发环境中

在pom.xml中添加hadoop的依赖

bash 复制代码
 <dependency>
      <groupId>org.netpreserve.commons</groupId>
      <artifactId>webarchive-commons</artifactId>
      <version>1.1.9</version>
      <exclusions>
        <exclusion>
         <groupId>org.apache.hadoop</groupId>
         <artifactId>hadoop-core</artifactId>
       </exclusion>
      </exclusions>
    </dependency>
    
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-client</artifactId>
      <version>3.3.4</version>
<!--      <scope>provided</scope>-->
    </dependency>
相关推荐
计算机毕业编程指导师1 小时前
大数据毕设怎么做?基于Hadoop的多源社交媒体心理健康情感分析与可视化系统从零到一指导 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·计算机·数据分析·毕业设计·课程设计·媒体
计算机毕业编程指导师2 小时前
Python大数据毕设:基于Hadoop的病毒式社交媒体趋势和参与度分析系统怎么做 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·毕业设计·课程设计·社交媒体
计算机毕业编程指导师5 小时前
【计算机毕设推荐】基于Hadoop+Django的LLM多维度性能评估分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·django·毕业设计·课程设计·llm性能
卷毛迷你猪6 小时前
快速实验篇(B12)异常流量与刷单识别(方法论演示)
大数据·hive·hadoop·数据挖掘·聚类
计算机毕业编程指导师6 小时前
【Python毕设选题推荐】基于Hadoop+Django的奥斯卡奖获奖数据可视化分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·毕业设计·课程设计·奥斯卡奖
计算机毕业编程指导师6 小时前
【大数据毕设选题】基于Spark的电信网络诈骗话术语义特征挖掘分析系统源码 毕业设计 选题推荐 数据分析 机器学习 深度学习
大数据·hadoop·python·spark·毕业设计·课程设计·网络诈骗
计算机毕业编程指导师6 小时前
计算机大数据毕设怎么选?基于Spark的个体肥胖健康风险评估的数据分析与可视化系统带你通关 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·spark·毕业设计·肥胖风险
shjita6 小时前
几个hadoop中运行mapreduce的错误记录一下。
大数据·hadoop·eclipse
计算机毕业编程指导师7 小时前
计算机毕设答辩技巧:基于Hadoop+Django的公共交通运营数据分析与可视化系统怎么做 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·交通运行
计算机毕业编程指导师7 小时前
【计算机毕设选题推荐】基于Hadoop+Django高频电力消耗大数据分析系统从0到1 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
hadoop·python·数据分析·spark·毕业设计·课程设计·电力