1.Zookeeper的搭建方式

Zookeeper安装方式有三种,单机模式集群模式以及伪集群模式

  单机模式:Zookeeper只运行在一台服务器上,适合测试环境;

  伪集群模式:就是在一台物理机上运行多个Zookeeper 实例;

  集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble)

  Zookeeper通过复制来实现高可用性,只要集合体中半数以上的机器处于可用状态,它就能够保证服务继续(zookeeper集群机制

  Zookeeper集群机制:半数机制:集群中半数以上机器存活,集群可用

2.ZooKeeper服务器集群搭建

  Zookeeper 集群搭建指的是 ZooKeeper 分布式模式安装。通常由 2n+1台 servers 组成。这是因为为了保证 Leader 选举(基于 Paxos 算法

的实现)能过得到多数的支持,所以 ZooKeeper 集群的数量一般为奇数。

  Zookeeper 运行需要 java 环境,所以需要提前安装 jdk。对于安装leader+follower 模式的集群,大致过程如下:

  

卸载系统自带的OpenJDK:查看(rpm -qa|grep java)    卸载(rpm -e --nodeps xxxxxxxxx),然后安装sun公司的 JDK,然后修改环境变量/etc/profile,

并source /etc/profile加载配置文件

搭建要求:

  (1) zk服务器集群规模不小于3个节点

  (2) 要求各服务器之间系统时间要保持一致:date -s命令

      (3) 关闭防火墙:service iptables stop

  1.解压缩zookeeper到指定目录: tar -zxvf  zookeeper-3.4.5.tar.gz  -C /usr/local/src

  2.重命名:解压后将文件夹,重命名为zookeeper: mv zookeeper-3.4.5 zookeeper

  3.修改环境变量:vi /etc/profile

export ZOOKEEPER_HOME=/usr/local/src/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin

  4.重新编译文件:source /etc/profile

  5.修改配置文件:将 /usr/local/src/zookeeper/conf/目录下的zoo_sample.cfg,重命名为zoo.cfg:mv zoo_sample.cfg zoo.cfg

  6.在/usr/local/zk/conf目录下,修改文件 vi zoo.cfg,创建data、log目录,并添加如下内容

# 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=/usr/local/src/zookeeper/data #文件存放目录,默认设置/tmp/zookeeper临时存放目录,每次重启后会丢失,在这我们自己设一个目录,/usr/local/src/zookeeper/data
# the port at which the clients will connect
clientPort=2181
#
# 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

 添加内容:

dataDir=/usr/local/src/zookeeper/data    #zookeeper数据存放目录
dataLogDir=/usr/local/src/zookeeper/log
server.1=shizhan2:2888:3888 (主机名, 心跳端口、选举端口) 201
server.2=shizhan3:2888:3888 205
server.3=shizhan5:2888:3888 207

  7.在data目录下创建myid:创建文件myid:touch myid,存放服务器ID

  8.将集群下发到其他机器上:基于 SSH 协议在网络之间进行安全传输的命令

scp -r  /usr/local/src/zookeeper root@192.168.232.205:/usr/local/src/ ---(shizhan3:)

scp -r  /usr/local/src/zookeeper root@192.168.232.201:/usr/local/src/ --- (shizhan2)

  9.修改myid:和server服务器ID保持一致

到shizhan2上:修改myid为:1
到shizhan3上:修改myid为:2
到shizhan5上:修改myid为:3

  10.启动每台机器:zkServer.sh start

  11.查看集群状态,主从信息:zkServer.sh status

  

  

  

  Zookeeper集群的角色:Leader 和 follower 

8.3.ZooKeeper集群安装配置的更多相关文章

  1. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例

    centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...

  2. hbase和ZooKeeper集群安装配置

    一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...

  3. Zookeeper 集群安装配置,超详细,速度收藏!

    今天,栈长分享下 Zookeeper 的集群安装及配置. 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的zookeeper-3.4.11. ...

  4. Zookeeper 集群安装配置

    今天,栈长分享下 Zookeeper 的集群安装及配置. 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的zookeeper-3.4.11. ...

  5. zookeeper集群安装配置

    http://www.firefoxbug.net/?p=2565

  6. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  7. 1、zookeeper集群安装

    前提准备3台centos7.0虚拟机 c7003:192.168.70.103 c7004:192.168.70.104 c7005:192.168.70.105 并在三台虚拟机上配置hosts为 1 ...

  8. (Linux环境Kafka集群安装配置及常用命令

    Linux环境Kafka集群安装配置及常用命令 Kafka 消息队列内部实现原理 Kafka架构 一.下载Kafka安装包 二.Kafka安装包的解压 三.设置环境变量 四.配置kafka文件 4.1 ...

  9. Zookeeper集群安装Version3.5.1

    Zookeeper集群安装,基于版本3.5.1, 使用zookeeper-3.5.1-alpha.tar.gz安装包. 1.安装规划 zookeeper集群模式,安装到如下三台机器 10.43.159 ...

随机推荐

  1. A smooth collaborative recommender system 推荐系统-浅显了解

    characteristic: 1.Tracking user 2.personliza 3.面对的问题类似于分形学+混沌学(以有观无+窥一管而知全貌) 4.Data:high-volume.spar ...

  2. Java实验报告&&课程报告

    Java实验报告 班级 计算机科学与技术二班 学号 20188450 姓名 李代传 完成时间 2019/9/19 评分等级 实验二 Java简单类与对象 实验目的 掌握类的定义,熟悉属性.构造函数.方 ...

  3. [转帖]国内拉取google kubernetes镜像

    国内拉取google kubernetes镜像 2019年04月19日 01:19:03 willblog 阅读数 4231 标签: kubernetes 更多 个人分类: kubernetes   ...

  4. 【Python】【demo实验25】【练习实例】

    原题: 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和. 我的源码: #!/usr/bin/python # encoding=utf-8 # -* ...

  5. matplotlib库绘制条形图

    练习一:假设你获取到了2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b),那么如何更加直观的展示该数据? a = ["战狼2","速度与激情8" ...

  6. 3d长方体

    html <div class="main"> <div class="a1">1</div> <div class= ...

  7. 从入门到自闭之Python--Django Rest_Framework

    核心思想: 缩减编写api接口的代码 Django REST framework是一个建立在Django基础之上的Web 应用开发框架,可以快速的开发REST API接口应用.在REST framew ...

  8. vue技术分享之你可能不知道的7个秘密

    本文是vue源码贡献值Chris Fritz在公共场合的一场分享,觉得分享里面有不少东西值得借鉴,虽然有些内容我在工作中也是这么做的,还是把大神的ppt在这里翻译一下,希望给朋友带来一些帮助. 一.善 ...

  9. Web前端开发JavaScript提高

    JavaScript 一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型,它的解释器被称为JavaScript引擎,是浏览器的一部分,并且是被广泛用于客户端的脚本语言,JavaS ...

  10. supersocket特征

    SuperSocket, 可扩展的 Socket 服务器框架 SuperSocket 是一个轻量级, 跨平台而且可扩展的 .Net/Mono Socket 服务器程序框架.你无须了解如何使用 Sock ...