温馨提示×

debian启动hadoop咋弄

小樊
44
2026-10-11 09:31:00
栏目: 智能运维

在 Debian 上启动 Hadoop,一般分 单机/伪分布式 和 完全分布式 两种。下面给你一个最常用、最稳妥的“伪分布式”启动流程,适合学习和测试。


一、准备工作

1. 安装 JDK

Hadoop 依赖 Java:

sudo apt update
sudo apt install openjdk-11-jdk -y

验证:

java -version

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

sudo adduser hadoop
su - hadoop

3. 配置 SSH 免密登录

Hadoop 启动脚本依赖 SSH:

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

测试:

ssh localhost

二、下载并安装 Hadoop

以 Hadoop 3.3.x 为例:

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzvf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 /opt/hadoop

三、配置环境变量

编辑 ~/.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

四、配置伪分布式模式

1. core-site.xml

nano $HADOOP_HOME/etc/hadoop/core-site.xml
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
  </property>
</configuration>

2. hdfs-site.xml

nano $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

3. mapred-site.xml

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

4. 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>

五、格式化 HDFS

⚠️ 只做一次

hdfs namenode -format

六、启动 Hadoop

start-dfs.sh
start-yarn.sh

查看进程:

jps

应看到:

  • NameNode
  • DataNode
  • ResourceManager
  • NodeManager

七、验证

Web 界面:

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

八、停止 Hadoop

stop-yarn.sh
stop-dfs.sh

如果你是要 完全分布式(多台 Debian 机器),或者 用 systemd 开机自启,我可以继续给你写。

0 踩