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
相关推荐
小四的快乐生活19 小时前
Hive 存储管理测试用例设计指南
hive·hadoop·测试用例
三劫散仙1 天前
mac m1上使用Kerberos访问远程linux hadoop集群的正确姿势
linux·hadoop·macos
源图客1 天前
Apache Ozone 2.0.0集群部署
hadoop·ozone
计算机毕设残哥1 天前
大数据毕业设计推荐:基于Hadoop+Spark的手机信息分析系统完整方案
大数据·hadoop·课程设计
越来越无动于衷2 天前
Spring Boot 整合 Spring MVC:自动配置与扩展实践
数据仓库·hive·hadoop
Lx3522 天前
Hadoop数据倾斜问题诊断与解决方案
大数据·hadoop
A 计算机毕业设计-小途3 天前
大四零基础用Vue+ElementUI一周做完化妆品推荐系统?
java·大数据·hadoop·python·spark·毕业设计·毕设
超级迅猛龙3 天前
保姆级Debezium抽取SQL Server同步kafka
数据库·hadoop·mysql·sqlserver·kafka·linq·cdc
青云交3 天前
Java 大视界 -- Java 大数据分布式计算在基因测序数据分析与精准医疗中的应用(400)
java·hadoop·spark·分布式计算·基因测序·java 大数据·精准医疗
Lx3523 天前
Hadoop小文件处理难题:合并与优化的最佳实践
大数据·hadoop