温馨提示×

centos怎样升级hdfs版本

小樊
49
2026-09-12 08:21:30
栏目: 智能运维

在 CentOS 上升级 HDFS(Hadoop HDFS)版本,通常不是“yum 升级”那么简单,而是替换 Hadoop 安装包 + 兼容旧数据。下面按常规生产做法说明。


一、升级前准备(非常重要)

1. 明确当前版本

hadoop version

或

hdfs version

2. 查看官方兼容性

  • Hadoop 官方 upgrade guide
  • 注意:
    • 小版本升级(如 3.3.4 → 3.3.6):通常可滚动升级
    • 大版本升级(如 2.x → 3.x):需要正式升级流程

3. 备份(必须)

  • NameNode 元数据
# 停止集群后
cp -r ${HADOOP_HOME}/dfs/name ${BACKUP_DIR}
  • 配置文件
cp -r ${HADOOP_HOME}/etc/hadoop ${BACKUP_DIR}/hadoop-etc

4. 停止集群

stop-dfs.sh

二、升级方式选择

方式一:直接替换(小版本升级,推荐)

1. 下载新版本

wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzf hadoop-3.3.6.tar.gz -C /opt

2. 替换 Hadoop 目录

mv /opt/hadoop /opt/hadoop_old
ln -s /opt/hadoop-3.3.6 /opt/hadoop

3. 保留配置

cp -r /opt/hadoop_old/etc/hadoop/* /opt/hadoop/etc/hadoop/

4. 启动

start-dfs.sh

方式二:正式升级(大版本 / 官方推荐)

1. 启动升级模式

start-dfs.sh -upgrade

2. 检查升级状态

hdfs dfsadmin -upgradeProgress status

3. 确认无误后完成升级

hdfs dfsadmin -finalizeUpgrade

⚠️ 若失败,可回滚:

start-dfs.sh -rollback

三、CentOS 特有注意事项

1. Java 版本

  • Hadoop 3.x 需要 Java 8 / 11
java -version

2. 防火墙 / SELinux

systemctl stop firewalld
setenforce 0

3. 权限

chown -R hdfs:hadoop /opt/hadoop-3.3.6

四、验证升级成功

hdfs version
hdfs dfsadmin -report

五、常见坑

  • 配置文件不兼容(core-site.xml / hdfs-site.xml)
  • JournalNode 未升级
  • DataNode 数据目录权限错误
  • Hadoop 依赖的 native 库缺失

如果你能告诉我:

  • 当前 HDFS 版本
  • 目标版本
  • 是否 HA / 单节点

我可以给你精确到命令的升级方案。

0 踩