1. 程式人生 > >windows安裝zookeeper(單機模式)

windows安裝zookeeper(單機模式)

Zookeeper是一個高效的分散式協調服務,可以提供配置資訊管理、命名、分散式同步、叢集管理、資料庫切換等服務。它不適合用來儲存大量資訊,可以用來儲存一些配置、釋出與訂閱等少量資訊。Hadoop、Storm、訊息中介軟體、RPC服務框架、分散式資料庫同步系統,這些都是Zookeeper的應用場景。

它有如下的一些特點:

  • 簡單:Zookeeper的核心是一個精簡的檔案系統,它支援一些簡單的操作和一些抽象操作,例如,排序和通知。
  • 豐富:Zookeeper的原語操作是很豐富的,可實現一些協調資料結構和協議。例如,分散式佇列、分散式鎖和一組同級別節點中的“領導者選舉”。
  • 高可靠:Zookeeper支援叢集模式,可以很容易的解決單點故障問題。
  • 鬆耦合互動:不同程序間的互動不需要了解彼此,甚至可以不必同時存在,某程序在zookeeper中留下訊息後,該程序結束後其它程序還可以讀這條訊息。
  • 資源庫:Zookeeper實現了一個關於通用協調模式的開源共享儲存庫,能使開發者免於編寫這類通用協議。

zookeeper的安裝分為三種模式:單機模式、叢集模式和偽叢集模式。本節介紹windows下zookeeper的單機模式。

1. 下載zookeeper

從zookeeper官網下載3.4.13版本官網下載

2. 安裝zookeeper

解壓zookeeper-3.4.13.tar.gz到D:\devtool\zookeeper
在conf檔案下zoo_sample.cfg複製一個檔案為zoo.cfg

3. 修改配置檔案

這裡主要修改zookeeper的日誌目錄

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=D:\\devtool\\zookeeper\\data
dataLogDir=D:\\devtool\\zookeeper\\log
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
  1. tickTime:這個時間是作為 Zookeeper 伺服器之間或客戶端與伺服器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發送一個心跳。
  2. dataDir:顧名思義就是 Zookeeper 儲存資料的目錄,預設情況下,Zookeeper 將寫資料的日誌檔案也儲存在這個目錄裡。
  3. dataLogDir:顧名思義就是 Zookeeper 儲存日誌檔案的目錄
  4. clientPort:這個埠就是客戶端連線 Zookeeper 伺服器的埠,Zookeeper 會監聽這個埠,接受客戶端的訪問請求。
4. 啟動服務

進入D:\devtool\zookeeper\bin目錄下,執行zkServer.cmd啟動服務
zkServer

5. 測試服務

命令列進入D:\devtool\zookeeper\bin執行zkCli 127.0.0.1:2181
zkServer