1. 程式人生 > >HDFS高可用原理,個人理解嘿嘿嘿

HDFS高可用原理,個人理解嘿嘿嘿

HDFS的高可用性將通過在同一個叢集中執行兩個NN(active NN & standby NN)來解決上面兩個問題,

這種方案允許在機器破潰或者機器維護快速地啟用一個新的NN來恢復故障,

為了讓Standby NN的狀態和Active NN保持同步,

即元資料保持一致,

它們都將會和JournalNodes守護程序通訊。

當Active NN執行任何有關名稱空間的修改,

它需要持久化到一半以上的JournalNodes上(通過edits log持久化儲存),

而Standby NN負責觀察edits log的變化,它能夠讀取從JNs中讀取edits資訊,

並更新其內部的名稱空間。一旦Active NN出現故障,Standby NN將會保證從JNs中讀出了全部的Edits,

然後切換成Active狀態。Standby NN讀取全部的edits可確保發生故障轉移之前,是和Active NN擁有完全同步的名稱空間狀態。

為了提供快速的故障恢復,Standby NN也需要儲存叢集中各個檔案塊的儲存位置。

為了實現這個,叢集中所有的Database將配置好Active NN和Standby NN的位置,

並向它們傳送塊檔案所在的位置及心跳。

總結完畢,不知道有沒有幫助到你對hdfs高可用的理解呢?