中文在线免费看视频_国产成人精品亚洲日本在线观看_亚洲精品第一综合99久久_国产亚洲精品日韩综合网

當前位置: 首頁 / 技術干貨 / 正文
大數據高可用集群部署(一)HA介紹

2022-11-11

節點 namenode zkfc   

  什么是HA

  HA: High Availability,高可用集群,指的是集群7*24小時不間斷服務。

  為什么需要HA

  在HDFS中,有NameNode、DataNode和SecondaryNameNode角色的分布,客戶端所有的操作都是要與NameNode交互的,同時整個集群的命名空間信息也都保存在NameNode節點。但是,現在的集群配置中只有一個NameNode,于是就有一個問題: 單點故障

  那么,什么是單點故障呢?現在集群中只有一個NameNode,那么假如這個NameNode意外宕機、升級硬件等,導致NameNode不可用了,整個集群是不是也就不可用了?這就是單點故障的問題。

  為了解決這樣的問題,就需要高可用集群了。

  高可用的備份方式

  ●主從模式(冷備)

  準備兩臺服務器, 準備相同的程序。 一臺服務器對外提供服務, 稱為主節點(Active節點); 另外一臺服務器平時不對外提供服務, 主要負責和Active節點之間進行數據的同步, 稱為備份節點(Standby節點). 當主節點出現故障, Standby節點可以自動提升為Active節點, 對外提供服務。 ZooKeeper實現的集群高可用, 采用的就是這種模式。

  我作為一個班級的講師,在班級負責授課的工作。如果我有一天生病請假了,是不是咱們班級就得自習一天了?為了解決這樣的問題,教學部安排另外一個講師,每天跟著我。我上課講課,他就在旁邊聽著;我上課提問問題,他就在旁邊看著;我去吃飯,他也在旁邊跟著;我去上個廁所,他也在跟著!做為我的一個影子存在著。由于這個同時每天都會跟著我,因此我的一言一行,講了什么內容,留了什么作業,吃了什么飯,抽了幾根煙,他都知道!那么,如果有一天我生病請假了,他是不是就可以直接替代我為班級上課呢?

  ●雙主互備(熱備)(了解)

  準備兩臺服務器, 準備相同的程序. 同時對外提供服務(此時, 這兩臺服務器彼此為對方的備份), 這樣, 當一臺節點宕機的時候, 另外一臺節點還可以繼續提供服務.

  小明到肯德基吃飯,找服務員點餐,這是正常的流程。但是,如果服務員只有一個,并且恰好生病了,那么小明是不是將沒有辦法正常點餐了。為了解決這個問題,肯德基雇了兩個服務員,同時提供服務,這樣一個服務員出問題了,另外一個服務員依然可以提供服務。

  ●集群多備(了解)

  基本上等同于雙主互備, 區別就在于同時對外提供服務的節點數量更多, 備份數量更多 肯德基覺得兩個服務員也不保險,有兩個同時生病的可能性,于是又多雇了幾個服務員。

  高可用的實現

  我們在這里采用的是主從模式的備份方式,也就是準備兩個NameNode,一個對外提供服務,稱為Active節點;另外一個不對外提供服務,只是實時的同步Active節點的數據,稱為Standby的節點。

  為了提供快速的故障轉移,Standby節點還必須具有集群中塊位置的最新信息。為了實現這一點,DataNodes被配置了兩個NameNodes的位置,并向兩者發送塊位置信息和心跳信號。也就是說,DataNode同時向兩個NameNode心跳反饋。

  高可用架構圖

  ZN1ZN3ZN2ZKFAILOVERCONTROLLERZKFAILOVERCONTROLLERZKFCZKFCJN3JN1JN2NN1NN2STANDBYACTIVEDN2DN3DN1

0

  JournalNode

  ●JournalNode的功能

  Hadoop2.x版本之后, Clouera提出了QJM/QuromJournal Manager, 這是一個基于Paxos算法實現的HA的實現方案 1. 基本的原理就是使用2N+1臺JN存儲EditLog, 每次寫入數據的時候, 有半數以上的JN返回成功的信息, 就表示本次的操作已經同步到了JN 2. 在HA中, SecondaryNameNode這個角色已經不存在了, 保證Standby節點的元數據信息與Active節點的元數據信息一致, 需要通過若干個JN 3. 當有任何的操作發生在Active節點上的時候, JN會記錄這些操作到半數以上的節點中. Standby節點檢測JN中的log日志文件發生了變化, 會讀取JN中的數據到自己的內存中, 維護最新的目錄樹結構與元數據信息 4. 當發生故障的時候, Active節點掛掉, 此時Standby節點在成為新的Active節點之前, 會將讀取到的EditLog文件在自己的內存中進行推演, 得到最新的目錄樹結構. 此時再升為Active節點, 可以無縫的繼續對外提供服務.

  ●防止腦裂的發生

  對于HA群集的正確操作至關重要,一次只能有一個NameNode處于Active狀態。否則,名稱空間狀態將在兩者之間迅速分散,從而有數據丟失或其他不正確結果的風險。為了確保該屬性并防止所謂的“裂腦情況”,JournalNode將一次僅允許單個NameNode成為作者。在故障轉移期間,變為活動狀態的NameNode將僅承擔寫入JournalNodes的角色,這將有效地防止另一個NameNode繼續處于活動狀態,從而使新的Active可以安全地進行故障轉移。 - 怎么理解腦裂? 就是Active節點處于網絡震蕩狀態,假死狀態,Standby就轉為Active。等網絡震蕩過后,就有兩個Active了,這就是腦裂。

  ●JournalNode集群正常工作的條件

  - 至少3個Journalnode節點 - 運行個數建議奇數個(3,5,7等) - 滿足(n+1)/2個以上,才能正常服務。即能容忍(n-1)/2個故障。

  ●JournalNode的缺點

  在這種模式下,即使活動節點發生故障,系統也不會自動觸發從活動NameNode到備用NameNode的故障轉移,必須需要人為的操作才行。要是有一個能監視Active節點的服務功能就好了。 這個時候,我們就可以使用zookeeper集群服務,來幫助我們進行自動容災了。

  自動容災原理

  如果想進行HA的自動故障轉移,那么需要為HDFS部署兩個新組件:ZooKeeper quorum和ZKFailoverController進程(縮寫為ZKFC)

  Zookeeper quorum

  Apache ZooKeeper是一項高可用性服務,用于維護少量的協調數據,將數據中的更改通知客戶端并監視客戶端的故障。HDFS自動故障轉移的實現依賴ZooKeeper進行以下操作:

  - 故障檢測 集群中的每個NameNode計算機都在ZooKeeper中維護一個持久性會話。如果計算機崩潰,則ZooKeeper會話將終止,通知另一個NameNode應觸發故障轉移。 - 活動的NameNode選舉(HA的第一次啟動) ZooKeeper提供了一種簡單的機制來專門選舉一個節點為活動的節點。如果當前活動的NameNode崩潰,則另一個節點可能會在ZooKeeper中采取特殊的排他鎖,指示它應成為下一個活動的NameNode。

  ZKFC

  ZKFailoverController(ZKFC)是一個新組件,它是一個ZooKeeper客戶端,它監視和管理namenode的狀態。運行namenode的每臺機器都會運行一個ZKFC,該ZKFC負責以下內容:

  - 運行狀況監視 ZKFC使用運行狀況檢查命令定期ping其本地NameNode。只要NameNode以健康狀態及時響應,ZKFC就會認為該節點是健康的。如果節點崩潰,凍結或以其他方式進入不正常狀態,則運行狀況監視器將其標記為不正常。 - ZooKeeper會話管理 當本地NameNode運行狀況良好時,ZKFC會在ZooKeeper中保持打開的會話。如果本地NameNode處于活動狀態,則它還將持有一個特殊的“鎖定” znode。該鎖使用ZooKeeper對“臨時”節點的支持。如果會話到期,則鎖定節點將被自動刪除。 - 基于ZooKeeper的選舉 如果本地NameNode運行狀況良好,并且ZKFC看到當前沒有其他節點持有鎖znode,則它本身將嘗試獲取該鎖。如果成功,則它“贏得了選舉”,并負責運行故障轉移以使其本地NameNode處于活動狀態。故障轉移過程類似于上述的手動故障轉移:首先,如有必要,將先前的活動節點隔離,然后將本地NameNode轉換為活動狀態。

  自動容災的過程描述

  ZKFC(是一個進程,和NN在同一個物理節點上)有兩只手,分別拽著NN和Zookeeper。(監控NameNode健康狀態,并向Zookeeper注冊NameNode);集群一啟動,2個NN誰是Active?誰又是Standby呢? 2個ZKFC先判斷自己的NN是否健康,如果健康,2個ZKFC會向zoopkeeper集群搶著創建一個節點,結果就是只有1個會最終創建成功,從而決定active地位和standby位置。如果ZKFC1搶到了節點,ZKFC2沒有搶到,ZKFC2也會監控watch這個節點。如果ZKFC1的Active NN異常退出,ZKFC1最先知道,就訪問ZK,ZK就會把曾經創建的節點刪掉。刪除節點就是一個事件,誰監控這個節點,就會調用callback回調,ZKFC2就會把自己的地位上升到active,但在此之前要先確認ZKFC1的節點是否真的掛掉?這就引入了第三只手的概念。 ZKFC2通過ssh遠程連接NN1嘗試對方降級,判斷對方是否掛了。確認真的不健康,才會真的 上升地位之active。所以ZKFC2的步驟是: 1.創建新節點。 2.第三只手把對方降級。 3.把自己升級 那如果NN都沒毛病,ZKFC掛掉了呢?Zoopkeeper有一個客戶端session機制,集群啟動之后,2個ZKFC除了監控自己的NN,還要和Zoopkeeper建立一個tcp長連接,并各自獲取自己的session。只要一方的session失效,Zoopkeeper 就會刪除該方創建的節點,同時另一方創建節點,上升地位。

好程序員公眾號

  • · 剖析行業發展趨勢
  • · 匯聚企業項目源碼

好程序員開班動態

More+
  • HTML5大前端 <高端班>

    開班時間:2021-04-12(深圳)

    開班盛況

    開班時間:2021-05-17(北京)

    開班盛況
  • 大數據+人工智能 <高端班>

    開班時間:2021-03-22(杭州)

    開班盛況

    開班時間:2021-04-26(北京)

    開班盛況
  • JavaEE分布式開發 <高端班>

    開班時間:2021-05-10(北京)

    開班盛況

    開班時間:2021-02-22(北京)

    開班盛況
  • Python人工智能+數據分析 <高端班>

    開班時間:2021-07-12(北京)

    預約報名

    開班時間:2020-09-21(上海)

    開班盛況
  • 云計算開發 <高端班>

    開班時間:2021-07-12(北京)

    預約報名

    開班時間:2019-07-22(北京)

    開班盛況
IT培訓IT培訓
在線咨詢
IT培訓IT培訓
試聽
IT培訓IT培訓
入學教程
IT培訓IT培訓
立即報名
IT培訓

Copyright 2011-2023 北京千鋒互聯科技有限公司 .All Right 京ICP備12003911號-5 京公網安備 11010802035720號

中文在线免费看视频_国产成人精品亚洲日本在线观看_亚洲精品第一综合99久久_国产亚洲精品日韩综合网

            亚洲综合男人的天堂| 成人免费一区二区三区视频| 欧美在线啊v一区| 粉嫩av亚洲一区二区图片| 美美哒免费高清在线观看视频一区二区| 一区二区中文视频| 国产日韩精品一区二区三区 | 亚洲免费在线看| 国产精品入口麻豆九色| 国产校园另类小说区| 精品少妇一区二区三区日产乱码 | 欧美一区二区在线视频| 欧美做爰猛烈大尺度电影无法无天| 成人v精品蜜桃久久一区| 国产a精品视频| 国产成人夜色高潮福利影视| 国产精品一卡二| 国产**成人网毛片九色| 成人午夜精品在线| 99久久精品一区二区| 91色.com| 欧美中文字幕一二三区视频| 欧美午夜精品一区二区三区| 欧美日韩精品欧美日韩精品一 | 一本到不卡精品视频在线观看| 成人福利电影精品一区二区在线观看| 国产精品国产馆在线真实露脸| 国产精品视频看| 亚洲视频网在线直播| 亚洲午夜激情网站| 日韩专区在线视频| 韩国av一区二区三区四区| 国产剧情在线观看一区二区| 亚洲福中文字幕伊人影院| 午夜久久久久久| 久久成人精品无人区| 国产精品18久久久久久久久| 成人午夜激情影院| 在线视频你懂得一区| 制服丝袜激情欧洲亚洲| 久久久午夜电影| 成人欧美一区二区三区1314| 亚洲成av人综合在线观看| 日本aⅴ亚洲精品中文乱码| 久久久影院官网| 国产亚洲精久久久久久| 自拍偷拍亚洲综合| 亚洲亚洲人成综合网络| 久久精工是国产品牌吗| 成人97人人超碰人人99| 欧美日韩一本到| 2021中文字幕一区亚洲| 亚洲特黄一级片| 毛片av一区二区| 国产传媒一区在线| 香港成人在线视频| 国产一区二区三区电影在线观看| 国产精品99久| 欧美精品色一区二区三区| 久久精品视频一区二区| 亚洲一区影音先锋| 国产高清不卡二三区| 欧美午夜精品久久久| 久久精品日韩一区二区三区| 亚洲精品国产a久久久久久| 日本亚洲最大的色成网站www| 激情综合色综合久久| 色婷婷久久久亚洲一区二区三区 | 亚洲专区一二三| 中文字幕av免费专区久久| 亚洲成av人片在线观看| 国产69精品一区二区亚洲孕妇| 欧美日韩国产精品自在自线| 欧美激情在线观看视频免费| 日本中文在线一区| 日本精品一级二级| 国产日韩三级在线| 青青草国产成人99久久| 91久久一区二区| 欧美国产乱子伦| 久久电影网站中文字幕| 欧美日韩中文字幕一区| 国产精品欧美一级免费| 国产一区视频网站| 粉嫩一区二区三区在线看 | 亚洲一区二区三区中文字幕| 国产suv一区二区三区88区| 91麻豆精品久久久久蜜臀| 亚洲日本中文字幕区| 国产麻豆精品theporn| 5月丁香婷婷综合| 一区二区三区在线高清| 成人精品视频网站| 久久久另类综合| 久久精品国产亚洲高清剧情介绍| 在线观看区一区二| 亚洲精品亚洲人成人网在线播放| 国产成人av在线影院| 99久久久精品| 日本一区二区三区久久久久久久久不 | 亚洲一区二区欧美| 成人h版在线观看| 国产性天天综合网| 国产久卡久卡久卡久卡视频精品| 91麻豆精品国产| 日本中文字幕一区二区有限公司| 精品综合免费视频观看| 91精品国产综合久久久久久久 | 中文字幕在线不卡国产视频| 国产乱码精品一区二区三区忘忧草| 欧美本精品男人aⅴ天堂| 男人的天堂亚洲一区| 在线综合视频播放| 免费看日韩a级影片| 日韩午夜av电影| 麻豆中文一区二区| 久久久久久亚洲综合影院红桃 | 亚洲天天做日日做天天谢日日欢| 不卡欧美aaaaa| 国产精品久久久久aaaa樱花| 成人av先锋影音| 亚洲精品国产精华液| 色欧美乱欧美15图片| 一二三区精品视频| 欧美日韩视频一区二区| 天堂蜜桃一区二区三区| 欧美一区二区不卡视频| 精品在线播放午夜| 国产亚洲一二三区| 成人国产精品视频| 一区二区久久久久久| 欧美浪妇xxxx高跟鞋交| 捆绑紧缚一区二区三区视频 | 欧美一区二区三区四区高清| 六月丁香综合在线视频| 国产日韩精品视频一区| 91在线丨porny丨国产| 一区二区三区在线免费| 欧美写真视频网站| 久久精品久久精品| 中文在线一区二区| 欧美在线观看一二区| 秋霞午夜av一区二区三区| 国产日韩欧美精品一区| 色综合一区二区三区| 视频一区二区中文字幕| 久久精品一区二区三区av | 欧美国产综合色视频| 一本色道久久加勒比精品| 日韩国产成人精品| 国产午夜三级一区二区三| 日本乱人伦一区| 精品一区二区三区久久久| 亚洲视频图片小说| 日韩一级黄色片| 99re这里都是精品| 美女网站一区二区| 亚洲欧洲韩国日本视频| 日韩视频在线你懂得| av电影在线不卡| 美女看a上一区| 亚洲日本一区二区| 精品欧美久久久| 一本大道久久a久久精品综合| 国产午夜亚洲精品午夜鲁丝片| 欧美激情一区二区三区蜜桃视频| 欧美怡红院视频| 国产成人免费xxxxxxxx| 午夜国产精品一区| 国产精品三级电影| 精品美女一区二区| 在线视频亚洲一区| 国产精华液一区二区三区| 日韩成人精品在线观看| 日韩理论电影院| 久久久99精品免费观看| 色噜噜狠狠色综合中国| 全国精品久久少妇| 一区二区在线电影| 欧美国产一区在线| 日韩久久免费av| 欧美日韩精品一区二区三区| av一区二区三区| 国产乱码精品1区2区3区| 国产精品久久久久天堂| 国产一区二区三区精品视频| 欧洲视频一区二区| 亚洲国产综合在线| 欧美午夜精品久久久| 午夜成人免费视频| 91精品国产91久久综合桃花| 国产精品亚洲综合一区在线观看| 日本高清不卡在线观看| 亚洲欧美电影院| 日韩欧美一二三四区| 久久国产精品99精品国产| 成人在线综合网| 亚洲国产美国国产综合一区二区| av中文字幕亚洲| 亚洲欧美日韩系列|