前提:zookeeper是java语言开发的,保证jdk已经在服务器上安装成功:

(yum安装的是openjdk,尽量不要使用yum安装jdk,要使用oracle Hotspot的jdk。原因是一些开源软件,尤其是大数据领域的,最开始对oracle的官方jdk和openjdk都会进行测试,但是到后面就只针对oracle的jdk进行测试,使用openjdk可能会出现不兼容的问题)

上传安装包:

解压包:

zookeeper目录结构:

进入到bin目录,存放的是各种启动脚本:

进入conf目录,改名配置文件zoo_sample.cfg:改名为zoo.cfg(默认的名称是这个)

vi zoo.cfg:

①tickTime:维持leader与follower以及客户端之间的心跳频率时间(单位毫秒,默认2000ms)

②initLimit:允许follower从节点追随leader主节点时的初始延迟,默认是10次,也就是允许的延迟时间为2000*10=20秒。如果在这个时间内还没有连接上的话,leader就会认为follower有问题,将会抛弃你不跟你玩了。

③syncLimit:默认是5.leader与follower之间的协作允许最大延迟时长,tickTime * syncLimit=2000*5=10秒。10秒之内没响应,也会认为follower存在问题。

④dataDir:用于存储持久化文件(日志、快照之类的)的路径。默认 /tmp/zookeeper 最好不要用/tmp这类的目录,一般改为/var,var在Linux中是存放临时文件的。

⑤cliientPort:客户端连接的端口号。默认是2181

⑥maxClientCnxns:最大的客户端连接数。也就是最多允许多少个客户端连接本台机器的zk

⑦配置集群中所有的节点信息:3888端口用于在没有leader时所有节点在3888建立socket连接进行投票选举出leader;2888端口是follower从节点连接leader主节点的端口。

在zk中,leader可以理解成是“谦让”出来的,1,2,3,4中谁是最大的谁就立马是leader

过半通过:一共4个节点有 4/2+1=3台通过就行。比如1,2,3启动了之后3就是leader,因为遵循的是过半通过原则。

创建目录,如果连续两级以上目录都不存在,就要加上-p参数:

创建一个myid文件,里面写入1:因为上面再zoo.cfg中配置了server.1,每个节点指定不同的myid

在不同服务器节点上拷贝文件的scp命令:将node01节点的文件夹拷贝到node02节点

echo命令的使用:(直接将内容写入文件)

依次对node03和node04节点进行拷贝:

依次在node03和node04节点创建myid文件:

将zookeeper添加到profile环境变量:

加载下profile文件:

将profile文件分发到其余三个节点:

使配置文件profile生效的两种方式:

source /etc/profile
或者
. /etc/profile

xshell批量发送命令到全部会话窗口功能介绍:

启动zookeeper的几种方式:

①start-foreground:前台启动,所有的日志会打印出来。

依次启动前三个节点的zk服务:可以看到node03已经被选举为leader了,其余两台就变成follower了。此时已经选出leader了,后面还有一个node4节点,即使再启动node04,它也不会成为leader,只能是follower,

此时如果停掉node03这个leader,那么node04将会成为leader:

服务运行一段时间后,再选举的规则大概是:如果谁的数据最完整,那么它将成为新的leader;如果都比较完整的话,再来比较id,id越大,就成为leader。

zookeeper的安装及配置教程(步骤详尽)相关推荐

  1. Tomcat安装及配置教程(超详细的图文教程)(亲测)

    Tomcat安装及配置教程(超详细的图文教程) 1.什么是Tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下 ...

  2. 【Ubuntu】Ubuntu16.04+VMware+Win10安装及配置教程

    Ubuntu16.04+VMware+Win10安装及配置教程   前言:   我之所以使用Ubuntu16.4,既为学Linux操作,也为学习Python.Ubuntu16.4一直以来在虚拟机上都跑 ...

  3. Discuz!论坛程序安装+模板配置教程

    Discuz!论坛程序安装+模板配置教程 Linux系统安装方法: 第一步:检查是否安装apache mysql php ps -ef |grep httpd ps -ef |grep mysql p ...

  4. (图文详细)AppServer安装及配置教程

    (图文详细)AppServ安装及配置教程 一.AppServ简介 二.下载AppServ并安装 三.检查是否成功及配置 (图文详细)AppServ安装及配置教程 一.AppServ简介 AppServ ...

  5. python3 [爬虫入门实战]爬虫之scrapy安装与配置教程

    python3 [爬虫入门实战]爬虫之scrapy安装与配置教程 标签: python爬虫scrapy 2017-07-08 15:38 77人阅读 评论(0) 收藏 举报 分类: python3爬虫 ...

  6. Django 安装与配置教程

    文章目录 Django 安装与配置教程 一,Windows系统安装Django 1) 离线安装 2) 在线安装 3) 配置Django环境变量 4) 检查是否安装成功 二,Linux和Mac系统安装D ...

  7. 检查python是否安装成功的命令是_Python 中的pygame安装与配置教程详解

    安装软件环境及版本说明 OS: Win10 x 64 专业版 Python: 2.7 IDE: PyCharm Community 2018 1. 安装python 1)下载并安装python pyt ...

  8. Django安装与配置教程(图解)

    Django安装与配置教程(图解) 不同 Django 版本对 Python 版本的要求也是不一样的 ,Django 对 Python 版本的支持,如表格所示: Django版本与Python版本对应 ...

  9. 组网神器WireGuard安装与配置教程(超详细)

    文章目录 01 引言 02 安装教程 2.1 前提条件 2.2 wireguard安装 2.2.1 步骤一: 安装wireguard 2.2.2 步骤二: 服务端生成秘钥对 2.2.3 步骤三: 配置 ...

最新文章

  1. 一键fxxk,代码修复神器拯救你
  2. 语音网关上AA的配置解析
  3. Entity Framework 4.3 中的新特性
  4. SQLSERVER DISTINCT的反例
  5. 使用socket实现信用卡程序和迷你购物商城
  6. Exchange 2010通过NAT方式发布到公网
  7. UESTC - 1610 递推方程+矩阵快速幂
  8. 从一个hibernate配置文件中了解到的东西
  9. 二级VB培训笔记07:通用对话框
  10. uniapp 乘法结果保留了很多小数_苏教版五年级数学上册5.9循环小数和商的近似值微课视频 | 练习...
  11. mysql参数积累 持续更新。。。
  12. oracle基础语法(二)ORACLE查询
  13. Logback设置property参数
  14. Predictive State Temporal Difference Learning 原文翻译预测状态时间差分学习
  15. 可以手机安装电脑版chrome插件的安卓浏览器
  16. HDD硬盘securityATAerase事故(HDD被LOCKED)
  17. const定义及初始化约束
  18. 海通股票交易系统通道接口错误怎么办
  19. 偏门赚钱项目:公众号打赏引流日赚500元
  20. 基于STM32F103HAL库的声音定位系统

热门文章

  1. 【机器学习基础】8个知识点,图解K-Means算法
  2. 学习TensorFlow、PyTorch、机器学习、深度学习和数据结构五件套!附下载链接!...
  3. 【小技巧】深度学习中的那些效率提升利器(附资源)
  4. 如何用杠铃策略,构建你的“反脆弱性”
  5. 项望烽:iOS App开发的那些事儿
  6. LeetCode_559.N叉树的最大深度
  7. Swift-Tips之重复字符串
  8. Python牛刀小试(五)--logging模块
  9. 大数据促健康产业高增长
  10. [ROBOT] python library 如何能获取到ROBOT框架里面的全局变量,例如${OUTPUT DIR}等