温馨提示×

hdfs在centos怎扩容

小樊
38
2026-10-09 08:43:14
栏目: 智能运维

在 CentOS 上给 HDFS 扩容,通常不是“直接扩 HDFS”,而是先扩容底层存储(磁盘 / 数据节点),再让 HDFS 识别并使用。下面按常见场景给你一套清晰做法。


一、HDFS 扩容的两种主要方式

方式 1:加 DataNode 节点(横向扩容,最推荐)

适合:集群规模扩大

方式 2:在已有节点上 加磁盘(纵向扩容)

适合:单机磁盘不够


二、方式一:新增 DataNode 节点(CentOS)

1. 新节点准备

新 CentOS 机器:

  • 安装相同 JDK
  • 安装相同 Hadoop 版本
  • 配置主机名 & hosts
vi /etc/hosts
# 所有节点都要能互相解析

2. 配置无密码 SSH

从 NameNode 到新节点:

ssh-keygen
ssh-copy-id hadoop@newnode

3. 同步 Hadoop 配置

scp -r $HADOOP_HOME newnode:$HADOOP_HOME

4. 修改 slaves / workers

vi $HADOOP_HOME/etc/hadoop/workers
# 加入新节点
newnode

5. 启动 DataNode

hdfs --daemon start datanode

6. 验证

hdfs dfsadmin -report

能看到新节点即成功。


三、方式二:已有节点加磁盘(CentOS)

1. 添加新磁盘并格式化

fdisk -l
mkfs.xfs /dev/sdb
mkdir /data2
mount /dev/sdb /data2

2. 永久挂载

vi /etc/fstab
/dev/sdb /data2 xfs defaults 0 0

3. 修改 Hadoop 配置

vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<property>
  <name>dfs.datanode.data.dir</name>
  <value>/data1/dfs,/data2/dfs</value>
</property>

4. 重启 DataNode

hdfs --daemon stop datanode
hdfs --daemon start datanode

四、HDFS 容量生效 & 均衡(重要)

1. 查看容量

hdfs dfsadmin -report

2. 数据均衡(新盘/新节点)

start-balancer.sh -threshold 10

或:

hdfs balancer -threshold 10

五、常见坑提醒

  • ❌ 不要直接改 NameNode 磁盘
  • ✅ HDFS 容量 = 所有 DataNode 可用空间之和
  • ✅ 防火墙 / SELinux 要关闭或放行
  • ✅ Hadoop 版本必须一致

如果你愿意,可以告诉我:

  • 你是 CDH / HDP / 原生 Hadoop?
  • 是 加机器 还是 加磁盘?
  • 当前 HDFS 版本

我可以给你更精确的命令和配置。

0 踩