1. 
      

    2. 千鋒教育-做有情懷、有良心、有品質的IT職業教育機構

      400-811-9990
      當前位置:首頁  >  關于學院  >  技術論壇  >  正文

      大數據技術培訓:Zookeeper集群管理與選舉

      時間:2018-09-05 17:34     來源:千鋒教育 作者:千鋒大數據
      分享: 更多

        大數據技術的學習,逐漸成為很多程序員的必修課,因為趨勢也是因為自己的職業生涯。在各個技術社區分享交流成為很多人學習的方式,今天很榮幸找到千鋒大數據培訓老師,給我們分享一些大數據基礎知識,大家可以一起學習!

      圖片1

        1.集群機器監控

        這通常用于那種對集群中機器狀態,機器在線率有較高要求的場景,能夠快速對集群中機器變化作出響應。這樣的場景中,往往有一個監控系統,實時檢測集群機器是否存活。過去的做法通常是:監控系統通過某種手段(比如ping)定時檢測每個機器,或者每個機器自己定時向監控系統匯報“我還活著”。 這種做法可行,但是存在兩個比較明顯的問題:

        集群中機器有變動的時候,牽連修改的東西比較多。

        有一定的延時。

        利用ZooKeeper有兩個特性,就可以實時另一種集群機器存活性監控系統:

        客戶端在節點 x 上注冊一個Watcher,那么如果 x?的子節點變化了,會通知該客戶端。

        創建EPHEMERAL類型的節點,一旦客戶端和服務器的會話結束或過期,那么該節點就會消失。

        例如,監控系統在 /clusterServers 節點上注冊一個Watcher,以后每動態加機器,那么就往 /clusterServers 下創建一個 EPHEMERAL類型的節點:/clusterServers/{hostname}. 這樣,監控系統就能夠實時知道機器的增減情況,至于后續處理就是監控系統的業務了。

        2.Master選舉

        在分布式環境中,相同的業務應用分布在不同的機器上,有些業務邏輯(例如一些耗時的計算,網絡I/O處理),往往只需要讓整個集群中的某一臺機器進行執行,其余機器可以共享這個結果,這樣可以大大減少重復勞動,提高性能,于是這個master選舉便是這種場景下的碰到的主要問題。

        利用ZooKeeper的強一致性,能夠保證在分布式高并發情況下節點創建的全局唯一性,即:同時有多個客戶端請求創建 /currentMaster 節點,終究一定只有一個客戶端請求能夠創建成功。利用這個特性,就能很輕易的在分布式環境中進行集群選取了。

        另外,這種場景演化一下,就是動態Master選舉。這就要用到?EPHEMERAL_SEQUENTIAL類型節點的特性了。

        上文中提到,所有客戶端創建請求,最終只有一個能夠創建成功。在這里稍微變化下,就是允許所有請求都能夠創建成功,但是得有個創建順序,于是所有的請求最終在ZK上創建結果的一種可能情況是這樣: /currentMaster/{sessionId}-1 ,?/currentMaster/{sessionId}-2 ,?/currentMaster/{sessionId}-3 ….. 每次選取序列號最小的那個機器作為Master,如果這個機器掛了,由于他創建的節點會馬上小時,那么之后最小的那個機器就是Master了。

        3.搜索系統

        在搜索系統中,如果集群中每個機器都生成一份全量索引,不僅耗時,而且不能保證彼此之間索引數據一致。因此讓集群中的Master來進行全量索引的生成,然后同步到集群中其它機器。另外,Master選舉的容災措施是,可以隨時進行手動指定master,就是說應用在zk在無法獲取master信息時,可以通過比如http方式,向一個地方獲取master。

        在Hbase中,也是使用ZooKeeper來實現動態HMaster的選舉。在Hbase實現中,會在ZK上存儲一些ROOT表的地址和 HMaster的地址,HRegionServer也會把自己以臨時節點(Ephemeral)的方式注冊到Zookeeper中,使得HMaster可以隨時感知到各個HRegionServer的存活狀態,同時,一旦HMaster出現問題,會重新選舉出一個HMaster來運行,從而避免了 HMaster的單點問題

        學習大數據開發,可以參考千鋒提供的大數據學習路線,該學習路線提供完整的大數據開發知識體系,內容包含Linux&&Hadoop生態體系、大數據計算框架體系、云計算體系、機器學習&&深度學習。根據千鋒提供的大數據學習路線圖可以讓你對學習大數據需要掌握的知識有個清晰的了解,并快速入門大數據開發。

      相關文章

      • 北京天豐利校區(總部)地址:北京市海淀區寶盛北里西區28號天豐利商城4層
        北京沙河校區:北京市昌平區沙陽路18號北京科技職業技術學院廣場服務樓2、3層
        咨詢電話:400-811-9990
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 深圳西部硅谷校區地址:深圳市寶安區寶安大道5010號深圳西部硅谷B座A區605-619
        深圳大學城校區地址:深圳市南山區留仙大道1201號大學城創客小鎮16棟3樓
        咨詢電話: 0755-23015275/23015546-801(硅谷) 0755-86660670-801(大學城)
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 上海校區地址:上海市寶山區同濟支路199號智慧七立方3號樓2-4層
        咨詢電話:400-811-9990 021-65233829-609
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 鄭州校區地址:鄭州市二七區航海中路60號海為科技園C區10層、12層
        咨詢電話:0371-55191750
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 廣州校區地址:廣州市天河區元崗路200號慧通產業園B9三層
        咨詢電話:020-38035223 020-38035220
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 大連校區地址:遼寧省大連市高新園區愛賢街10號大連設計城A座901
        咨詢電話:400-811-9990
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 武漢金融港校區地址:武漢市東湖高新技術開發區光谷大道77號金融港B18棟3樓
        武漢智慧園校區地址:武漢市東湖高新技術開發區光谷大道61號智慧園21棟2樓
        咨詢電話:027-59313371
        面授課程:HTML5大前端培訓、全鏈路UI/UE設計培訓、PHP全棧+服務器集群培訓、JavaEE+分布式開發培訓、大數據+人工智能培訓、 Unity游戲開發培訓、360網絡安全、Python培訓、云計算+信息安全培訓、全棧軟件測試培訓、智能物聯網+嵌入式培訓
      • 成都校區地址:成都市武侯區科華北路62號力寶大廈N(北樓)18樓
        咨詢電話:400-811-9990 028-83178771
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 西安校區地址:西安市雁塔區高新六路52號立人科技C座西區4樓
        咨詢電話:029-85363390
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 杭州旺田校區:浙江省杭州市江干區九堡旺田書畫城A座4層
        杭州龍馳校區:浙江省杭州市下沙經濟技術開發區元成路199號龍馳智慧谷B座7層
        咨詢電話:400-811-9990 0571-86893632/0571-86094032
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 青島校區地址:青島市市北區龍城路卓越世紀中心3號樓8層801
        咨詢電話:0532-80911190
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 重慶校區地址:重慶市高新區科園一路2號大西洋國際12-1
        咨詢電話:400-811-9990 023-68883009
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 長沙校區地址:湖南省長沙市岳麓區麓谷企業廣場A2棟三單元306號
        咨詢電話:0731-85513210
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 哈爾濱校區地址:哈爾濱市松北區創新一路699號 科技創新城19號樓B座五樓
        咨詢電話:400-811-9990/0451-87173191
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 南京校區地址:南京市建鄴區應天大街780號應天智匯產業園弘輝園1幢2樓
        咨詢電話:400-811-9990
        面授課程:HTML5大前端培訓、JavaEE+分布式開發培訓、Python全棧+人工智能培訓、全鏈路UI/UE設計培訓、物聯網+嵌入式培訓、360網絡安全、大數據+人工智能培訓、全棧軟件測試培訓、PHP全棧+服務器集群培訓、云計算+信息安全培訓、Unity游戲開發培訓、區塊鏈、紅帽RHCE認證、好程序員
      • 千鋒教育服務號

        了解千鋒動態
        關注千鋒教育服務號

      • 千鋒教育移動站

        掃一掃快速進入
        千鋒移動端頁面

      • 千鋒互聯服務號

        掃碼匿名提建議
        直達CEO信箱

      快三走势图今天