Hadoop 伪分布式安装

Hadoop 伪分布式安装

准备

环境选择

  • 系统: Ubuntu Desktop 2204
  • JDK: 8
  • Hadoop : 3.3.6

JDK 8 下载地址

https://mirrors.tuna.tsinghua.edu.cn/Adoptium/8/jdk/x64/linux/

Hadoop 3.3.6 下载地址

https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/stable/

Ubuntu 需要特别配置

修改 hosts 文件

bash 复制代码
sudo vim /etc/hosts

127.0.1.1 修改为 127.0.0.1

数据存储目录

创建目录存储数据

bash 复制代码
sudo mkdir /export

将权限分配给当前用户

bash 复制代码
sudo chown -R ${USER} /export

创建其它目录

mkdir /export/servers
mkdir /export/softpackages
mkdir /export/data
mkdir /export/data/hadoop_repo

安装常用软件

更新软件仓库

bash 复制代码
sudo apt update

下载必备软件

bash 复制代码
sudo apt install openssh-server vim curl wget -y

安装 Hadoop

免密配置

设置 sshd 服务开机自启动

bash 复制代码
sudo systemctl enable ssh

启动 ssh 服务

bash 复制代码
sudo systemctl start ssh

生成公钥

bash 复制代码
ssh-keygen

免密登录配置

bash 复制代码
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

安装 JDK

安装 jdk

bash 复制代码
cd /export/softpackages/
tar -xvf OpenJDK8U-jdk_x64_linux_hotspot_8u392b08.tar.gz
mv jdk8u392-b08 /export/servers/jdk8

编辑 /etc/profile 文件

bash 复制代码
sudo vim /etc/profile

添加以下内容

bash 复制代码
export JAVA_HOME=/export/servers/jdk8
export PATH=$PATH:$JAVA_HOME/bin

生效环境变量配置文件

bash 复制代码
source /etc/profile

查看 java 版本

bash 复制代码
java -version

输出如下

openjdk version "1.8.0_392"
OpenJDK Runtime Environment (Temurin)(build 1.8.0_392-b08)
OpenJDK 64-Bit Server VM (Temurin)(build 25.392-b08, mixed mode)

安装 Hadoop

解压 hadoop

bash 复制代码
cd /export/softpackages/
tar -xvf hadoop-3.3.6.tar.gz
mv hadoop-3.3.6 /export/servers

编辑 /etc/profile 文件

bash 复制代码
sudo vim /etc/profile

添加以下内容

bash 复制代码
export HADOOP_HOME=/export/servers/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

生效环境变量配置文件

bash 复制代码
source /etc/profile

查看 hadoop版本

bash 复制代码
hadoop version

输出如下

Hadoop 3.3.6
Source code repository https://github.com/apache/hadoop.git -r 1be78238728da9266a4f88195058f08fd012bf9c
Compiled by ubuntu on 2023-06-18T08:22Z
Compiled on platform linux-x86_64
Compiled with protoc 3.7.1
From source with checksum 5652179ad55f76cb287d9c633bb53bbd
This command was run using /home/demo/export/servers/hadoop-3.3.6/share/hadoop/common/hadoop-common-3.3.6.jar

配置 Hadoop

hadoop-env.sh

编辑 hadoop-env.sh 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/hadoop-env.sh

添加以下内容

bash 复制代码
export JAVA_HOME=/export/servers/jdk8
core-site.sh

编辑 core-env.sh 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/core-site.xml

修改为以下内容

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://0.0.0.0:9000</value>
	</property>
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/export/data/hadoop_repo</value>
	</property>
</configuration>
hdfs-site.sh

编辑 hdfs-site.sh 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/hdfs-site.xml

修改为以下内容

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
</configuration>
mapred-site.sh

编辑 mapred-site.sh 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/mapred-site.xml

修改为以下内容

xml 复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
    </property>
    <!--历史服务器web端地址-->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>0.0.0.0:19888</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>0.0.0.0:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>0.0.0.0:19888</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>
yarn-site.sh

编辑 yarn-site.sh 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/yarn-site.xml

修改为以下内容

xml 复制代码
<?xml version="1.0"?>
<configuration>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>

	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>0.0.0.0</value>
	</property>
</configuration>
workers

编辑 workers 文件,

bash 复制代码
vim /export/servers/hadoop-3.3.6/etc/hadoop/workers

修改为以下内容

0.0.0.0
格式化存储分区
bash 复制代码
hdfs namenode -format
2024-01-19 22:40:04,012 INFO common.Storage: Storage directory /export/data/hadoop_repo/dfs/name has been successfully formatted.

Hadoop服务管理

启动 HDFS

bash 复制代码
start-dfs.sh

启动 YARN

bash 复制代码
start-yarn.sh

启动 Map 历史服务

bash 复制代码
mapred --daemon start historyserver

查看 进程

bash 复制代码
jps

输出如下

8576 JobHistoryServer
7618 SecondaryNameNode
7428 DataNode
7272 NameNode
7803 ResourceManager
7932 NodeManager
8638 Jps

停止 YARN 服务

bash 复制代码
stop-yarn.sh

停止 HDFS 服务

bash 复制代码
stop-dfs.sh

停止 Map 历史服务

使用 jps 查看进程ID

8576 JobHistoryServer
9333 Jps

停止 Map 历史服务

bash 复制代码
kill -15 8576

浏览器访问地址

访问 Hdfs Web 管理界面 (在 本地主机 执行以下命令)

虚拟机IP地址:9870

访问 Yarn Web 管理界面 (在 本地主机 执行)

虚拟机IP地址:8088

访问历史页面 (在 本地主机 执行)

虚拟机IP地址:19888/jobhistory
相关推荐
出发行进7 小时前
Hive其四,Hive的数据导出,案例展示,表类型介绍
数据仓库·hive·hadoop
武子康8 小时前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
筒栗子20 小时前
复习打卡大数据篇——Hadoop MapReduce
大数据·hadoop·mapreduce
金州饿霸20 小时前
Hadoop集群(HDFS集群、YARN集群、MapReduce计算框架)
大数据·hadoop·hdfs
NiNg_1_23421 小时前
Hadoop中MapReduce过程中Shuffle过程实现自定义排序
大数据·hadoop·mapreduce
lucky_syq1 天前
Spark和Hadoop之间的区别
大数据·hadoop·spark
武子康2 天前
大数据-257 离线数仓 - 数据质量监控 监控方法 Griffin架构
java·大数据·数据仓库·hive·hadoop·后端
莹雨潇潇2 天前
Hadoop完全分布式环境部署
大数据·hadoop·分布式
学计算机的睿智大学生2 天前
Hadoop集群搭建
大数据·hadoop·分布式