美文网首页
Zookeeper集群搭建笔记

Zookeeper集群搭建笔记

作者: AceCream佳 | 来源:发表于2019-05-08 16:41 被阅读0次

研究kafka的过程中,需要搭建zookeeper集群,过程比较简单,记录一下:
依然是三个虚拟机Centos7环境

192.168.20.3 Master
192.168.20.4 Slave1
192.168.20.5 Slave2

1.下载及配置环境变量

https://zookeeper.apache.org/
官方下载zk的tar包,我下载的是3.4.14版本
放linux下 我的路径是 opt/soft/
tar zxvf zookeeper-3.4.14.tar.gz
然后sudo vim /etc/profile
配置环境变量(也可以不配置):

# zk
export ZOOKEEPER_HOME=/opt/soft/zookeeper-3.4.14
export PATH=$PATH:$ZOOKEEPER_HOME/bin

执行source /etc/profile

2.ZK集群配置

进入zookeeper的conf目录下
能发现三个文件,我们主要关注 zoo_sample.cfg文件
执行cp zoo_sample.cfg zoo.cfg源文件备份一下
然后vim zoo.cfg

tickTime=2000
initLimit=10
syncLimit=5

dataDir=/tmp/zookeeper
dataLogDir=/opt/soft/softLogs/zk

clientPort=2181

server.1=Master:2888:3888
server.2=Slave1:2888:3888
server.3=Slave2:2888:3888

这么写精简一些,简单说一下

  • tickTime:心跳时间,每个 tickTime 服务器之间会发送一个心跳。
  • initLimit:这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 5个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 10*2000=20 秒。
  • syncLimit:Leader和Follower 之间发送消息,请求和应答时间,最长不能超过的时间,这边设置为5,那么时间就是 5*2000=10 秒。
  • dataDir:存的是快照日志,后续需要手动去清理
  • dataLogDir:不设置的话就会存在dataDir里面去,这边单独提出来比较好,因为他记录的是事务日志,最好是和快照区分开,否则会影响性能。
  • clientPort:默认是2181,不用多说了,客户端连接 Zookeeper 服务器的端口。
  • server.* : 这个是zk服务的id,后面可以伴随数字,数字可以自己去设置,后面接上集群机器,但是要注意一点,后续需要在dataDir创建一个myid文件,记录自己的id,好作区分。

然后,我们可以把这个改好的zk配置,分发到其他两台机器上!!!主要是配置,其他都差不多。
然后看dataDir,我的路径是/tmp/zookeeper
所以一路去创建文件夹,然后进入这个文件夹。
根据配置文件vim myid
Master机器,我们里面写1
Slave1机器,我们写2
Slave2机器,我们写3
保存。

完成配置,接下来就去看看是否启动!!

3.启动

分别去三台机器的zookeeper的bin目录下
开启:zkServer.sh start
都开启后我们可以看一下是否成功了!

使用jps命令查看是否启动,看到QuorumPeerMain证明成功了。

查看状态:zkServer.sh status
Using config是使用的配置文件
Mode是角色
角色分为leader和follower
一般情况下,zk集群只有一个leader,剩下的都是follower,leader一般来响应客户端的读写请求。而follower是去同步数据,一旦leader挂掉,就会从follower中投票选举一个新leader出来。

这边多提一句,快照和事务的日志文件可以定期删掉,因为zk它默认是不清理的,所以可以通过写脚本加crontab定时器的形式去定期清理。

相关文章

  • centos7 搭建kafka集群

    搭建kafka集群,需要先搭建zookeeper集群,搭建zookeeper集群,依赖于jdk 1.下载安装jdk...

  • 多台虚拟机搭建zookeeper集群

    zookeeper集群搭建 kafka是把状态保存在zookeeper中的,首先要搭建zookeeper集群。尽管...

  • Zookeeper相关的命令

    Zookeeper集群的搭建参考:zookeeper单机、集群搭建 配置集群的zoo.cfg的配置:server....

  • zookeeper简介(整理)

    zookeeper单机模式搭建Zookeeper集群及伪集群模式搭建 简介 ZooKeeper 是一个开源的分布式...

  • Zookeeper目录

    Zookeeper(windows)伪集群搭建 Zookeeper简介

  • Docker搭建kafka集群

    搭建zookeeper集群 zookeeper集群搭建 拉取kafka镜像 运行容器 主机一: 主机二: 主机三:

  • Kafka集群

    Kafka集群是把状态保存在Zookeeper中的,首先要搭建Zookeeper集群。Zookeeper集群部署请...

  • Zookeeper docker 集群搭建

    zookeeper docker 集群搭建 本地创建三个虚拟机,搭建docker容器的zookeeper集群 首先...

  • 大数据集群搭建2

    大数据集群搭建 本文档将搭建以下集群 hadoop 集群 zookeeper 集群 hbase 集群 spark ...

  • 大数据集群搭建

    大数据集群搭建 本文档将搭建以下集群 hadoop 集群 zookeeper 集群 hbase 集群 spark ...

网友评论

      本文标题:Zookeeper集群搭建笔记

      本文链接:https://www.haomeiwen.com/subject/fhrvoqtx.html