1. 程式人生 > >zookeeper3.4.8安裝和叢集搭建

zookeeper3.4.8安裝和叢集搭建


1.環境準備

建立zookeeper使用者.
準備安裝包: zookeeper-3.4.8.tar.gz.
拷貝至安裝目錄並解壓

tar zxvf zookeeper-3.3.6.tar.gz
mv zookeeper-3.3.6 zookeeper

2.配置檔案

  • zookeeper/conf/zoo.cfg(需手動建立)
#zookeeper使用的基本時間單位(ms)
tickTime=2000

#leader和follow之間的最長心跳時間(ticktime的倍數)
initLimit=5

#leader和follower之間的訊息交換的最長時間(ticktime的倍數)
syncLimit=2

#資料目錄
dataDir=/home/zookeeper/zookeeper/data

#日誌目錄,該目錄事先建立,否則無法啟動
dataLogDir=/home/zookeeper/zookeeper/logs

#服務埠
clientPort=2181

#server0...分別對應叢集中的各臺,ip:資料交換埠:leader選舉埠
server.0=192.168.163.101:8880:7770
server.1=192.168.163.102:8880:7770
server.2=192.168.163.103:8880:7770

  • zookeeper/data/myid(需手動建立)
#唯一標識
0

拷貝至其他節點,此檔案對應修改.


  • .bashrc
export ZOOKEEPER_HOME=/home/zookeeper/zookeeper
export PATH=$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf:$PATH

source .bashrc


3.啟動

各節分別執行啟動

zkServer.sh start

注意: 啟動第一個節點時,由於其他兩個節點未啟動,所以會報錯,不用管.

java.net.ConnectException: 拒絕連線
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:579)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java:381)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectAll(QuorumCnxManager.java:426)
        at org.apache.zookeeper.server.quorum.FastLeaderElection.lookForLeader(FastLeaderElection.java:843)
        at org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:822)
2018-05-16 19:40:26,103 [myid:0] - INFO  [QuorumPeer[myid=0]/0:0:0:0:0:0:0:0:2181:
[email protected]
] - Resolved hostname: 192.168.163.103 to address: /192.168.163.103 2018-05-16 19:40:26,104 [myid:0] - WARN [QuorumPeer[myid=0]/0:0:0:0:0:0:0:0:2181:[email protected]] - Cannot open channel to 1 at election address /192.168.163.102:7770

4.測試

  • jps檢視程序
QuorumPeerMain
  • 檢視節點狀態
./zkServer.sh status
  • 啟動客戶端
./zkCli.sh -server localhost:2181
  • 建立節點
create /zk 'test'
get /zk
quit