dubbo zookeeper基本配置(單機),集羣配置(多機)

zookeeper基本配置,集羣配置html

ZooKeeper是一個完美的解決分佈式協調服務的好工具,用於管理大型主機。在分佈式環境中協調和管理服務是一個複雜的過程,ZooKeeper經過其簡單的架構和API解決了這個問題。ZooKeeper容許開發人員專一於核心應用程序邏輯,而沒必要擔憂應用程序的分佈式特性。apache

在安裝ZooKeeper以前,請確保你的系統是在如下任一操做系統上運行:緩存

  • 任意Linux OS - 支持開發和部署。適合演示應用程序。服務器

  • Windows OS - 僅支持開發。架構

  • Mac OS - 僅支持開發。框架

ZooKeeper服務器是用Java建立的,它在JVM上運行。你須要使用JDK 6或更高版本。(請自行安裝.....)分佈式

下載ZooKeeper

要在你的計算機上安裝ZooKeeper框架,請訪問如下連接並下載最新版本的ZooKeeper。http://zookeeper.apache.org/releases.html 工具

到目前爲止,最新版本的ZooKeeper是3.4.6(ZooKeeper-3.4.6.tar.gz)。spa

提取tar文件

使用如下命令提取tar文件操作系統

$ cd opt/
$ tar -zxf zookeeper-3.4.6.tar.gz
$ cd zookeeper-3.4.6
$ mkdir data
  • 簡單配置,單機模式

在conf目錄下的zoo_sample.cfg文件複製一個副本zoo.cfg,在裏面進行ZooKeeper總體配置:

# 節點與服務器之間維持心跳的時間間隔

tickTime=2000

#緩存目錄
dataDir=/opt/zookeeper-3.4.6/data
#服務端口
clientPort=2181

運行zookeeper服務器
bin/zkServer.sh start

能夠查看ZooKeeper的執行狀態:

bin/zkServer.sh status

  •  集羣模式

多個zookeeper同時啓動,先建立緩存目錄,每一個zookeeper一個,而後進去conf目錄,在前面的單機模式下的配置裏面多加幾行配置項。

# 節點與服務器之間維持心跳的時間間隔

tickTime=2000

#緩存目錄
dataDir=/opt/zookeeper-3.4.6/data
#服務端口
clientPort=2181

#集羣服務器列表

server.1=192.168.2.100:2888:3888
server.2=192.168.2.101:2888:3888

server.A=B:C:D:其中 A 是一個數字,表示這個是第幾號服務器;B 是這個服務器的 ip 地址;C 表示的是這個服務器與集羣中的 Leader 服務器交換信息的端口(上面的端口Y);D 表示的是萬一集羣中的 Leader 服務器掛了,須要一個端口來從新進行選舉,選出一個新的 Leader,而這個端口就是用來執行選舉時服務器相互通訊的端口(上面的端口Z)。若是是僞集羣的配置方式,因爲 B 都是同樣,因此不一樣的 Zookeeper 實例通訊端口號不能同樣,因此要給它們分配不一樣的端口號。

2181是對鏈接zookeeper服務器的客戶端使用的,2888,3888是給zookeeper服務器本身使用的。不能搞錯了。


* 在上面配置的dataDir目錄下建立myid文件,填寫這個節點上的id號(至關重要,必定不要忘記),就是server.A=B:C:D配置的A那個號碼 , myid裏面只寫這個id,別的不能多寫。

一樣的集羣列表在全部zookeeper上都同樣配置,每一個zookeeper 在緩存目錄裏有一個本身的id,不能有重複。

 

下面是zookeeper提供的功能。

zkServer.sh     : ZooKeeper服務器的啓動、中止和重啓腳本; zkCli.sh        : ZooKeeper的簡易客戶端; zkEnv.sh        : 設置ZooKeeper的環境變量; zkCleanup.sh    : 清理ZooKeeper歷史數據,包括事務日誌文件和快照數據文件。 查看ZooKeeper的執行狀態: zookeeper/bin/zkServer.sh status

相關文章
相關標籤/搜索