【七】Hadoop3.3.4基于ubuntu24的分布式集群安装

1. 下载和准备工作

1.1 安装包下载

https://archive.apache.org/dist/hadoop/common/hadoop-3.3.4/
访问apche官网源,下载3.3.4版本,我们用二进制通用版即可,因为hadoop运行在java环境,跨平台性使得无需编译arm架构版本。Hadoop 3.3.4 是当前稳定版本,兼容性和长期支持较好。此版本对最新的Spark和Flink以及Hive也有良好的支持。
然后将文件传到服务器ubuntu1节点。

1.2 前提条件

本次安装实验基于苹果m2芯片的mac系统,使用vmware fusion搭建三台ubuntu24分布式虚拟机,确保在三台机器上安装了Java jdk8,并配置了免密码登录,网络互通,防火墙关闭,授时服务器已经同步。如无提示,本次所有安装步骤均在root用户权限下进行。

hostname ip
ubuntu1 172.16.167.131
ubuntu2 172.16.167.132
ubuntu3 172.16.167.133

2. 安装过程

安装过程中遇到的报错已经在5. 安装报错小节中体现。本小节的所有配置和步骤均为优化后的无坑版安装方式。

STEP 1: 解压并配置Hadoop

首先,使用su rootroot权限,在Ubuntu1上解压Hadoop并配置环境变量:

tar -xzf hadoop-3.3.4.tar.gz
mv hadoop-3.3.4 /usr/local/hadoop

# 配置环境变量
vim ~/.bashrc
# 添加JDK路径到PATH
export JAVA_HOME=/usr/local/jdk1.8.0_411
export PATH=$PATH:$JAVA_HOME/bin
# 设置Hadoop环境变量
export HADOOP_HOME=/usr/local/hadoop
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
# 添加Hadoop路径到PATH
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

# 刷新环境
source ~/.bashrc

首先要有java jdk的环境变量,java在此前已经成功配置。
如果已经在 ~/.bashrc 中添加了Hadoop和JDK的环境变量,并且是以 root 用户登录和运行Hadoop,那么通常情况下不需要在 /etc/profile 中再次添加这些环境变量。配置在 ~/.bashrc 中已经足够确保在每次以 root 用户打开新的终端时,这些环境变量都会生效。

选择环境变量添加位置的原则

  • 仅需要特定用户生效:在用户的 ~/.bashrc 文件中添加环境变量,当前我们以root用户权限登录。
  • 需要所有用户生效:在 /etc/profile 文件中添加环境变量。

如果你希望这些环境变量在所有用户登录时都生效(例如,你有多个用户需要运行Hadoop),可以考虑将这些配置添加到 /etc/profile 中。这可以确保所有用户登录时都能够使用这些环境变量。

检查环境变量是否生效

在控制台打印以下内容,如果回显出正确路径,即为配置成功。

echo $JAVA_HOME
echo $HADOOP_HOME
echo $PATH

STEP 2: 配置Hadoop

修改Hadoop配置文件。其中HADOOP_HOME已经设置为/usr/local/hadoop

2.1. 修改core-site.xml

请在三台服务器上创建目录/home/hadoop/tmp并赋予777权限,赋予777权限在生产环境并不是安全的方式,请注意。
目录权限的推荐分配方式:

  • 专用用户和组:通常情况下,Hadoop会运行在一个专用用户(例如,hadoop 用户)和一个专用组(例如,hadoop 组)下。确保这些目录的所有者是该用户和组,在这里我们为了方便,只用root用户。
  • 适当的权限设置:通常情况下,目录的权限设置为750(即,所有者具有读、写和执行权限,组具有读和执行权限,其他人没有任何权限)或700(即,只有所有者具有读、写和执行权限)。这可以有效地保护数据不被非授权用户访问和修改。

vim $HADOOP_HOME/etc/hadoop/core-site.xml添加以下内容:

<configuration>
 <property>
   <name>fs.defaultFS</name>
   <value>hdfs://ubuntu1:9000</value>
 </property>
 <!--指定hadoop 数据的存储目录默认为/tmp/hadoop-${user.name} -->
 <property>
	 <name>hadoop.tmp.dir</name>
	 <value>/home/hadoop/tmp</value>
 </property>
 <!--hive.hosts 允许 root 代理用户访问 Hadoop 文件系统设置 -->
 <property>
   <name>hadoop.proxyuser.root.hosts</name>
    <value>*</value>
 </property>
 <!--hive.groups 允许 Hive 代理用户访问 Hadoop 文件系统设置 -->
 <property>
   <name>hadoop.proxyuser.root.groups</name>
   <value>*</value>
 </property>
<!-- 配置 HDFS 网页登录使用的静态用户为 root -->
  <property>
    <name>hadoop.http.staticuser.user</name>
    <value>root</value>
  </property>
<!--配置缓存区的大小,实际可根据服务器的性能动态做调整-->
  <property>
    <name>io.file.buffer.size</name>
    <value>4096</value>
  </property>
<!--开启hdfs垃圾回收机制,可以将删除数据从其中回收,单位为分钟-->
  <property>
    <name>fs.trash.interval</name>
    <value>10080</value>
  </property>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序终结者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值