Zookeeper的安裝和配置十分簡單, 既能夠配置成單機模式, 也能夠配置成集羣模式. 下面將分別進行介紹.html
點擊這裏下載zookeeper的安裝包以後, 解壓到合適目錄. 進入zookeeper目錄下的conf子目錄, 建立zoo.cfg:apache
Bash代碼 app
tickTime=2000 dataDir=/Users/apple/zookeeper/data dataLogDir=/Users/apple/zookeeper/logs clientPort=4180
參數說明:spa
至此, zookeeper的單機模式已經配置好了. 啓動server只需運行腳本:code
Bash代碼 server
bin/zkServer.sh start
Server啓動以後, 就能夠啓動client鏈接server了, 執行腳本:htm
Bash代碼 進程
bin/zkCli.sh -server localhost:4180
所謂僞集羣, 是指在單臺機器中啓動多個zookeeper進程, 並組成一個集羣. 以啓動3個zookeeper進程爲例.部署
將zookeeper的目錄拷貝2份:get
Bash代碼
|--zookeeper0 |--zookeeper1 |--zookeeper2
更改zookeeper0/conf/zoo.cfg文件爲:
Bash代碼
tickTime=2000 initLimit=5 syncLimit=2 dataDir=/Users/apple/zookeeper0/data dataLogDir=/Users/apple/zookeeper0/logs clientPort=4180 server.0=127.0.0.1:8880:7770 server.1=127.0.0.1:8881:7771 server.2=127.0.0.1:8882:7772
新增了幾個參數, 其含義以下:
參照zookeeper0/conf/zoo.cfg, 配置zookeeper1/conf/zoo.cfg, 和zookeeper2/conf/zoo.cfg文件. 只需更改dataDir, dataLogDir, clientPort參數便可.
在以前設置的dataDir中新建myid文件, 寫入一個數字, 該數字表示這是第幾號server. 該數字必須和zoo.cfg文件中的server.X中的X一一對應.
/Users/apple/zookeeper0/data/myid文件中寫入0, /Users/apple/zookeeper1/data/myid文件中寫入1, /Users/apple/zookeeper2/data/myid文件中寫入2.
分別進入/Users/apple/zookeeper0/bin, /Users/apple/zookeeper1/bin, /Users/apple/zookeeper2/bin三個目錄, 啓動server.
任意選擇一個server目錄, 啓動客戶端:
Bash代碼
bin/zkCli.sh -server localhost:4180
集羣模式的配置和僞集羣基本一致.
因爲集羣模式下, 各server部署在不一樣的機器上, 所以各server的conf/zoo.cfg文件能夠徹底同樣.
下面是一個示例:
Bash代碼
tickTime=2000 initLimit=5 syncLimit=2 dataDir=/home/zookeeper/data dataLogDir=/home/zookeeper/logs clientPort=4180 server.43=10.1.39.43:2888:3888 server.47=10.1.39.47:2888:3888 server.48=10.1.39.48:2888:3888
示例中部署了3臺zookeeper server, 分別部署在10.1.39.43, 10.1.39.47, 10.1.39.48上. 須要注意的是, 各server的dataDir目錄下的myid文件中的數字必須不一樣.
10.1.39.43 server的myid爲43, 10.1.39.47 server的myid爲47, 10.1.39.48 server的myid爲48.