中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Zookeeper分布式集群

發布時間:2020-07-03 20:10:08 來源:網絡 閱讀:1579 作者:蔣將將 欄目:建站服務器

一、簡介

     Zookeeper是一個高效的分布式協調服務,可以提供配置信息管理、命名、分布式同步、集群管理、數據庫切換等服務。它不適合用來存儲大量信息,可以用來存儲一些配置、發布與訂閱等少量信息。Hadoop、Storm、消息中間件、RPC服務框架、分布式數據庫同步系統,這些都是Zookeeper的應用場景。

    Zookeeper集群中節點個數一般為奇數個(>=3),若集群中Master掛掉,剩余節點個數在半數以上時,就可以推舉新的主節點,繼續對外提供服務。

1、典型應?用場景

1)分布式通知/協調

?用于分布式系統的任務分發與任務執?行結果反饋

2) 集群管理

– 可以監控節點的存活狀態

3)Master選舉

Master/slave結構的系統中,避免單點故障,需要多個master,其中

只有?一個active master,ZooKeeper幫助選擇active master

4) 分布式鎖

– 獨占:某?一時刻只有?一個client能夠獲得

– 控制時序:多個客戶端的某些過程按照順序執?行

5) 分布式隊列

https://blog.csdn.net/king866/article/details/53992653/

2、架構

Zookeeper分布式集群Zookeeper分布式集群

2.1、節點

– 2N+1個server組成,N+1個節點可?用時,整個系統保持可?用

2.2、server?角?色類型

– Server:存放數據(in-memory)

– Leader:不接受client的請求,負責進?行投票的發起和決議,最終更新狀態 – Follower:接收客戶請求并返回客戶結果,參與Leader發起的投票

3、ObServer節點

問題

當client變多,ZK集群變?大時,節點都為follower時,更新成 本較?大

? 解決方案

ObServer節點:和client交互,存有數據的副本,不參與投票

4、角色

Zookeeper分布式集群Zookeeper分布式集群

5、ZooKeeper承諾

5.1、順序性

client的update請求都會根據他發出的順序被順序的處理

5.2、原子性

一個update操作要么成功要么失敗,沒有其他可能的結果

5.3、強一致性

client無論連接到那個server,展?示給它的都是同?一個視圖

5.4、 可靠性

update一旦成功,就被持久化了,除?非另?一個update請求更 新了當前值

5.5、實時性

對于每?一個client,它的系統視圖都是最新的

二、準備工作

1、系統環境

主機名

系統

服務版本

IP

master

CentOS7.4

3.4.12

192.168.56.129

slave1

CentOS7.4

3.4.12

192.168.56.130

slave2

CentOS7.4

3.4.12

192.168.56.131

2、暫時關閉防火墻和selinux

3、軟件下載

下載地址:http://mirrors.hust.edu.cn/apache/zookeeper/

Zookeeper分布式集群

4、Java環境

Zookeeper分布式集群Zookeeper分布式集群

三、服務搭建

1、解壓三個節點的文件

[root@master ~]# cd /home/

[root@master home]# tar -zxvf zookeeper-3.4.12.tar.gz

[root@master home]# ln -s zookeeper-3.4.12 zookeeper

備注:三個節點相同操作

2、在conf目錄下創建zoo.cfg文件,三個節點配置相同,如下

[root@master ~]# cd /home/zookeeper/conf/

[root@master conf]# cp zoo_sample.cfg zoo.cfg

[root@master conf]# vim zoo.cfg

tickTime=2000

initLimit=10

syncLimit=5

dataDir=/var/lib/zookeeper

clientPort=2181

maxClientCnxns=50

server.1=192.168.56.129:2888:3888

server.2=192.168.56.130:2888:3888

server.3=192.168.56.131:2888:3888

3、創建文件/var/lib/zookeeper/myid,3個節點的 內容分別為1、2、3

[root@master conf]# mkdir -p /var/lib/zookeeper

[root@master conf]# cd /var/lib/zookeeper/

[root@master zookeeper]# vim myid

Zookeeper分布式集群Zookeeper分布式集群

4、啟動三個節點

[root@master zookeeper]# bin/zkServer.sh start

Zookeeper分布式集群Zookeeper分布式集群

[root@master zookeeper]# jps

Zookeeper分布式集群Zookeeper分布式集群

[root@master zookeeper]# bin/zkServer.sh status

Zookeeper分布式集群Zookeeper分布式集群

5、測試

5.1、在zookeeper中任意一個節點,執行指令zkCli.sh

[root@master zookeeper]# ./bin/zkCli.sh

Zookeeper分布式集群Zookeeper分布式集群

5.2、輸入:help    #幫助信息

Zookeeper分布式集群Zookeeper分布式集群

ls  /   查找根目錄

create /test abc   創建節點并賦值

get /test   獲取指定節點的值

set /test cb  設置已存在節點的值

rmr /test  遞歸刪除節點

delete /test/test01  刪除不存在子節點的節點

5.3、相關操作命令

新建操作

Zookeeper分布式集群Zookeeper分布式集群

刪除操作

Zookeeper分布式集群Zookeeper分布式集群

5.4、查看工具

在Eclipse中查看Zookeeper集群節點

也可以使用ZooInspector查看

這里使用ZooInspector工具進行查看

下載地址:https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip

解壓,進入目錄ZooInspector\build,雙擊運行zookeeper-dev-ZooInspector.jar;

備注:前提是Windows環境安裝了Java

Zookeeper分布式集群Zookeeper分布式集群

4.5、點擊左上角連接按鈕,輸入zk服務地址:ip:2181

Zookeeper分布式集群Zookeeper分布式集群

點擊OK,即可查看ZK節點信息

Zookeeper分布式集群Zookeeper分布式集群

6、異常

   6.1、CONNECTION_LOSS(連接丟失)

        – eg:連接的server down掉

  6.2、 SESSION_EXPIRED(會話失效)

   – 由ZooKeeper集群管理,?非client管理

   – ZooKeeper清除和該session有關的信息 – 正常運?行的ZK不會出現這種情況


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凤冈县| 夏河县| 大悟县| 修武县| 闽清县| 明光市| 阳信县| 莒南县| 新巴尔虎右旗| 巴彦淖尔市| 定州市| 车致| 涟源市| 滦平县| 乐业县| 景德镇市| 滨海县| 浪卡子县| 东台市| 宾阳县| 民和| 靖州| 鄯善县| 吉安市| 万源市| 垣曲县| 广宗县| 集贤县| 兴海县| 哈密市| 大荔县| 明星| 平远县| 莒南县| 赣榆县| 泰和县| 澎湖县| 禄丰县| 辽中县| 密山市| 雷山县|