zookeeper 集群搭建
-
準備服務器三臺
server1=192.169.31.121
server2=192.169.31.152
server3=192.169.31.226 -
下載zookeeper安裝包 下載
在linux中使用
wget下在zookeeper安裝包wget http://mirror.bit.edu.cn/apache/zookeeper/stable/zookeeper-3.4.12.tar.gz -
解壓縮
tar -zxvf zookeeper-3.4.12.tar.gz -
配置服務
copyzookeeper-3.4.12/conf 下zoo_sample.cfg文件重命名為zoo.cfgvim zoo.cfg
# 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. # 存儲zookeeper快照文件目錄 dataDir=/var/zookeeper # the port at which the clients will connect # zookeeper服務對外提供服務的端口 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 # 服務配置 # 樣式 # server.id=host:port:port server.1=192.169.31.121:2999:3999 server.2=192.169.31.152:2999:3999 server.3=192.169.31.226:2999:3999注意:將配分別
scp到其它的兩臺 zookeeper conf 中scp zoo.cfg root@192.168.226:/opt/zookeeper-3.4.12/conf -
配置
myid文件到
zoo.cfg中配置的dataDir=/var/zookeeper目錄,創(chuàng)建myid文件vim myid 輸入當前服務器的id, 保存。
同樣配置其它兩臺服務器的myid文件。 -
啟動
zookeeper服務到
/opt/zookeeper-3.4.12/bin目錄下執(zhí)行命令./zkServer.sh start啟動服務,如下則表示服務啟動該成功:[root@zivs bin]# ./zkServer.sh start ZooKeeper JMX enabled by default Using config: /opt/zookeeper-3.4.12/bin/../conf/zoo.cfg Starting zookeeper ... STARTED -
檢查
zookeeper服務是否對外提供服務查看檔前服務狀態(tài)
[root@zivs bin]# ./zkServer.sh status ZooKeeper JMX enabled by default Using config: /opt/zookeeper-3.4.12/bin/../conf/zoo.cfg Mode: leader使用
telnet命令telnet 192.168.31.121 2181[root@zivs bin]# telnet 192.168.31.121 2181 Trying 192.168.31.121... Connected to 192.168.31.121. Escape character is '^]'. stat This ZooKeeper instance is not currently serving requests Connection closed by foreign host.上面的提示說明
zookeeper服務沒有對外提供服務,繼續(xù)啟動其它服務 telnet 如下即表示zookeeper集群服務器搭建成功:[root@zivs bin]# telnet 192.168.31.121 2181 Trying 192.168.31.121... Connected to 192.168.31.121. Escape character is '^]'. stat Zookeeper version: 3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT Clients: /192.168.31.121:44360[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0 Received: 2 Sent: 1 Connections: 1 Outstanding: 0 Zxid: 0x300000000 Mode: leader Node count: 4 Connection closed by foreign host.zookeeper 規(guī)定一個集群中只有過半的服務啟動對外提供服務,該集群才可對外提供服務
yum install telnet沒有安裝telnet命令可先通過這個命令先安裝telnet命令
-
zookeeper 集群,偽集群,單機配置
集群
# server.id=host:port:port server.1=192.169.31.121:2999:3999 server.2=192.169.31.152:2999:3999 server.3=192.169.31.226:2999:3999偽集群 -
host一樣port不一樣# server.id=host:port:port server.1=192.169.31.121:2997:3997 server.2=192.169.31.121:2998:3998 server.3=192.169.31.121:2999:3999單機 - 一臺服務即可
# server.id=host:port:port server.1=192.169.31.121:2997:3997