HDFS的QJM方案

Quorum Journal Manager仲裁日志管理器

介绍

  • Quorum Journal Manager(仲裁日志管理器),是Hadoop官方推荐的hdfs HA解决方案之一
  • 使用zookeeper中ZKFC来实现主备切换
  • 使用Journal Node(JN)集群来实现edits log的共享以达到数据同步的目的。

主备切换,脑裂问题解决---ZKFailoverController(zkfc)

ZK FAi咯verCON他蹂躏了人是一个zookeeper客户端。主要职责:

  • 监视和管理namenode健康状态
    ZKFC通过命令监视namenode节点及机器的健康状态
  • 维持和ZK集群联系
    如果本地namenode运行状况良好,并且ZKFC看到当前没有其他节点持有锁znode,它将自己尝试获取该锁。如果成功,则表明它"赢得了选举",并负责运行故障转移以使其本地namenode处于active状态。如果极硬呦其他节点持有锁,zkfc选举失败,则会对该节点注册监听,等待下次选举。

主备切换,脑裂问题解决-- Fencing(隔离)机制

  • 故障转移过程也就是俗称的主备角色切换的过程,切换过程中最怕的就是脑裂的发生。因此需要Fencing机制来避免,将先前的active节点隔离,然后将standby转换为active状态
  • Hadoop公共库中对外提供了两种Fenc ing实现,分别是sshfence和shellfence(却省实现)
    sshfence是通过ssh登陆目标节点上,使用命令fuser将进程杀死(通过tcp端口号定位进程pid,该方法比ips命令更准确)
    shellfence是指执行一个用户事先定义的shel命令(脚本)完成隔离

主备数据状态同步问题解决

  • Journal Node(JN)集群是轻量级分布式系统,主要用于高速读写数据,存储数据
  • 通常使用2N+1台Journal Node存储共享Edits Log(编辑日志)。----底层类似zk德分布式一致性算法
  • 任何修改操作在active NN上执行时,Journal Log进程同时也会记录edits log到至少半数以上的JN中,这时Standby NN检测到JN里面的同步log发生变化了会读取JN里面的edits log,然后重演操作记录同步到自己的目录镜像树里面

HA集群搭建

集群基础环境准备

HA集群规划

上传安装包,配置环境变量

HA集群初始化

相关推荐
你觉得2055 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
啊喜拔牙5 小时前
1. hadoop 集群的常用命令
java·大数据·开发语言·python·scala
别惊鹊5 小时前
MapReduce工作原理
大数据·mapreduce
8K超高清6 小时前
中国8K摄像机:科技赋能文化传承新图景
大数据·人工智能·科技·物联网·智能硬件
2401_871290587 小时前
MapReduce 的工作原理
大数据·mapreduce
啊迷诺斯7 小时前
hadoop的常用命令
hadoop
SelectDB技术团队8 小时前
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座
大数据·数据库·数据仓库·人工智能·ai·数据分析·湖仓一体
你觉得2058 小时前
浙江大学朱霖潮研究员:《人工智能重塑科学与工程研究》以蛋白质结构预测为例|附PPT下载方法
大数据·人工智能·机器学习·ai·云计算·aigc·powerpoint
益莱储中国9 小时前
世界通信大会、嵌入式展及慕尼黑上海光博会亮点回顾
大数据
Loving_enjoy9 小时前
基于Hadoop的明星社交媒体影响力数据挖掘平台:设计与实现
大数据·hadoop·数据挖掘