HA執行流程
HA執行流程
1、叢集啟動2個NN,每個NN都會有一個ZKFC,每個zkfc到Zookeeper上爭搶一個臨時節點,哪個優先搶佔到了這個臨時節點,哪個就是Active,沒有搶到的就是standby ,同時變為standby的ZKFC會申請臨時節點的watch,監控臨時節點的狀態,(若節點發生變化,表示Active出現異常);
2、HA方案中有兩個NN,一個是NN,一個是SNN(standbyNN), 每個NN都會有一個ZKFC,ZKFC的作用是監控NN健康狀態和與Zookeeper保持連線,這個連結就是申請臨時節點的連結。
3、當ActiveNN出現異常,Active狀態的ZKFC得知異常後斷開與Zookeeper的連結,此時ZK上的臨時節點就會消失。StandbyZKFC收到zk的斷開資訊,通知standbyNN, standbyNN遠端登入到原始activeNN節點,強行killNN程式。
4、通知standbyZKFC搶佔Zookeeper上的臨時節點,搶佔成功,將狀態從standby變為active
5、當原始activeNN重新恢復後,優先到Zokeeper上申請臨時節點,此時已被申請,他只能申請臨時節點的watch充當standbyNN角色。
相關文章
- Mysql 執行流程MySql
- MapReduce執行流程
- php執行流程PHP
- MyBatis執行流程MyBatis
- 「MySQL」 MySQL執行流程MySql
- SpringMVC執行流程SpringMVC
- MapReduce程式執行流程
- javaWeb的執行流程JavaWeb
- Struts框架執行流程框架
- PostgreSQL SQL執行流程SQL
- Hadoop 及Spark 分散式HA執行環境搭建HadoopSpark分散式
- PHP執行流程回顧PHP
- MapReduce的執行流程概述
- thinkphp3.2 執行流程PHP
- 框架執行流程總結框架
- SQL 解析與執行流程SQL
- Ansible playbook 執行流程
- angularjs基本執行流程AngularJS
- java的執行流程(轉)Java
- Dapr Outbox 執行流程
- 執行流程原始碼分析原始碼
- Spark學習(一)——執行模式與執行流程Spark模式
- 深入理解執行緒池的執行流程執行緒
- 深入Mybatis原始碼——執行流程MyBatis原始碼
- 【java學習】控制執行流程Java
- WEB程式執行的基本流程Web
- Mybatis執行流程原始碼分析MyBatis原始碼
- VUE 執行流程 個人筆記Vue筆記
- 關於java的執行流程Java
- Seata的AT模式的執行流程模式
- 助力新能源,NewStart HA保障電網系統的高可用執行
- 通俗易懂,各常用執行緒池執行的-流程圖執行緒流程圖
- Mybatis原始碼系列 執行流程(一)MyBatis原始碼
- Java類初始化執行流程Java
- Servlet基本概念及執行流程Servlet
- mysql的sql語句執行流程MySql
- MySQL基礎架構執行流程MySql架構
- Ansible ad-hoc 執行流程