【数据仓库】hadoop3.3.6 安装配置

文章目录

概述

该文档是基于hadoop3.2.2版本升级到hadoop3.3.6版本,所以有些配置,是可以不用做的,下面仅记录新增操作,其他操作参见其他文章Hadoop3.2.1安装-单机模式和伪分布式模式

下载

https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/

下载hadoop-3.3.6.tar.gz版本

解压安装

复制代码
tar -zxvf hadoop-3.3.6.tar.gz

修改环境变量

复制代码
vi /etc/profile

增加以下内容:

复制代码
# Hadoop Environment Variables
export HADOOP_HOME=/home/XXX/hadoop-3.3.6
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

# 刷新配置
source /etc/profile

到bin目录下,查看版本

复制代码
./hadoop version

可以看到显示V3.3.6,配置安装成功,若直接以单机模式运行,到这里已经完成了安装。但是单机模式无法使用hdfs分布式文件系统功能。所以继续配置 伪分布式模式。

伪分布式模式

配置hdfs

etc/hadoop/core-site.xml文件配置:

复制代码
<configuration>
<!-- 配置dataNode保存数据的位置  -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/XXX/hadoop-3.3.6/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:39000</value>
    </property>
</configuration>

配置hdfs文件系统访问的默认根路径。

etc/hadoop/hdfs-site.xml文件配置:

复制代码
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/XXX/hadoop-3.3.6/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/home/XXX/hadoop-3.3.6/tmp/dfs/data</value>
    </property>
    <property>
        <name>dfs.namenode.http-address</name>
        <value>0.0.0.0:9870</value>
    </property>
</configuration>

配置hadoop-env.sh

为了防止后续会奇怪的错误,建议这里将hadoop和java的环境变量在hadoop下的hadoop-env.sh文件中再配置一遍:

复制代码
export HADOOP_HOME=/home/XXX/hadoop-3.3.6
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=$HADOOP_HOME/lib/native"

export JAVA_HOME=/home/XXX/jdk1.8.0_201-amd64

ssh免密登录模式设置

参考hadoop3.2.1安装里的设置,这里需要使用hadoop用户操作。因为伪分布式是在一台机器上起了几个进程来模拟hadoop的运行角色,各进程间需要连接通信,所以要设置免密登录。

复制代码
# 切换到hadoop用户
su hadoop
# 验证是否设置免密登录
ssh localhost

显示

复制代码
Last login: Mon Dec 30 16:26:29 2024

则设置成功。

初始化HDFS

复制代码
# 进入hadoop bin 目录执行
hdfs namenode -format

启动hdfs

复制代码
在sbin目录修改start-dfs.sh,stop-dfs.sh脚本,在文件头部增加如下脚本:
    HDFS_DATANODE_USER=hadoop
	HADOOP_SECURE_DN_USER=hadoop
	HDFS_NAMENODE_USER=hadoop
	HDFS_SECONDARYNAMENODE_USER=hadoop

要以hadoop用户启动

复制代码
su hadoop
# 进入sbin,启动dfs
./start-dfs.sh
# 关闭dfs
./stop-dfs.sh
# 查看启动状态
jps

网页访问

复制代码
http://localhost:9870/

查看hdfs文件目录

复制代码
http://localhost:9870/explorer.html

配置yarn

etc/hadoop/mapred-site.xml文件

复制代码
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.application.classpath</name>
        <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
    </property>
</configuration>

etc/hadoop/yarn-site.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_HOME,PATH,LANG,TZ,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

启动yarn

复制代码
./start-yarn.sh

网页查看

复制代码
http://localhost:8088/

至此,伪分布式模式搭建完成。

hadoop启动后,进程id信息会被存到临时目录,会被系统定时清理,等到stop的时候会找不到进程信息,所以需要修改进程id存储路径,修改hadoop-env.sh 文件

复制代码
export HADOOP_PID_DIR=/usr/local/hadoop/pids/
相关推荐
奇点爆破XC16 小时前
Hadoop大数据生态(Ambari管理)组件服务详解
大数据·hadoop·ambari
isNotNullX17 小时前
企业数据中台建设,ETL工具选错了会踩哪些坑?
数据仓库·etl·原型模式
SelectDB技术团队19 小时前
预约发布会|核心产品力首发,如何构建面向 Agent 时代的企业级数据引擎
数据库·数据仓库·人工智能·数据分析·可观测·apache doris·selectdb
段一凡-华北理工大学20 小时前
工业领域的Hadoop架构学习~系列文章22:Hadoop生态展望 - 面向未来的技术演进
大数据·人工智能·hadoop·分布式·学习·架构·高炉炼铁
Nefu_lyh20 小时前
【Hive】六、Hive 运算逻辑:数学 / 逻辑 / 条件 / 日期 / 字符串函数
数据仓库·hive·hadoop
ChaITSimpleLove20 小时前
Etl.Net 2.2.0 项目深度分析
数据仓库·.net·etl·大数据处理·数据管道·数据处理引擎
知识分享小能手21 小时前
Hadoop学习教程,从入门到精通, HDFS分布式文件系统 — 完整知识点与案例代码(3)
hadoop·学习·hdfs
陆水A2 天前
【实时数仓·3】Flink多表JOIN状态爆炸——Event Time Temporal JOIN + TTL分层治理
大数据·数据仓库·数据分析·flink·数据库开发·bigdata
段一凡-华北理工大学2 天前
工业领域的Hadoop架构学习~系列文章20:故障诊断与根因分析 - 从表象到本质的智能推理
大数据·人工智能·hadoop·学习·架构·高炉炼铁·工业智能体
Francek Chen2 天前
【大数据处理与分析】MapReduce:05 MapReduce的具体应用
大数据·hadoop·分布式·mapreduce