温馨提示×

centos hdfs节点如何添加

小樊
41
2026-10-15 04:30:31
栏目: 智能运维

在 CentOS 上向已有的 HDFS 集群中添加一个 DataNode(或新增节点),一般步骤如下(以 Hadoop 2.x / 3.x 为例,假设你已有正常运行的集群):


一、准备工作(新节点)

1. 配置主机名和 hosts

在新节点上:

hostnamectl set-hostname hadoop-new

在 所有节点(包括新节点)的 /etc/hosts 中添加:

192.168.1.10 namenode
192.168.1.11 datanode1
192.168.1.12 datanode2
192.168.1.13 hadoop-new

2. 关闭防火墙(或放行端口)

systemctl stop firewalld
systemctl disable firewalld

或放行 HDFS 端口(如 50010、50020、8020 等)

3. 配置 NTP 时间同步

yum install -y ntp
systemctl start ntpd
systemctl enable ntpd

4. 创建 hadoop 用户(推荐)

useradd hadoop
passwd hadoop

二、安装 Java 和 Hadoop

1. 安装 JDK

yum install -y java-1.8.0-openjdk-devel

2. 同步 Hadoop 安装目录

从已有节点拷贝:

scp -r /opt/hadoop root@hadoop-new:/opt/

或在新节点单独解压相同版本 Hadoop

3. 配置环境变量

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

三、配置 Hadoop(新节点)

编辑 $HADOOP_HOME/etc/hadoop/ 下的文件:

1. core-site.xml

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://namenode:8020</value>
  </property>
</configuration>

2. hdfs-site.xml

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

3. 创建数据目录

mkdir -p /data/hadoop/hdfs/datanode
chown -R hadoop:hadoop /data/hadoop

四、配置 SSH 免密(NameNode → 新节点)

在 NameNode 上:

ssh-copy-id hadoop-new

五、更新集群配置

1. 修改 workers(或 slaves)

在 NameNode 上:

vi $HADOOP_HOME/etc/hadoop/workers

添加:

hadoop-new

2. 同步配置到新节点

scp $HADOOP_HOME/etc/hadoop/* hadoop-new:$HADOOP_HOME/etc/hadoop/

六、启动 DataNode

在新节点上:

su - hadoop
hdfs --daemon start datanode

七、验证节点是否加入

1. 查看 HDFS 报告

在 NameNode 上:

hdfs dfsadmin -report

应能看到新节点 hadoop-new

2. Web UI

http://namenode:9870

(Hadoop 3.x,2.x 是 50070)


八、可选:动态扩容(不重启集群)

如果集群已运行,可直接启动 DataNode,无需重启 NameNode。


如果你需要的是:

  • 添加 NameNode(HA)
  • 添加 JournalNode
  • CentOS 7 / 8 差异
  • Docker / 云环境部署

可以告诉我你的集群架构,我可以给你更具体的步骤。

0 踩