↓ 跳过正文
  1. 科学/
  2. 计算机/
  3. 工具/
  4. Hadoop/

安装配置

Hadoop 学习记录 - 🔖
1: 本文

简介

安装

使用 Termux Proot-distro 容器 ubuntu-24.04 版本进行安装

切换 root (su)后更新

apt update && apt upgrade

jdk 版本查看并切换


update-alternatives --list java
update-alternatives --config java

创建新用户

useradd -m hadoop
passwd hadoop

切换 hadoop 用户并输入密码

su - hadoop

下载 hadoop 二进制包(aarch64)

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.5.0/hadoop-3.5.0-aarch64.tar.gz

解压并移动

tar -zxvf hadoop-3.5.0-aarch64.tar.gz
mv hadoop-3.5.0-aarch64 ~/hadoop

配置环境变量

export HADOOP_HOME=$HOME/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-arm64

添加环境变量到 hadoop-env.sh

echo "export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-arm64" >> $HADOOP_HOME/etc/hadoop/hadoop-env.sh

配置 ssh 免密

ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

测试免密登录

ssh localhost

hadoop 配置

打开 core-site.xml

nvim $HADOOP_HOME/etc/hadoop/core-site.xml

写入

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:///home/hadoop/hadoop‑tmp</value>
    </property>
</configuration>

打开 hdfs‑site.xml

nvim $HADOOP_HOME/etc/hadoop/hdfs-site.xml

写入

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

打开 mapred‑site.xml

nvim $HADOOP_HOME/etc/hadoop/mapred-site.xml

写入

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=/home/hadoop/hadoop</value>
    </property>
    <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=/home/hadoop/hadoop</value>
    </property>
    <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=/home/hadoop/hadoop</value>
    </property>
</configuration>

打开 yarn-site.xml

nvim $HADOOP_HOME/etc/hadoop/yarn-site.xml

写入

<configuration>
    <property>
        <name>yarn.nodemanager.aux‑services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

格式化 hdfs

hdfs namenode -format

启动集群(Termux ssh 22 端口报错)

start‑all.sh
# 查看进程
jps

# 停止集群
stop‑all.sh

使用下面启动

hdfs --daemon start namenode
hdfs --daemon start datanode
hdfs --daemon start secondarynamenode
yarn --daemon start resourcemanager
yarn --daemon start nodemanager

使用下面关闭

hdfs --daemon stop namenode
hdfs --daemon stop datanode
hdfs --daemon stop secondarynamenode
yarn --daemon stop resourcemanager
yarn --daemon stop nodemanager

在浏览器打开 8088 和 9870 端口

http://localhost:9870
http://localhost:8088

课堂安装配置 Hadood

hosts 修改映射 ip-用户,然后 ssh 无密。
下载安装 jdk,hadoop,并写入环境变量。
配置 hadoop 文件 .xml .sh workers 等。
启动。

修改 ip 映射

echo -e '192.168.34.143 master\n192.168.47.176 slave1\n192.168.36.107 slave2' >> /etc/hosts

配置 ssh (略)

解压文件

tar -zxvf /home/software/jdk-8u212-linux-x64.tar.gz -C /home/java/
echo 'export JAVA_HOME=/home/java/jdk1.8.0_212' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> ~/etc/profile

复制配置文件

scp -r /home/java/ root@slave1:/home/
scp -r /home/java/ root@slave2:/home/

scp -r /etc/profile root@slave1:/etc/
scp -r /etc/profile root@slave2:/etc/

java -version

安装脚本

echo -e '192.168.34.143 master\n192.168.47.176 slave1\n192.168.36.107 slave2' >> /etc/hosts


echo 'tar -zxvf /home/software/jdk-8u212-linux-x64.tar.gz -C /home/java/'
mkdir -p /home/java
tar -zxvf /home/software/jdk-8u212-linux-x64.tar.gz -C /home/java/

echo 'export JAVA_HOME=/home/java/jdk1.8.0_212' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile

echo 'scp -r /home/java/ root@slave1:/home/ \n scp -r /home/java/ root@slave2:/home/'
scp -r /home/java/ root@slave1:/home/
scp -r /home/java/ root@slave2:/home/
                                               
echo 'scp -r /etc/profile root@slave1:/etc/ \n scp -r /etc/profile root@slave2:/etc/'
scp -r /etc/profile root@slave1:/etc/
scp -r /etc/profile root@slave2:/etc/

java -version
Hadoop 学习记录 - 🔖
1: 本文