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. 用js的方式运行c程序之webassemly

    在这里就不科普webassemly的作用以及好处了,请自行百度. 那么,怎么通过js的方式在浏览器中运行c程序呢,其中原理如下: 可能另一张图会更详细: 1.安装emscripten 说明文档地址:h ...

  2. 论UT阶段重要性

    测试与开发这对立的命运啊 如果是对测试从业者心存鄙视的朋友啊,请关掉此页,带着偏见不好看的~ 人生就像一个旅途,每个人看到风景不一样,世界观.人生观.价值观也就不同.不要试着去改变别人,因为你的观点在 ...

  3. python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令

    前置步骤: 下载一个绿色版的mysql数据库客户端连接工具 :http://wosn.net/821.html mysql平台为win7(以后会有CentOS上的) 学习目的: 掌握数据库的基本概念, ...

  4. Claymore's Dua Miner挖矿教程

    一.软件准备:首先需要一款挖矿软件.在这里推荐Claymore's Dua Miner的官方原版. 注意: 1. 如果不了解,请不要在网上随意下载其它版本的挖矿软件或者Claymore's Dua M ...

  5. mysql 数据库的基本操作

    day 41 MySql 一. 为啥使用数据库? 因为之前使用文件(Excel)管理数据, 但是数据量特别大的时候,使用Excel管理 的话, 就比较的麻烦了因此引入一个新的数据管理软件 : 数据库软 ...

  6. hive中case命令

  7. Stream系列(十四)parallet方法使用

    并发 视频讲解:https://www.bilibili.com/video/av78408286/ EmployeeTestCase.java package com.example.demo; i ...

  8. 小记--------maxwell启动失败解决

    查看报错日志信息: com.github.shyiko.mysql.binlog.network.ServerException: Could not find first log file name ...

  9. 【LOJ】#3090. 「BJOI2019」勘破神机

    LOJ#3090. 「BJOI2019」勘破神机 为了这题我去学习了一下BM算法.. 很容易发现这2的地方是\(F_{1} = 1,F_{2} = 2\)的斐波那契数列 3的地方是\(G_{1} = ...

  10. js报Uncaught SyntaxError: Unexpected token <错误 解决方法

    js报Uncaught SyntaxError: Unexpected token <错误 解决方法 错因 js被shiro的拦截器拦下,访问不了 #shiro的配置 shiro: hash-a ...