1、集群啟動兩個nn,每個nn都會有乙個zkfc,每個zkfc到zookeeper上爭搶乙個臨時節點,哪個優先搶占到了這個臨時節點,哪個就是active,沒有搶到的就是standby ,同時變為standby的zkfc會申請臨時節點的watch,監控臨時節點的狀態,(若節點發生變化,表示active出現異常)
2、ha方案中有兩個nn,乙個是nn,乙個是snn, 每個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角色。
高可用HA的namenode執行機制
那麼下面我再詳細介紹一下 hdfs 是乙個分布式檔案系統,有namenode和datanode,我們都知道,一旦namenode蕩機,整個集群就會癱瘓,那麼這個問題怎麼處理 一般我們都會有兩個namenode,我們知道有乙個secondary namenode,但是我們知道這個namenode並不能...
Yii YII執行流程
yii整體執行流程直觀,具體由以下步驟 1 程式入口檔案index.php載入yii框架引導程式 bootstrap 檔案yii.php,載入配置檔案以及其他自定義配置。2 yii.php中yii類繼承了yiibase,主要封裝框架的一些通用方法,比如自動載入 建立元件 核心類路徑對映 記錄日誌以及...
MapReduce執行流程
mapreduce的大體流程是這樣的,如圖所示 由可以看到mapreduce執行下來主要包含這樣幾個步驟 1.首先對輸入資料來源進行切片 2.master排程worker執行map任務 3.worker讀取輸入源片段 4.worker執行map任務,將任務輸出儲存在本地 5.master排程work...