當前位置:
首頁 > 最新 > 大數據知識分享(4)

大數據知識分享(4)

上次我們介紹完了Hadoop最基礎的知識,本篇將介紹關於Hadoop HA相關的知識。當然文末放出大福利。

1. Hadoop 2.0之前,在HDFS集群中NameNode存在單點故障(SPOF),對於只有一個NameNode的集群,若NameNode機器出現故障,則整個集群將無法使用,直到NameNode重啟;

2. Namenode主要在以下2個方面影響集群:

    • NameNode機器發生意外,若宕機,集群將無法使用,直到管理員重啟;

    • NameNode機器需要升級,包括軟體、硬體升級,此時集群也將無法使用;

    3. HDFS HA功能通過配置active/standby兩個NameNodes實現在集群中對NameNode的熱備來解決上述問題。如果出現故障,如機器崩潰或機器需要升級維護,這是可通過真箇方式將namenode很快的切換到另外一台機器。

    4. 配置HA要點:

    隔離後,如果使用sshfence進行互相感知的話,需要保證兩台NameNode伺服器必須能都通過主機名能夠互相訪問,否則一旦有一台崩潰,另外一台無法連接standby的NameNode伺服器自動提供服務。下圖為整體的架構圖:

    HDFS HA配置中,ZooKeeper是一個必用的集群配置服務,下面我們來看下ZK的相關知識點。

    二、ZooKeeper

    1. 什麼是ZooKeeper

    ZK的數據結構

    1)數據結構和分等級的命名空間

    2)ZK的角色:

    2. ZK的典型應用場景

    ZK從設計模式角度看,是一個基於觀察者模式設計的分散式服務管理框架,一旦這些數據的狀態發生變化,ZK就將負責通知已經在ZK上註冊的那些觀察者做出相應的反應,從而實現集群中類似Master/Slave管理模式。應用場景:

    1)統一命名服務(NameService);

    2)配置管理(ConfigurationManagement);

    3)集群管理(GroupMembership);

    4)共享鎖(Lock)/同步鎖;

    ZK的配置參數詳解:

    1)tickTime:這個時間是作為ZK伺服器之間或客戶端於伺服器之間維持心跳的時間間隔,也就是每個ticktime時間就發送一個心跳;

    2)dataDir:顧名思義是ZK保存數據到 目錄,默認情況下,ZK將寫數據的日誌文件也保存在這個目錄下;

    3)clientPort:這個埠是客戶端連接ZK伺服器的埠,ZK會監聽這個埠,接受客戶端的請訪問請求;

    3. zkclient命令講解

    三、Hadoop三大版本

    1)apache

    在企業實際使用中,直接使用apache並不多,但是apche的版本是最原始和最基礎的版本,很多版本都是從這個基礎版本擴展和優化而來;

    2)Cloudera

    3)Hortonworks

    喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

    本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


    請您繼續閱讀更多來自 思考的犀牛 的精彩文章:

    TAG:思考的犀牛 |