温馨提示×

linux hdfs怎么配置

小樊
43
2026-07-15 00:36:16
栏目: 智能运维

下面给你一个Linux 下 HDFS(Hadoop Distributed File System)配置的完整流程说明,适用于 Hadoop 3.x(2.x 也基本通用),假设你是在单节点伪分布式环境下配置(最常用、也最适合学习)。


一、环境准备

1️⃣ 系统要求

  • Linux(CentOS / Ubuntu / Rocky 等)
  • Java 8 或以上
  • SSH 免密登录(即使单节点也需要)

2️⃣ 安装 Java

java -version

如果没有安装:

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

# Ubuntu
apt install -y openjdk-8-jdk

配置 JAVA_HOME

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk

二、下载并安装 Hadoop

1️⃣ 下载 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 /usr/local/hadoop

2️⃣ 配置环境变量

编辑 ~/.bashrc

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

生效:

source ~/.bashrc

三、SSH 免密登录(必须)

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

测试:

ssh localhost

四、HDFS 核心配置文件

所有配置文件都在:

$HADOOP_HOME/etc/hadoop

1️⃣ hadoop-env.sh

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk

2️⃣ core-site.xml

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

3️⃣ hdfs-site.xml(关键)

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

    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/data/namenode</value>
    </property>

    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/data/datanode</value>
    </property>
</configuration>

创建目录:

mkdir -p /usr/local/hadoop/data/namenode
mkdir -p /usr/local/hadoop/data/datanode

五、格式化 HDFS(只做一次)

⚠️ 格式化会清空 HDFS 数据

hdfs namenode -format

看到:

Storage directory ... has been successfully formatted

表示成功。


六、启动 HDFS

start-dfs.sh

检查进程:

jps

应看到:

NameNode
DataNode
SecondaryNameNode

七、验证 HDFS

1️⃣ Web UI

浏览器访问:

http://localhost:9870

(Hadoop 3.x 默认端口)


2️⃣ 基本 HDFS 命令

hdfs dfs -ls /
hdfs dfs -mkdir /test
hdfs dfs -put file.txt /test
hdfs dfs -cat /test/file.txt

八、关闭 HDFS

stop-dfs.sh

九、常见问题

❌ NameNode 起不来

  • 检查 JAVA_HOME
  • 检查端口是否被占用(9000)
  • 查看日志:
$HADOOP_HOME/logs/hadoop-*-namenode-*.log

十、下一步你可以做什么?

  • 配置 YARN(MapReduce)
  • 配置 完全分布式集群
  • 调优 hdfs-site.xml
  • 配置 HA(高可用)

如果你愿意,可以直接告诉我: ✅ 单节点 / 多节点
✅ Hadoop 版本
✅ 报错信息

我可以按你的环境一步步帮你配 ✅

0