当前位置: 首页 > article >正文

Hadoop-HA(高可用)机制

首先:在每个NAMENODE上都会有一个zkfc(zookeeper failover colltroller) ,负责这两个的状态管理。哪个是(active和standby)然后写入zk集群里面。同时监控自己所在的机器是否正常。一旦active上zkfc的发现异常后,会告诉知另一台zkfc,另一台收到后就会用自己的进程,做一个状态的切换。然后将自己变为active,然后从qjournai集群中的edits快速同步下来。相应其他程序,同时跟新zookeeper里的换掉。

细节:如果是某一个时间点active出现假死状态。然后当standsy不知道也去注册了,就会同时出现2个active。这时就会有2个同时向edits写数据,客户端也不知道该去链接那个。(术语叫做“脑裂”)。这个时候:standby就会直接发送ssh的指令(kill -9 ****)过去,直接杀这个active进程。防止发生这个问题。

还有一个问题:如果你发送了一个kill   -9 然后网络卡了,没有杀掉这个进程。那这个时候就需要返回是否成功杀掉的结果反馈。如果没有及时得到成功的返回,就会再调用(用户提供的shell脚本程序)这个是用户自己定义的。放的位置业是自己配制的。(可以让active断电,断网等等)当调用成功后就会做切换。再将zk里的节点跟新掉。

要点:1.配置了2个name node

2.将edits剥离出来放到qjourna集群管理起来,但是qjourna又是依赖zk集群

3.状态管理使用zkfc,每个zkfc监控自己的服务,出问题就通知对方,

4.出现问题的脑裂解决方法,脚本运用。


http://www.kler.cn/a/554809.html

相关文章:

  • GPT2 模型训练
  • python中的Pillow 库安装后需要重启吗?
  • Linux系统上同时打印到物理打印机并生成PDF副本方法研究
  • 鸿蒙NEXT开发-网络管理
  • 微信小程序地图map全方位解析
  • Flask 发送邮件
  • 处理哈希冲突
  • 地面沉降监测,为地质安全保驾护航
  • 网络安全 逆向 apk 网络安全逆向分析
  • 图数据库Neo4j面试内容整理-建模实践
  • 云原生监控体系建设:Kubernetes架构下的全面监控策略
  • Openssl之SM2加解密命令
  • 我国首条大型无人机城际低空物流航线成功首航
  • 【时时三省】(C语言基础)三种基本结构和改进的流程图
  • 计算机视觉之图像处理-----SIFT、SURF、FAST、ORB 特征提取算法深度解析
  • 一周学会Flask3 Python Web开发-response响应格式
  • 基于GraphQL的电商API性能优化实战
  • 项目管理的核心是什么?
  • DeepSeek vs ChatGPT:AI 领域的华山论剑,谁主沉浮?
  • 【机器学习】衡量线性回归算法最好的指标:R Squared