温馨提示×

Debian怎么配置Hadoop

小樊
39
2026-07-18 17:11:57
栏目: 智能运维

下面给你一个**在 Debian 系统上配置 Hadoop(单机/伪分布式)**的完整流程示例,适合学习和开发环境。如果你需要 完全分布式集群,我也可以再补充。


一、环境准备

1. 系统要求

  • Debian 10 / 11 / 12(推荐 64 位)
  • 至少 4GB 内存(伪分布式)
  • Java 8 或 Java 11

2. 更新系统

sudo apt update
sudo apt upgrade -y

二、安装 Java

Hadoop 依赖 Java,推荐 OpenJDK。

sudo apt install openjdk-11-jdk -y

验证:

java -version

设置 JAVA_HOME(编辑 /etc/profile~/.bashrc):

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

生效:

source ~/.bashrc

三、创建 Hadoop 用户(可选但推荐)

sudo adduser hadoop
sudo usermod -aG sudo hadoop
su - hadoop

四、下载并安装 Hadoop

1. 下载 Hadoop

去官网复制最新链接,例如:

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz

2. 解压

tar -zxvf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 /usr/local/hadoop

3. 配置环境变量

编辑 ~/.bashrc

export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

生效:

source ~/.bashrc

五、配置 Hadoop(伪分布式)

1. hadoop-env.sh

nano $HADOOP_HOME/etc/hadoop/hadoop-env.sh

添加或修改:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

2. core-site.xml

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

内容:

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
  </property>
</configuration>

3. hdfs-site.xml

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

内容:

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///usr/local/hadoop/data/namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///usr/local/hadoop/data/datanode</value>
  </property>
</configuration>

创建目录:

mkdir -p /usr/local/hadoop/data/namenode
mkdir -p /usr/local/hadoop/data/datanode

4. mapred-site.xml

nano $HADOOP_HOME/etc/hadoop/mapred-site.xml
<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

5. yarn-site.xml

nano $HADOOP_HOME/etc/hadoop/yarn-site.xml
<configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
</configuration>

六、配置 SSH 免密登录

Hadoop 需要通过 SSH 启动节点。

sudo apt install ssh -y
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

测试:

ssh localhost

(能无密码登录即可)


七、格式化 HDFS

⚠️ 只执行一次

hdfs namenode -format

八、启动 Hadoop

start-dfs.sh
start-yarn.sh

检查进程:

jps

应看到:

  • NameNode
  • DataNode
  • SecondaryNameNode
  • ResourceManager
  • NodeManager

九、访问 Web UI

  • HDFS:
    http://localhost:9870

  • YARN:
    http://localhost:8088


十、测试 Hadoop

hdfs dfs -mkdir /input
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /input
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /input /output
hdfs dfs -cat /output/part-r-00000

十一、常见问题

1. JAVA_HOME 报错

确认 hadoop-env.sh 中 JAVA_HOME 设置正确。

2. 端口被占用

检查 9000 / 9870 / 8088 端口。

3. Debian 防火墙

sudo ufw disable

如果你需要:

  • 完全分布式集群(多台 Debian 节点)
  • Hadoop + Hive / Spark
  • 生产环境优化

告诉我你的使用场景,我可以给你定制方案。

0