前置环境部署:
Hadoop3.5.0
截止到目前,Hadoop最新版本为3.5.0 ,发布时间:2026 Apr 2
官方文档:
0、JDK安装
如果首次安装需将openjdk卸载,参考:Linux环境下Java17环境安装-CSDN博客
This is the first Hadoop release with full support for Java 17. On the server side, Java 17 is required. On the client side, Java 17 and Java 21 are supported.

注:官方推荐版本17版本
1、hadoop软件上传及解压
软件下载地址:
通过mobaxterm将hadoop发布包上传/usr/local/soft/目录下
cd /usr/local/soft/
tar -zxvf hadoop-3.5.0.tar.gz
2、修改Hadoop的hadoop-env.sh
修改Java配置路径:/usr/local/soft/hadoop-3.5.0/etc/hadoop/hadoop-env.sh
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/hadoop-env.sh
文件末尾添加如下内容:
export JAVA_HOME=/usr/local/soft/jdk-17.0.1
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
export HADOOP_PID_DIR=/data/hadoop/pids
export HADOOP_LOG_DIR=/data/hadoop/logs
3、添加系统环境变量:
vi /etc/profile
新增如下内容
export HADOOP_HOME=/usr/local/soft/hadoop-3.5.0
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
使环境变量生效
source /etc/profile
4、修改core-site.xml配置文件
进入/usr/local/soft/hadoop-3.5.0/etc/hadoop/目录,修改core-site.xml
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node11:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/data/hadoop/tmp</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
5、修改hdfs-site.xml配置文件
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node11:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/data/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/data/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
</configuration>
dfs.namenode.secondary.http-address是指定secondaryNameNode的http访问地址和端口号,因为在规划中,我们将node11规划为SecondaryNameNode服务器。
6、修改Yarn-site.xml配置文件
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.localizer.address</name>
<value>0.0.0.0:8140</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node11</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://node11:19888/jobhistory/logs</value>
</property>
</configuration>
根据规划yarn.resourcemanager.hostname这个指定resourcemanager服务器指向node11。
yarn.log-aggregation-enable是配置是否启用日志聚集功能。
yarn.log-aggregation.retain-seconds是配置聚集的日志在HDFS上最多保存多长时间。
7、修改Maperd-site.xml配置文件
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=/usr/local/soft/hadoop-3.5.0</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=/usr/local/soft/hadoop-3.5.0</value>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=/usr/local/soft/hadoop-3.5.0</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>node11:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node11:19888</value>
</property>
</configuration>
mapreduce.framework.name设置mapreduce任务运行在yarn上。
mapreduce.jobhistory.address是设置mapreduce的历史服务器安装在master1机器上。
mapreduce.jobhistory.webapp.address是设置历史服务器的web页面地址和端口号
8、修改Workers内容
vi /usr/local/soft/hadoop-3.5.0/etc/hadoop/workers
node11
workers文件是指定HDFS上有哪些DataNode节点。
9、格式化Hadoop系统(如果是配置集群,下面几步不要操作)
hdfs namenode -format

强烈提示:格式化命令仅在配置后执行一次,不允许在启动后再格式化,如果真的这样操作后续会导致集群ID号不一致无法连接到子节点,解决方案:将/data下面的文件删除后再格式化(为了密码出错,切记仅执行一次)
10、启动hdfs和yarn(如果后续配置集群不要操作此步骤)
start-all.sh
停止:
stop-all.sh
11、检测
进程:
bash
jps
12、配置Windows的hosts映射
打开C:\Windows\System32\drivers\etc文件夹,修改hosts,添加如下内容
bash
192.168.1.11 node11
192.168.1.12 node12
192.168.1.13 node13
13、打开浏览器验证
HDFS Web页面
bash
http://node11:9870/

YARN Web页面
bash
http://node11:8088/
14、执行HDFS命令创建test文件夹
bash
hadoop fs -mkdir /test
