温馨提示×

debian hadoop集群怎样搭

小樊
49
2026-09-08 12:56:30
栏目: 智能运维

下面给你一份在 Debian 上搭建 Hadoop 集群(以 Hadoop 3.x 为例)的实操指南,偏向入门 / 实验集群,生产环境可在此基础上加固。


一、集群规划(示例)

假设 3 台 Debian 机器:

主机名 IP 角色
master 192.168.10.10 NameNode + ResourceManager
slave1 192.168.10.11 DataNode + NodeManager
slave2 192.168.10.12 DataNode + NodeManager

建议 Debian 11 / 12,最小化安装


二、基础环境准备(所有节点)

1. 修改主机名

hostnamectl set-hostname master
# slave 节点分别设为 slave1 / slave2

2. 配置 hosts

vim /etc/hosts
192.168.10.10 master
192.168.10.11 slave1
192.168.10.12 slave2

3. 安装 JDK

apt update
apt install -y openjdk-11-jdk
java -version

4. 创建 hadoop 用户(可选但推荐)

useradd -m hadoop
passwd hadoop

5. 配置 SSH 免密(重要)

master 上:

su - hadoop
ssh-keygen -t rsa
ssh-copy-id hadoop@slave1
ssh-copy-id hadoop@slave2
ssh-copy-id hadoop@master

三、安装 Hadoop(所有节点)

cd /opt
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzf hadoop-3.3.6.tar.gz
mv hadoop-3.3.6 hadoop
chown -R hadoop:hadoop /opt/hadoop

四、配置环境变量

vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc

五、Hadoop 核心配置(master 节点)

以下配置文件在:

cd $HADOOP_HOME/etc/hadoop

1. hadoop-env.sh

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

2. core-site.xml

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

3. hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/opt/hadoop/data/namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/opt/hadoop/data/datanode</value>
  </property>
</configuration>

4. mapred-site.xml

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

5. yarn-site.xml

<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
</configuration>

6. workers(旧版叫 slaves)

vim workers
slave1
slave2

六、同步配置到所有节点

在 master:

scp -r /opt/hadoop slave1:/opt/
scp -r /opt/hadoop slave2:/opt/

七、启动 Hadoop

1. 格式化 NameNode(仅一次)

hdfs namenode -format

2. 启动 HDFS

start-dfs.sh

3. 启动 YARN

start-yarn.sh

八、验证

查看进程

jps
  • master:NameNode, ResourceManager
  • slave:DataNode, NodeManager

Web 页面

  • HDFS: http://master:9870
  • YARN: http://master:8088

测试 HDFS

hdfs dfs -mkdir /test
hdfs dfs -put ~/.bashrc /test
hdfs dfs -ls /test

九、常见问题

Debian 防火墙

ufw disable
# 或放行 9000 / 9870 / 8088

权限问题

  • 确保 /opt/hadoop/data 属主是 hadoop

Java 版本

  • Hadoop 3.x 推荐 Java 8 / 11

如果你需要:

  • Debian + Docker 搭建
  • HA(高可用)集群
  • 生产级参数调优

告诉我你的使用场景,我可以直接给你对应方案。

0