Zoonkeeper安装、集群配置 [Mac]

Zoonkeeper安装、集群配置 [Mac]

1. 下载Zoonkeeper

镜像下载地址

进去后选择你需要的版本,然后下载对应的压缩文件到本地,比如我选择的是当前最新的版本

zookeeper-3.5.4-beta

2. 解压安装 [单服务非集群配置]

  1. 打开终端进入到压缩文件 zookeeper-3.5.4.gz 文件对应的目录,然后解压
$ cd Download //进入到目录
$ tar -xzf zookeeper-3.5.4.gz //解压文件
$ cd zookeeper-3.5.4-beta/conf //进入配置目录
$ mv zoo_sample.cfg zoo.cfg //更改默认配置文件名称
$ vi zoo.cfg //编辑配置文件,自定义dataDir
  1. 修改配置

关于配置文件说明:

  1. 文件名可以任意,不是非得改为zoo.cfg
  2. tickTime: zookeeper中使用的基本时间单位, 毫秒
  3. dataDir: 内存数据快照的保存目录;如果没有自定义Log也使用该目录
  4. clientPort: 监听Cli连接的端口号

配置文件 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.
dataDir=/tmp/zookeeper
# 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. 服务启动

注意:服务启动前需要本机安装好 java 运行环境

$ cd zookeeper-3.5.4-beta/bin //进入目录
// 启动服务,也可以不加 -foreground 直接用start也可以启动
// -foreground 表示前台启动,能够在终端打印启动信息,如果出错能看到报错信息
$ ./zkServer.sh start-foreground 

3. 解压安装 [多服务集群配置]

  1. 打开终端进入到压缩文件 zookeeper-3.5.4.gz 文件对应的目录,然后解压
$ cd Download //进入到目录
$ tar -xzf zookeeper-3.5.4.gz //解压文件
$ cd zookeeper-3.5.4-beta/conf //进入配置目录
$ mv zoo_sample.cfg zoo.cfg //更改默认配置文件名称
$ vi zoo.cfg //编辑配置文件,自定义dataDir
  1. 新建一个文件夹取名 zk-cluster ,名字你可以自己定义
  2. 然后移动上面 第1步解压的 zookeeper-3.5.4-beta 文件到 zk-cluster 目录,并且新复制出另外的两份来
  3. 现在有三个服务文件夹,然后分别取名 zk3.5.4-8001、 zk3.5.4-8002、zk3.5.4-8003,我现在列一下整个需要的目录结构:
/zk-cluster/
|-- zk3.5.4-8001
|-- zk3.5.4-8002
|-- zk3.5.4-8003
`-- zk-data                             # 存放每个服务数据和日志的总目录
    |-- 8001  
        |-- logs
        |-- data
            |-- myid                    # 配置文件,文件名称myid无后缀,内容为数字1
    |-- 8002  
        |-- logs
        |-- data
            |-- myid                    # 配置文件,文件名称myid无后缀,内容为数字2
    |-- 8003  
        |-- logs
        |-- data
            |-- myid                    # 配置文件,文件名称myid无后缀,内容为数字3
  1. 分别修改zk3.5.4-8001、 zk3.5.4-8002、zk3.5.4-8003里面的 conf/zoo.cfg 配置文件,8001的配置文件内容如下:

    # 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/leitan/Downloads/zk-cluster/zk-data/8001/data
    dataLogDir=/Users/leitan/Downloads/zk-cluster/zk-data/8001/logs
    # the port at which the clients will connect
    clientPort=3001
    # 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
    
    # Cluster Zookeeper Server Address 下面配置不需要修改 要注意的就是,下面server.number (number是1、2、3)分别对应myid中的内容,
    # zookeeper也是通过server后面的数字以及dataDir下的myid内容来判断zookeeper集群的关系的(哪个server对应哪个地址),然后后面两个端
    # 口号,一个是跟服务器发送链接的端口,另一个是接受服务器链接的端口
    server.1=127.0.0.1:8001:9001
    server.2=127.0.0.1:8002:9002
    server.3=127.0.0.1:8003:9003
    

    配置说明:

    dataDir 数据目录

    dataLogDir 日志目录

    clientPort 服务端口

    上面这三个都配置成第4步目录列表里的各自的目录,没有的需要自己去新建

  2. 服务集群启动

    进入到对应服务的bin目录,然后把三个目录下的服务依次启动即可

    $ ./zkServer.sh start-foreground

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • Hadoop HA集群搭建文档.............................................
    钟敏_1788阅读 1,448评论 0 0
  • 说到分布式开发Zookeeper是必须了解和掌握的,分布式消息服务kafka 、hbase 到hadoop等分布式...
    欢醉阅读 1,521评论 0 7
  • 一、伪集群模式 注意事项 在一台机器上部署了3个server,需要注意的是在集群为分布式模式下我们使用的每个配置文...
    蹩脚的小三阅读 298评论 0 2
  • 0 缘起Pulsar是一个支持多租户的、高性能的消息中间件。2018年11月中旬开始初步在线上生产环境使用。pul...
    hellozepp阅读 1,674评论 0 1
  • 回家的时候看到爷爷爱坐在摇椅上看着镜子里的自己 进房间的时候我小心翼翼 总觉得自己唐突打扰了他和另一个世界的自己对...
    LafeeM_阅读 453评论 0 2