前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >zookeeper集群搭建

zookeeper集群搭建

作者头像
lpe234
发布2020-07-27 17:29:15
5520
发布2020-07-27 17:29:15
举报
文章被收录于专栏:若是烟花若是烟花

概要

整体的搭建十分简单,只需要区别一些各个实例的dataDirclientPort配置信息即可。

整体结构:

代码语言:javascript
复制
➜  ~ tree -L 1 zookeepers
zookeepers
├── data
├── zk.sh
├── zookeeper-3.4.9-2181
├── zookeeper-3.4.9-2182
└── zookeeper-3.4.9-2183

4 directories, 1 file

配置

当前使用的zookeeper版本为3.4.9,好像默认只能读取conf/zoo.cfg配置文件,无法在运行时指定。所以,直接将zk复制三份,分别配置。

zookeeper-3.4.9-2181/conf/zoo.cfg

代码语言:javascript
复制
# 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=/Users/lpe234/zookeepers/data/2181
# 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
#
#
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890

另外两个的配置文件类似,只需要修改一下 dataDirclientPort,另外的server.[myid]配置是个重点。

dataDir的文件结构如下:

代码语言:javascript
复制
➜  ~ tree -L 2 zookeepers/data
zookeepers/data
├── 2181
│   ├── myid
│   ├── version-2
│   └── zookeeper_server.pid
├── 2182
│   ├── myid
│   ├── version-2
│   └── zookeeper_server.pid
└── 2183
    ├── myid
    ├── version-2
    └── zookeeper_server.pid

6 directories, 6 files

myid

也就是cfg文件中,server.[myid]的配置。即是每个server的唯一ID。

代码语言:javascript
复制
# 依次生成即可, 这样才能与cfg配置的信息相对应起来
➜  zookeepers echo 1 > data/2181/myid  
➜  zookeepers echo 2 > data/2182/myid  
➜  zookeepers echo 3 > data/2183/myid  

运行

依次执行启动命令即可。

代码语言:javascript
复制
➜  ~ zookeeper-3.4.9/bin/zkServer.sh -h
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeeper-3.4.9/bin/../conf/zoo.cfg
Usage: zookeeper-3.4.9/bin/zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}

启动脚本

zk.sh

代码语言:javascript
复制
#!/usr/bin/env bash

# set -e

case "${1}" in
    start)
        echo "start"
        cd /Users/lpe234/zookeepers/zookeeper-3.4.9-2181 && bin/zkServer.sh start
        cd /Users/lpe234/zookeepers/zookeeper-3.4.9-2182 && bin/zkServer.sh start
        cd /Users/lpe234/zookeepers/zookeeper-3.4.9-2183 && bin/zkServer.sh start
        ;;
    stop)
        echo "stop"
        zookeeper-3.4.9-2181/bin/zkServer.sh stop
        zookeeper-3.4.9-2182/bin/zkServer.sh stop
        zookeeper-3.4.9-2183/bin/zkServer.sh stop
        ;;
    status)
        zookeeper-3.4.9-2181/bin/zkServer.sh status
        zookeeper-3.4.9-2182/bin/zkServer.sh status
        zookeeper-3.4.9-2183/bin/zkServer.sh status
        ;;
    *)
        echo "only support {start|status|stop}"
        ;;
esac

查看运行情况

代码语言:javascript
复制
➜  zookeepers ./zk.sh start
start
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2181/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2182/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2183/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

➜  zookeepers ./zk.sh status
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2181/bin/../conf/zoo.cfg
Mode: follower
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2182/bin/../conf/zoo.cfg
Mode: leader
ZooKeeper JMX enabled by default
Using config: /Users/lpe234/zookeepers/zookeeper-3.4.9-2183/bin/../conf/zoo.cfg
Mode: follower
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概要
  • 配置
  • myid
  • 运行
    • 启动脚本
      • 查看运行情况
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档