1. 下载zookeeper

参考官方文档下载一节:https://zookeeper.apache.org/doc/current/zookeeperStarted.html#sc_Download

2. 创建zookeeper多实例

创建一个zookeeper-cluster目录用来存放多个zookeeper实例(下载完成后解压,复制3分,每一份就是一个实例)。可以看到我的zookeeper-cluster目录下有三个zookeeper实例(如图1),对它们分别做如下配置:

图1: zookeeper单机集群创建实例

1. 配置conf/zoo.cfg

图2: server-1的zoo.cfg配置文件

  • clientPort: zookeeper对客户端开发的端口号,默认为2181,我这里将三个实例分别改为了9200,9201,9202(只要不冲突就行了)
  • tickTime: 基本的时间单元,单位为毫秒
  • dataDir: 存放该实例数据的文件夹路径
  • initLimit: follower与leader初始化的时候需要进行连接的建立,这个初始化所需要的最大时间单位
  • syncLimit: follower与leader进行数据通信所需要的最大时间单位
  • admin.serverPort: 目前版本的zookeeper内嵌了一个jetty,默认运行在8080端口
  • server.1/2/3: 这里server后面的编号是每一个zookeeper实例的id编号,这个id在后面会讲是如何设置的,后面的值格式为ip:port1:port2,ip是本实例运行所在机器的ip地址,port1是当本实例作为一个follower时,与leader进行通信的端口号,port2是当leader不慎挂掉之后,重新执行选举时所用的端口号(不清楚为什么选举需要一个端口号)

2. 在第一步中,有一个server.1/2/3,这个编号,在每个zookeeper实例的创建名为myid的文件,并写入数字作为该server的id编号,这里我对应的每个实例填写了1,2,3

图3: zookeeper的dataDir路径下创建myid

3. 启动集群

在每个实例目录下执行

➜  zookeeper-3.5.-server- ./bin/zkServer.sh start
➜  zookeeper-3.5.2-server-2 ./bin/zkServer.sh start
➜  zookeeper-3.5.2-server-3 ./bin/zkServer.sh start

可以通过status查看它们的是leader还是master,以及一些其他信息

➜  zookeeper-3.5.-server- ./bin/zkServer.sh status

图4: 实例1运行的状态-它是一个follower

zookeeper单机集群搭建的更多相关文章

  1. 分享知识-快乐自己:zookeeper 伪集群搭建

    1):单一 zookeeper  搭建步骤 2):zookeeper 伪集群搭建 1):新建一个集群目录 [root@zoodubbo opt]# mkdir zookeeper_cluster 2) ...

  2. RabbitMQ入门教程(十四):RabbitMQ单机集群搭建

    原文:RabbitMQ入门教程(十四):RabbitMQ单机集群搭建 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://b ...

  3. zookeeper伪集群搭建

    zookeeper伪集群搭建 1. 下载zookeeper: https://zookeeper.apache.org/ 2. 解压: tar -zxvf zookeeper-3.4.14.tar.g ...

  4. zookeeper 单机. 集群环境搭建

    zookeeper分布式系统中面临的很多问题, 如分布式锁,统一的命名服务,配置中心,集群的管理Leader的选举等 环境准备 分布式系统中各个节点之间通信,Zookeeper保证了这个过程中 数据的 ...

  5. 初始zookeeper与集群搭建实例

    zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式协调服务,它包含一个简单的原语集,应用于分布式应用的协作服务, ...

  6. 初识ZooKeeper与集群搭建实例

    原文链接:http://www.linuxidc.com/Linux/2015-02/114230.htm zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Ch ...

  7. Zookeeper分布式集群搭建

    实验条件:3台安装linux的机子,配置好Java环境. 步骤1:下载并分别解包到每台机子的/home/iHge2k目录下,附上下载地址:http://mirrors.cnnic.cn/apache/ ...

  8. Zookeeper + Kafka 集群搭建

    第一步:准备 1. 操作系统 CentOS-7-x86_64-Everything-1511 2. 安装包 kafka_2.12-0.10.2.0.tgz zookeeper-3.4.9.tar.gz ...

  9. [dubbo实战] dubbo+zookeeper伪集群搭建

    zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会有等待.所以可以通过zookeeper集群解决. 一.为什么需要zookeeper呢? 大部分分布式应用需要一个主控.协 ...

随机推荐

  1. HttpTool.java 【暂保留】

    备注 在 java tool util 工具类 中已存在 HttpTool.java 该类为java源生态的http 请求工具,不依赖第三方jar包 ,即插即用. package kingtool; ...

  2. CF1009F Dominant Indices

    传送门 还是放个链接让泥萌去学一下把 orzYYB 题目中要求的\(f_{x,j}\),转移是\(f_{x,j}=\sum_{y=son_x} f_{y,j-1}\),所以这个东西可以用长链剖分优化, ...

  3. HTML —— 小记

    标签语义化 所谓标签语义化是要使HTML标签具备很好的可读性,可以清晰传达每个标签所要表达的意义,以方便其被友好的处理和解析(主要针对网络爬虫) 好处: 1.对搜索引擎友好,增加排名权重 2.对用户友 ...

  4. Javascript - 学习总目录

    Javascript - 操作符 Javascript - 数据类型 Javascrip - 语句 Javascript - 函数 Javascript - 预编译与函数词法作用域 Javascrip ...

  5. swift学习第一天---常量变量基础数据类型

    import Foundation /** * 1.常量 变量 知识要点:常量的定义用let 变量的定义用var 常量一旦定义便不可再更改. 变量定义之后可以在定义之后的程序中任意地方进行修改. */ ...

  6. Java编程:悲观锁、乐观锁的区别及使用场景

    定义: 悲观锁(Pessimistic Lock): 每次获取数据的时候,都会担心数据被修改,所以每次获取数据的时候都会进行加锁,确保在自己使用的过程中数据不会被别人修改,使用完成后进行数据解锁.由于 ...

  7. oracle修改日期格式

    查看默认的日期格式 select * from v$nls_parameters; 更改 alter session | system (范围) set xxxx=“yyyy-mm-dd” ;

  8. CentOS 6.8 部署django项目一

    CentOS 6.8 部署django项目二 1.安装python3.5(默认是2.6) 参考:http://blog.csdn.net/shaobingj126/article/details/50 ...

  9. u盘的一些理解

    U盘是由主控板+FLASH+外壳组成的,当主控板焊接上空白FLASH后插入电脑,因为没有相应的数据,  量产工具 电脑只能识别到主控板,而无法识别到FLASH,所以这时候电脑上显示出U盘盘符,但是双击 ...

  10. openssl版本升级操作记录【转】

    需要部署nginx的https环境,之前是yum安装的openssl,版本比较低,如下:   [root@nginx ~]# yum install -y pcre pcre-devel openss ...