温馨提示×

debian Hadoop咋入门

小樊
34
2026-09-17 16:49:01
栏目: 智能运维

下面给你一个在 Debian 上入门 Hadoop的实用路线,适合零基础到能跑通第一个例子。


一、先搞清楚 Hadoop 是什么

Hadoop 不是一个程序,而是一套分布式存储 + 分布式计算的生态:

  • HDFS:分布式文件系统(存数据)
  • MapReduce / YARN:分布式计算框架(算数据)
  • 常用配套:Hive、HBase、Spark(后面再学)

入门阶段:先跑通单机 / 伪分布式模式


二、Debian 环境准备

1. 系统要求

  • Debian 11 / 12(推荐)
  • 内存 ≥ 2GB(伪分布式够用)
  • 已配置好网络

2. 安装 Java(必须)

Hadoop 依赖 JDK:

sudo apt update
sudo apt install default-jdk -y
java -version

三、创建专用用户(推荐)

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

四、下载并安装 Hadoop

以 Hadoop 3.3.x 为例:

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

配置环境变量:

nano ~/.bashrc

添加:

export HADOOP_HOME=~/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

生效:

source ~/.bashrc

五、配置 SSH(伪分布式必须)

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

六、配置伪分布式模式

编辑以下文件(在 ~/hadoop/etc/hadoop/

1. core-site.xml

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

2. hdfs-site.xml

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

3. mapred-site.xml

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

4. yarn-site.xml

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

七、格式化并启动

hdfs namenode -format
start-dfs.sh
start-yarn.sh

检查:

jps

应看到:

  • NameNode
  • DataNode
  • ResourceManager
  • NodeManager

Web 页面:

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

八、跑第一个例子

hdfs dfs -mkdir /input
hdfs dfs -put ~/hadoop/etc/hadoop/*.xml /input

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.6.jar wordcount /input /output

hdfs dfs -cat /output/part-r-00000

九、学习路线建议

  1. HDFS 命令(put / get / ls)
  2. MapReduce 原理(先懂,不急着写)
  3. 伪分布式 → 完全分布式(多台 Debian)
  4. 再学 Hive / Spark

十、常见坑

  • Java 没装 → 启动失败
  • SSH 不通 → localhost 无法连接
  • 防火墙 / 权限问题
  • Debian 用 apt,不要用 CentOS 教程

如果你愿意,我可以:

  • 给你 一步步命令版
  • 或帮你 配多机 Hadoop 集群
  • 或讲 MapReduce 入门代码

你现在是 纯新手 还是 有点 Linux 基础

0