温馨提示×

linux hadoop怎么使用

小樊
49
2026-08-13 13:39:03
栏目: 智能运维

在 Linux 上使用 Hadoop,通常分为 单机模式、伪分布式模式、完全分布式模式。下面我从最常见、最实用的方式给你讲,适合新手快速上手。


一、Hadoop 是什么?

Hadoop 是一个 大数据分布式存储与计算框架,核心包括:

  • HDFS:分布式文件系统
  • YARN:资源调度
  • MapReduce:计算模型

二、Linux 上安装 Hadoop(伪分布式,最常用)

1️⃣ 环境准备

系统要求

  • Linux(CentOS / Ubuntu / Rocky 等)
  • Java 8 或 Java 11

安装 Java

# Ubuntu
sudo apt update
sudo apt install openjdk-8-jdk -y

# CentOS
sudo yum install java-1.8.0-openjdk -y

验证:

java -version

2️⃣ 创建 Hadoop 用户(推荐)

sudo useradd -m hadoop
sudo passwd hadoop
su - hadoop

3️⃣ 下载并安装 Hadoop

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

4️⃣ 配置环境变量

编辑 ~/.bashrc

export HADOOP_HOME=~/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

生效:

source ~/.bashrc

验证:

hadoop version

三、配置伪分布式模式(重点)

1️⃣ 配置 core-site.xml

$HADOOP_HOME/etc/hadoop/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>

5️⃣ 配置 SSH 免密登录

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

测试:

ssh localhost

四、启动 Hadoop

1️⃣ 格式化 HDFS(仅第一次)

hdfs namenode -format

2️⃣ 启动 HDFS

start-dfs.sh

查看进程:

jps

应看到:

NameNode
DataNode
SecondaryNameNode

3️⃣ 启动 YARN

start-yarn.sh

五、Hadoop 基本使用(HDFS)

1️⃣ 查看 HDFS 目录

hdfs dfs -ls /

2️⃣ 创建目录

hdfs dfs -mkdir /input

3️⃣ 上传文件

hdfs dfs -put test.txt /input

4️⃣ 查看文件

hdfs dfs -cat /input/test.txt

5️⃣ 下载文件

hdfs dfs -get /input/test.txt ./

六、运行 MapReduce 示例

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

查看结果:

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

七、Web 管理界面

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

八、停止 Hadoop

stop-yarn.sh
stop-dfs.sh

九、常见错误

问题 解决
JAVA_HOME 未设置 配置 hadoop-env.sh
无法 ssh localhost 配置 SSH 免密
端口被占用 检查 9000 / 9870

十、下一步学什么?

✅ HDFS 原理
✅ MapReduce 编程
✅ Hive / Spark
✅ 完全分布式集群搭建


如果你愿意,我可以:

  • ✅ 一步一步带你 从零搭集群
  • ✅ 给你 生产环境配置
  • ✅ 讲 Hadoop + Spark
  • ✅ 直接给你 常用命令速查表

你现在是 学习 / 面试 / 生产环境 用?

0