温馨提示×

linux hdfs配置集群如何做

小樊
40
2026-10-01 14:44:24
栏目: 智能运维

下面给你一个Linux 下搭建 HDFS 集群(Hadoop 分布式文件系统)的实用级步骤指南,以 Hadoop 3.x 为例,适合学习和生产入门。


一、集群规划(示例)

假设 3 台机器:

主机名 IP 角色
master 192.168.1.10 NameNode + ResourceManager
slave1 192.168.1.11 DataNode
slave2 192.168.1.12 DataNode

实际生产可分离 NameNode / ResourceManager / DataNode


二、基础环境准备(所有节点)

1. 安装 JDK

yum install java-1.8.0-openjdk-devel -y
# 或
apt install openjdk-8-jdk -y

验证:

java -version

2. 创建用户(推荐)

useradd hadoop
passwd hadoop

3. 配置主机名与 hosts

hostnamectl set-hostname master

/etc/hosts:

192.168.1.10 master
192.168.1.11 slave1
192.168.1.12 slave2

4. 配置 SSH 免密(关键)

在 master 上:

ssh-keygen -t rsa
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2

测试:

ssh slave1

三、安装 Hadoop

所有节点:

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 -C /opt
ln -s /opt/hadoop-3.3.6 /opt/hadoop

四、配置环境变量

/etc/profile.d/hadoop.sh:

export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-1.8.0
source /etc/profile

五、HDFS 核心配置文件

配置文件目录:

$HADOOP_HOME/etc/hadoop

1. core-site.xml

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/hadoop/tmp</value>
  </property>
</configuration>

2. hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/opt/hadoop/dfs/name</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/opt/hadoop/dfs/data</value>
  </property>
</configuration>

3. workers(Hadoop 3)

slave1
slave2

4. hadoop-env.sh

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

六、同步配置到所有节点

scp -r /opt/hadoop slave1:/opt
scp -r /opt/hadoop slave2:/opt

七、启动 HDFS 集群

1. 格式化 NameNode(仅一次)

hdfs namenode -format

2. 启动 HDFS

start-dfs.sh

3. 验证

jps
  • master:NameNode
  • slave:DataNode

Web UI:

http://master:9870

八、常用命令测试

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

九、常见问题

1. DataNode 起不来

  • 检查 workers
  • 检查 SSH
  • 删除 dfs/data 重新格式化

2. 端口不通

  • 关闭防火墙或放行端口
systemctl stop firewalld

十、可选增强

  • HA(高可用)
  • Kerberos 安全
  • YARN 集群
  • 多 NameNode(联邦)

如果你愿意,我可以:

  • 给你 一键部署脚本
  • 教你 Docker 搭建 HDFS
  • 或按 生产环境规范配置

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

0 踩