下面用**“新手视角 + 可操作步骤”的方式,教你如何在 Debian 上从零开始使用 Hadoop。我会以单机伪分布式(最推荐新手)**为例,既简单又能学到核心概念。
Hadoop 用来存大数据 + 算大数据:
新手先跑通:
在 Debian 上装 Hadoop → 启动 HDFS → 上传文件 → 跑一个例子
sudo apt update
sudo apt install -y openjdk-11-jdk
验证:
java -version
sudo adduser hadoop
sudo usermod -aG sudo hadoop
su - hadoop
后面都用 hadoop 用户操作。
以 Hadoop 3.3.x 为例:
cd ~
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
编辑 ~/.bashrc:
nano ~/.bashrc
添加:
export HADOOP_HOME=/home/hadoop/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
生效:
source ~/.bashrc
编辑以下文件:
etc/hadoop/core-site.xml<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
etc/hadoop/hdfs-site.xml<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
etc/hadoop/hadoop-env.sh确保有:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
测试:
ssh localhost
hdfs namenode -format
start-dfs.sh
检查:
jps
应看到:
Web 页面:
http://localhost:9870
hdfs dfs -mkdir /input
echo "hello hadoop hello debian" > test.txt
hdfs dfs -put test.txt /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
✅ 成功!你已用 Hadoop 算完第一个任务。
❓ 端口打不开
→ Debian 防火墙或浏览器用 localhost
❓ jps 没显示进程
→ 检查 JAVA_HOME 和日志 logs/
❓ 想学 YARN
→ 下一步再学,不急
如果你愿意,我可以:
你更想走哪条路?