HDFS集群滚动升级以及回滚相关

HDFS集群滚动升级以及回滚相关

介绍

  • 在hadoop v2中,HDFS支持namenode高可用(HA),使得不停机升级HDFS变的可行。注:从hadoop2.4.0开始才支持滚动升级
  • 因此为了在不停机的情况下升级hdfs集群,必须使用HA设置集群
  • 在HA集群中,有两个或多个namenode,许多DataNode,一下journalnode和一下zookeepernode
  • JN相对稳定,在大多数情况下,升级HDFS时不需要升级
  • 滚动升级过程中,仅针对NNS和DNS,JNS和ZKNS都没有,升级JN和ZKN可能会导致集群停机

不停机滚动升级

非联邦HA集群

假设有两个名称结点NN1和NN2,其中NN1和NN2分别处于active和standby状态

联邦HA集群

  • 联邦集群是拥有多namespace的集群。每个namespace对应一对主备namenode节点
  • 上述这套集群就是速成的联邦+HA集群
  • 联邦集群的升级过程与非联邦集群的升级过程比较相似,没有什么本质不同,知识需要为不同的namespace多重复执行几遍升级操作而已

停机升级--非HA集群

  • 在升级的过程中,势必会存在服务短暂停止的时间,因为namenode需要重启,而这段时间并没有备用节点可选
  • 整体过程同非联邦HA模式的4个步骤类似。不过步骤2的过程要修改

HDFS集群降级和回滚

异同点

共同点

  • 都会将版本退回到升级前的版本
  • 在升级的funalize动作执行之后,将不允许再执行降级和回滚

不同点

  • 降级能支持rolling的方式,可以滚动降级,而回滚需要停止服务一段时间
  • 降级过程只会将软件版本还原成升级前的,会保留用户现有的数据状态
  • 而回滚则会将用户数据还原成升级前的状态模式,现有的数据状态不保存
  • 升级慎重,降级、回滚更要慎重
    生产环境中,集群升级之前必须进行调研,评估升级后的版本跟现有业务的兼容性
    在测试环境下完整模拟升级流程,并且针对升级前集群状态进行备份,避免以外发生导致集群中断
    不要奢求升级失败时,通过回滚、降级等操作挽救集群

HA集群降级(downgrade)



注意事项

  • 降级与升级在HA模式有一个共同点
    在操作namenode时,都是standby节点开始操作,等standby节点升/降结束,做一次切换,使另一个节点得以进行升/降操作,在全程中,始终保持一个active节点对外提供服务
  • 降级过程namenode与DataNode的操作和在升级时操作完全相反
    新版本一般在协议,api只兼容老版本的,如果先降级NN,那么则会造成DN是新本,NN是旧版
    新版DN中的许多协议将会在旧版NN中可能不在兼容
    所以这里必须要先降级DN,然后再把服务端NN进行降级
  • 联邦集群和非HA集群的降级操作与升级操作想对应,进行相应操作命令替换即可

集群回滚操作

  • 回滚注意事项
    • rollback不支持滚动操作的方式,在操作期间,他需要集群对外停止服务
    • rollback操作不仅会将软件版本退回到升级前的版本,还会将用户数据退回到升级前的状态
  • 回滚步骤
相关推荐
极客数模2 小时前
【2026美赛赛题初步翻译F题】2026_ICM_Problem_F
大数据·c语言·python·数学建模·matlab
编程彩机4 小时前
互联网大厂Java面试:从分布式架构到大数据场景解析
java·大数据·微服务·spark·kafka·分布式事务·分布式架构
vx-bot5556665 小时前
企业微信接口在多租户SaaS平台中的集成架构与数据隔离实践
大数据·架构·企业微信
bubuly7 小时前
软件开发全流程注意事项:从需求到运维的全方位指南
大数据·运维·数据库
xixixi777779 小时前
基于零信任架构的通信
大数据·人工智能·架构·零信任·通信·个人隐私
Hello.Reader9 小时前
Flink 自适应批执行(Adaptive Batch Execution)让 Batch 作业“边跑边优化”
大数据·flink·batch
LaughingZhu11 小时前
Product Hunt 每日热榜 | 2026-01-31
大数据·人工智能·经验分享·搜索引擎·产品运营
babe小鑫11 小时前
中专学历进入快消大厂终端销售岗位的可行性分析
大数据
samFuB11 小时前
【工具变量】区县5A级旅游景区DID数据集(2000-2025年)
大数据
百夜﹍悠ゼ11 小时前
数据治理DataHub安装部署
大数据·数据治理