一、预备工作

1、zookeepeer需要安装JDK,至于版本,大家可以去官网查询一下。这里我安装的是JDK8。

2、需要开放zookeepeer用到的端口,默认端口2181、2888、3888,至于开放的方法,可以通过关闭防火墙,也可以通过添加IP例外。

a、 关闭防火墙的方法为:chkconfig iptables off,然后重启。

b、为IP添加例外,可以使用:iptables -I INPUT 1 -p tcp --dport 2181-j ACCEPT

查看例外列表:iptables --list

二、下载并安装

1、官网地址:https://www.apache.org/dyn/closer.cgi/zookeeper/ 这里有很多镜像的地址,你可以选择一个比较近的,我选的是清华的

2、解压&安装:

tar zxvf zookeeper-3.4.8.tar.gz -C /usr/app

cd /usr/app

mv zookeeper-3.4.8 zookeepeer

cd zookeepeer

cp conf/zoo_sample.cfg conf/zoo.cfg//这里用的zookeepeer的示例配置,在这个基础上修改

三、配置zookeeper

 [root@sxl132 conf]# cat zoo.cfg
# The number of milliseconds of each tick
tickTime=2000 //心跳时间间隔,有关时间的设置均以这个时间为最小单位,单位是毫秒,这里是2000毫秒
# The number of ticks that the initial
# synchronization phase can take
initLimit=10 //集群中的fllower服务器与leader服务器之间,初始连接时能容忍的最多心跳数,这里则是:在初始化连接时,如果超过10个心跳时,对方未答应,则连接失败
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5 //fllower服务器与leader服务器之间,请求和应答能容忍的最多心跳数,超过这个心跳,则会丢充这个fllower。所以连接到这个fllower的client,则会连接到其他的fllower
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/usr/data/zookeepeer //zookeepeer的数据目录
# the port at which the clients will connect
clientPort=2181 //连接到此台zookeepeer的client所使用的端口
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=
#
# 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=
# Purge task interval in hours
# Set to "" to disable auto purge feature
#autopurge.purgeInterval=
server.=192.168.116.142::3888 //数据格式为server.myid=IP:PORT1:PORT2,每一行代表zookeepeer集群中的一台服务器
server.=192.168.116.143::3888 //其中myid为数字,标志着zookeepeer服务器在这个集群中的惟一标志,IP为服务器的IP地址
server.=192.168.116.144::3888 //PORT1:用来进行集群成员间信息交换,表示这个服务器与集群中的leader服务器交换信息的端口;PORT2:在leader挂掉时专门用来进行选举leader所用的端口

创建myid标志:

首先,myid在这里是一个文件,文件中的内容很单纯,只有当前服务器的myid内容,而且一定要与zookeepeer配置中的myid一一对应;

其次,myid的位置一定要在zookeepeer的数据目录下,前面我们配置的数据目录为:/usr/data/zookeepeer

如:

 [root@sxl132 zookeepeer]# cat myid
 

四、启动zookeepeer并查看fllower&leader

      启动zookeepeer:      

 [root@sxl132 zookeepeer]# ./bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/app/zookeepeer/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

3台服务器都依次启动。

查看fllower&leader。

下面提leader:

[root@sxl132 zookeepeer]# ./bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/app/zookeepeer/bin/../conf/zoo.cfg
Mode: leader

下面是fllower:

 [root@sxl133 bin]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/app/zookeepeer/bin/../conf/zoo.cfg
Mode: follower

到此,说明我们的zookeepeer集群搭建成功了。

参考文档

https://www.cnblogs.com/linuxprobe/p/5851699.html

https://www.cnblogs.com/tonylovett/p/5227973.html

http://blog.csdn.net/gobitan/article/details/8659175

zookeepeer集群搭建的更多相关文章

  1. 【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)

    Oracle 11G RAC数据库安装(八) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总 ...

  2. 【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)

    Oracle 11G RAC数据库安装(九) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总 ...

  3. 【Data Cluster】真机环境下MySQL数据库集群搭建

    真机环境下MySQL-Cluster搭建文档  摘要:本年伊始阶段,由于实验室对不同数据库性能测试需求,才出现MySQL集群搭建.购置主机,交换机,双绞线等一系列准备工作就绪,也就开始集群搭建.起初笔 ...

  4. (四)Spark集群搭建-Java&Python版Spark

    Spark集群搭建 视频教程 1.优酷 2.YouTube 安装scala环境 下载地址http://www.scala-lang.org/download/ 上传scala-2.10.5.tgz到m ...

  5. (三)Spark-Hadoop集群搭建-Java&Python版Spark

    Spark-Hadoop集群搭建 视频教程: 1.优酷 2.YouTube 配置java 启动ftp [root@master ~]# /etc/init.d/vsftpd restart 关闭 vs ...

  6. Mosquitto搭建Android推送服务(三)Mosquitto集群搭建

    文章钢要: 1.进行双服务器搭建 2.进行多服务器搭建 一.Mosquitto的分布式集群部署 如果需要做并发量很大的时候就需要考虑做集群处理,但是我在查找资料的时候发现并不多,所以整理了一下,搭建简 ...

  7. Mongodb集群搭建的三种方式

    转自:http://blog.csdn.net/luonanqin/article/details/8497860 MongoDB是时下流行的NoSql数据库,它的存储方式是文档式存储,并不是Key- ...

  8. 分布式架构中一致性解决方案——Zookeeper集群搭建

    当我们的项目在不知不觉中做大了之后,各种问题就出来了,真jb头疼,比如性能,业务系统的并行计算的一致性协调问题,比如分布式架构的事务问题, 我们需要多台机器共同commit事务,经典的案例当然是银行转 ...

  9. 从零自学Hadoop(06):集群搭建

    阅读目录 序 集群搭建 监控 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一 ...

随机推荐

  1. 网络基础 Windows控制台下Ftp使用简介

    Windows控制台下Ftp使用简介 by:授客 QQ:1033553122 测试环境: ftp服务器所在主机ip:172.25.75.2 ftp用户目录:F:\ftp   C:\Users\laif ...

  2. loadrunner 场景设计-添加Unix、Linux Resources计数器

    场景设计-添加Unix.Linux Resources计数器 by:授客 QQ:1033553122 A.   目的 监控要测试的Unix.Linux服务器的资源使用情况 Linux CentOS为例 ...

  3. IDEA错误:Failed to start end point associated with ProtocolHandler [http-nio-9999] java.net.BindException: Address already in use: bind

    日志显示进程端口已被占用,首先需要的是查询什么进程占用了当前的9999端口. 1.win+R输入cmd进入命令界面: 2.输入命令  netstat -ano|findstr "端口号&qu ...

  4. Flutter 安装

    都说程序猿学习是不分平台的,做了一辈子的Xaml,也想看看现在最牛逼的移动技术. 看了看Google 的Flutter,好像很牛逼,不怎么需要Android和IOS基础(应该还是要的), 不过现在是B ...

  5. git基础介绍

    git基础介绍 这是git操作的基础篇,是以前的写的操作文档,就没有进行手打,直接把图片贴进来了,你们担待哈,有不正确的地方可以指正出来,我将在第一时间去修改,多谢哈! 一.文件状态:git系统的文件 ...

  6. 如何修改redis配置

    相关内容: Redis的配置: 通过config set命令修改配置 查看配置 设置新配置 直接修改配置文件redis.conf 常见配置项: 服务端连接相关 日志记录相关 服务端保持相关 首发时间: ...

  7. jQuery选择元素的方法大全

    jQuery选择器其实是一个有些地方比较费解的,如果没有经过多次实验的话,很难得出它的每个操作符到底是干什么的,很容易出错,经过 我的多次测试,终于对一些比较难理解或容易出错的选择操作进行总结,既方便 ...

  8. Linux下内存查看命令

    在Linux下面,我们常用top命令来查看系统进程,top也能显示系统内存.我们常用的Linux下查看内容的专用工具是free命令. Linux下内存查看命令free详解: 在Linux下查看内存我们 ...

  9. django项目中在settings中配置静态文件

    STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static'), ] 写成大写可能看不太懂,但是小写的意思非常明显:staticfiles_dir = [ o ...

  10. Navicat 连接Oracle时提示oracle library is not loaded的问题解决

    笔者使用的Navicat Premium 12启动界面截屏: 请注意是64位的.笔者win7 64位系统. 连接Oracle时提示“oracle library is not loaded”. 解决方 ...