温馨提示×

linux hadoop怎集群

小樊
38
2026-10-19 03:57:31
栏目: 智能运维

你说的应该是 “Linux 下如何搭建 Hadoop 集群”(Hadoop 集群部署)。下面我给你一个实用、主流的搭建思路(以 Hadoop 3.x + Linux(CentOS/Ubuntu) 为例,伪分布式 / 完全分布式都适用)。


一、集群规划(示例)

节点 主机名 角色
1 master NameNode / ResourceManager
2 slave1 DataNode / NodeManager
3 slave2 DataNode / NodeManager

如果是学习用,也可以先搭 伪分布式(单台机器)


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

1. 关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

2. 配置主机名

hostnamectl set-hostname master

3. 配置 hosts

vi /etc/hosts
192.168.1.10 master
192.168.1.11 slave1
192.168.1.12 slave2

4. 配置 SSH 免密登录(重点)

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

三、安装 JDK(所有节点)

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

四、安装 Hadoop

1. 下载并解压

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

2. 配置环境变量

vi /etc/profile
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile

五、Hadoop 核心配置(master 节点)

1. hadoop-env.sh

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

2. 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>

3. 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>

4. mapred-site.xml

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

5. yarn-site.xml

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

6. workers

vi $HADOOP_HOME/etc/hadoop/workers
slave1
slave2

六、同步 Hadoop 到从节点

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

七、启动集群

1. 格式化 NameNode(第一次)

hdfs namenode -format

2. 启动 HDFS

start-dfs.sh

3. 启动 YARN

start-yarn.sh

4. 查看进程

jps

应包含:

  • NameNode
  • DataNode
  • ResourceManager
  • NodeManager

八、验证集群

浏览器访问:

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

测试命令:

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

九、常见问题

✅ DataNode 没起来
→ 删除 dfs/data,重新格式化

✅ SSH 不通
→ 检查 .ssh/authorized_keys 权限

✅ 端口被占用
→ 检查 9000 / 8088 / 9870


如果你愿意,我可以:

  • ✅ 给你 一步一步的命令脚本
  • ✅ 教你 Docker 搭 Hadoop 集群
  • ✅ 帮你 排查你现在的报错

你现在是 刚准备搭,还是已经报错卡住了?

0 踩