hadoop-3.4.1 单机伪部署

下载并安装软件

上传安装软件到服务器

解压安装:tar -xzvf hadoop-3.4.1.tar.gz -C /opt/module/

Hadoop配置

  1. 配置hadoop环境变量:

    bash 复制代码
    sudo vim /etc/profile.d/myprofile.sh
    
    #HADOOP_HOME
    export HADOOP_HOME=/opt/module/hadoop-3.4.1
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
    export HADOOP_CLASSPATH=$(hadoop classpath)

    应用变更: source /etc/profile

  2. 配置hadoop使用的JAVA环境

    bash 复制代码
    sudo vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh
    
    # 配置Hadoop使用的JAVA路径
    export JAVA_HOME=/opt/module/jdk-17.0.10
  3. 配置core-site.xml

    bash 复制代码
    vim $HADOOP_HOME/etc/hadoop/core-site.xml
    XML 复制代码
    <configuration>
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://mydoris:9000</value>
        <description>NameNode的地址</description>
      </property>
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/data/hadoop/tmp</value>
        <description>hadoop数据存储目录</description>
      </property>
    </configuration>
  4. 配置hdfs-site.xml

    bash 复制代码
    vim  $HADOOP_HOME/etc/hadoop/hdfs-site.xml
    XML 复制代码
    <configuration>
      <property>
        <name>dfs.replication</name>
        <value>1</value>  <!-- 单机只需1副本 -->
      </property>
      <property>
        <name>dfs.namenode.name.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/name</value>
      </property>
      <property>
        <name>dfs.datanode.data.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/data</value>
      </property>
    </configuration>
  5. 配置 yarn-site.xml

    bash 复制代码
    vim $HADOOP_HOME/etc/hadoop/yarn-site.xml
    XML 复制代码
    <configuration>
      <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
      </property>
      <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
      </property>
    </configuration>

配置mapred-site.xml

bash 复制代码
vim $HADOOP_HOME/etc/hadoop/mapred-site.xml
XML 复制代码
<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>
  1. 解决Hadoop 3.4与JDK 17冲突问题

    bash 复制代码
    # 编辑 Hadoop 环境配置文件
    cd /opt/module/hadoop-3.4.1
    vim etc/hadoop/hadoop-env.sh
    
    # 文件末尾 添加以下内容:
    # Fix for JDK 17+ module access restrictions
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.lang.reflect=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.net=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.util=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/sun.nio.ch=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.nio=ALL-UNNAMED"
    export HADOOP_OPTS="$HADOOP_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED"
    
    # 若已经启动过hdfs,需要清理并重启hadoop
    # 停止
    ./sbin/stop-yarn.sh
    ./sbin/stop-dfs.sh
    
    # 删除临时数据(避免 clusterID 冲突)
    rm -rf /tmp/hadoop-*
    
    # 重新格式化(使用 JDK 17)
    hdfs namenode -format
    
    # 启动
    ./sbin/start-dfs.sh
    ./sbin/start-yarn.sh

启动Hadoop服务

格式化 NameNode(首次)

bash 复制代码
./bin/hdfs namenode -format

启动 HDFS + YARN

bash 复制代码
./sbin/start-dfs.sh
./sbin/start-yarn.sh

验证服务

bash 复制代码
jps


4.

查看启动日志

  1. 日志路径:/opt/module/hadoop-3.4.1/logs/

访问 WEB UI

  1. HDFS: http://mydoris:9870

  2. YARN: http://mydoris:8088
复制代码
### 测试 HDFS 读写
复制代码
```bash
./bin/hadoop fs -mkdir /t001
./bin/hadoop fs -put ~/.bashrc /t001/
./bin/hadoop fs -ls /t001
```

![](https://i-blog.csdnimg.cn/direct/48541ffb32e44cd48e49fdf8d537abda.png)![](https://i-blog.csdnimg.cn/direct/7846ac49d679456a8365a1789034efcd.png)
相关推荐
cc5725026537 小时前
高考志愿填报:大数据相关专业到底怎么选?
大数据·高考
本旺7 小时前
Elasticsearch 前缀匹配性能优化实战,附4种方式即执行计划判别
大数据·elasticsearch·性能优化
hhzz7 小时前
Python大数据实战(十六):音乐推荐系统——基于协同过滤算法构建个性化歌单引擎
大数据·人工智能·python·数据挖掘·数据分析
Uncertainty!!9 小时前
Ubuntu 22.04 安装超好用中文输入法rime-ice(雾凇拼音)过程记录
linux·ubuntu·中文输入法
泛普软件9 小时前
工程合约管理软件具备哪些核心功能,解决合同结算各类纠纷难题
大数据·人工智能·区块链
ShineWinsu10 小时前
对于Linux:网络基础的解析
linux·网络·面试·udp·笔试·ip·tcp
↘"LYong11 小时前
旧版 CentOS 安装 Docker 完整指南(附国内镜像加速)
linux·运维·docker
Zhang~Ling11 小时前
Vim 多模式详解:命令、插入、底行与插件配置
linux·编辑器·vim
Elastic 中国社区官方博客12 小时前
Elastic 在 Everest Group 企业搜索产品 PEAK Matrix® 评估 2026 中被评为领导者
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
想你依然心痛13 小时前
Linux用户空间与内核空间通信:netlink、ioctl、mmap 零拷贝与性能对比
linux·运维·服务器