1、首先安装jdk


2、安装zookeeper

2-1、下载zookeeper安装包

http://apache.fayea.com/zookeeper/stable/

2-2、解压安装包

tar -zxvf zookeeper-3.4.12.tar.gz

2-3创建配置文件

从conf目录下拷贝出一份配置文件命名为zoo.cfg作为当前zookeeper的配置

cp -rf zoo_sample.cfg zoo.cfg

zoo.cfg配置说明

tickTime : 时间单位

initLimit follower与leader 同步数据的时间(initLimit*tickTime))

Synclimit 心跳检测最大延迟时间。

dataDir 默认情况下,zookeeper的事务日志 和 数据快照 都会保存在 dataDir 目录下.

dataLogDir log日志存储目录,默认dataDir下

clientPort 客户端与服务端建立连接的端口号,默认2181

2-4、启动zookeeper

./usr/local/zookeeper-3.4.12/bin/zkServer.sh start

查看2181端口是否启用

指令:ss -tnl

2-5、使用客户端连接

./zkCli.sh -server 127.0.0.1:2181 (ip:端口)

连接成功后,进入命令窗口 ,输入 ls / 查看当前根目录下的节点信息

2-6、zookeeper客户端操作基础指令

创建节点: create [-s] [-e] path data acl

[-s]是否有序 , [-e]是否临时, path 节点路径 ,data 数据内容,acl 数据权限。

查看节点目录信息: ls path [watch]

path节点路径 , watch 为监听事件。

获取节点信息: get path [watch]

path节点路径 , watch 为监听事件。

修改节点信息: set path [version]

path节点路径,version 版本号,修改节点数据后递增,相当于我们数据库的版本号,作为乐观锁功能。

删除节点信息: delete path [version]

path节点路径 ,version ,修改节点数据后递增,相当于我们数据库的版本号,作为乐观锁功能。

查看节点当前状态: stat path [watch]

path节点路径 ,watch 为监听事件

注:[] 括号里选项内容可选择

watch :为当前节点的一个监听事件,当节点被修改、删除、查看时都会触发对应分类的事件

2-7、zookeeper 节点结构

Zookeeper 的节点也称znode ,节点结构类似于文件系统以树形结构存储。

(1)节点分类

持久节点 :节点信息一旦创建则一直存储 直到删除

持久有序节点 :节点信息创建后会维护一个递增的序列化用于表示他们的创建顺序。

临时节点 :节点创建后,只在当前会话内存在,一旦会话断开节点将会删除。

临时有序节点 : 维护一个递增序列号的临时节点。

(2)节点stat 状态释义

状态属性

说明

cZxid 数据节点创建时的事务ID

ctime 数据节点创建时的时间

mZxid 数据节点最后一次更新时的事务ID

mtime 数据节点最后一次更新时的时间

pZxid 数据节点的子节点列表最后一次被修改(是子节点列表变更,而不是子节点内容变更)时的事务ID

cversion 子节点的版本号

dataVersion 数据节点的版本号

aclVersion 数据节点的ACL版本号

ephemeralOwner 如果节点是临时节点,则表示创建该节点的会话的SessionID;如果节点是持久节点,则该属性值为0

dataLength 数据内容的长度

numChildren 数据节点当前的子节点个数


3、zookeeper集群搭建

3-1、zookeeper集群中的几种角色概念

zookeeper集群包括三种角色、leader、follower、observer

Leader节点:处理事务请求操作(修改、删除、新增)、负责发起数据同步提议

follower节点:参leader发起的提议、参与leader选举、处理非事务请求操作、把事务请求转发给Leader

observer节点:不参与投票、处理非事务请求操作、把事务请求转发给Leader

3-2、准备4台服务器

其中一台作为leader节点,两台follower节点,一台作为observer节点。

192.168.30.101

192.168.30.102

192.168.30.103

192.168.30.104 这台服务器作为observer节点

3-3、分别在4个服务器上都安装好zookeeper

3、修改每个服务器zookeeper的zoo.cfg配置文件,增加如下配置

server.1=192.168.30.101:2182:2183

server.2=192.168.30.102:2182:2183

server.3=192.168.30.103:2182:2183

server.4=192.168.30.104:2182:2183:observer (observer的服务要在zoo.cfg里增加peerType=observer配置)

以上配置规则说明

格式 server.id=host:port:port;

Id :为集群中的机器顺序号;

host :zookeeper服务器地址;

第一个port :zookeeper节点通信端口,可随意指定,不与其他端口冲突,多个节点要统一;

第二个port :leader 选举时的通讯端口号,可随意指定,不与其他端口冲突,多个节点要统一;

4、给每个zookeeper服务创建zoo.cfg配置文件

在dataDir 目录(默认目录在temp/zookeeper)下新建一个myid文件 ,里面值和zoo.cfg 配置文件的server.id 中的id对应,这里的myid值主要是用于leader竞选时的标识。

5、分别启动每个zookeeper服务

指令:zkServer.sh start

启动的过程中遇到问题,通过查看安装目录下的zookeeper.out文件查找错误日志

6、查看节点集群状态

指令:zkServer.sh status

Leader 节点

follower节点

observer 节点

zookeeper 日志查看_zookeeper 安装和集群配置相关推荐

  1. 尚硅谷大数据技术Zookeeper教程-笔记01【Zookeeper(入门、本地安装、集群操作)】

    视频地址:[尚硅谷]大数据技术之Zookeeper 3.5.7版本教程_哔哩哔哩_bilibili 尚硅谷大数据技术Zookeeper教程-笔记01[Zookeeper(入门.本地安装.集群操作)] ...

  2. ubuntu18.04下hadoop安装与集群配置

    ubuntu18.04下hadoop安装与集群配置 hadoop安装_单机/伪分布式配置 环境 创建hadoop用户 更新apt 安装SSH.配置SSH无密码登陆 安装Java环境 安装 Hadoop ...

  3. zoomkeeper java使用_Zoonkeeper安装、集群配置 [Mac]

    Zoonkeeper安装.集群配置 [Mac] 1. 下载Zoonkeeper 进去后选择你需要的版本,然后下载对应的压缩文件到本地,比如我选择的是当前最新的版本 zookeeper-3.5.4-be ...

  4. 分布式业务Redis安装与集群配置

    Redis在百度百科里的解释:Redis是一个开源的使用ANSI  C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API,包括C#.Java.PHP等等 ...

  5. Solr搜索引擎 — SolrCloud安装和集群配置

    搞定了一切的一切之后下一步就是正式使用了,但是之前介绍的都是在单台服务器上进行的部署,如果在生产环境出现了单台故障怎么办呢?提供稳定性和性能的最直观的方式就是集群,solr官方提供了cloud的集群方 ...

  6. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置

    Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了.  准备文件 从 http://archive.cloudera.com/cdh5/parcels ...

  7. NOSQL 之 cassadra 安装与集群配置

    cassadra 安装 1.下载: apache-cassandra-2.0.6-bin.tar.gz jdk-8-linux-x64.rpm 2.先更新jdk rpm -ivh jdk-8-linu ...

  8. Proxmox VE安装、集群配置

    一 proxmox VE简介 Proxmox VE 是一个既可以运行虚拟机也可以运行容器的虚拟化平台. Proxmox VE 基于Debian Linux 开发, 并且完全开源. 出于灵活性的考虑, ...

  9. docker 安装redis集群配置3主3从,实现hash槽分配存储数据

    目录 一.docker集群安装 1.分别在宿主机的/docker/redis下创建每个节点数据同步的目录 2.执行容器启动命令 3.执行命令参数解释: 4.集群节点不够提示:提示需要至少3个maste ...

最新文章

  1. 什么是循环神经网络——学习笔记
  2. C++中逆向迭代器的说明及使用
  3. Python_文件_日记管理系统
  4. 网络知识:交换机中的半双工与全双工知识笔记
  5. 一步步学习EF Core(2.事务与日志)
  6. SmoothNLP 中文NLP文本处理工具 Python 实战示范
  7. 洛谷OJ上的A+B花(zhuang)式(bi)解法
  8. Java之Normalizer(归一化)
  9. 解决华硕FX80G* Fn+F5或其他功能键切换不显示问题
  10. UI - PS如何导入不同的字体
  11. SSO单点登录系统解决方案
  12. Linux服务器恢复删除数据
  13. 裂变活动的5个关键步骤?
  14. 什么是X11-Forwarding
  15. html在抽奖图片自动效果图,jQuery实现图片随机切换、抽奖功能(实例代码)
  16. 关于苹果的iOS cercertificate的创建问题
  17. GIC 基础知识介绍 (一)
  18. java入门学习教程,详细说明
  19. DB2DIAG 命令学习
  20. 账本进化-了解区块链

热门文章

  1. history模式 nginx配置_nginx反向代理部署vue项目(history模式)的方法
  2. 4g内存电脑装xp系统怎么样_系统坏了?去店了重装系统又贵?今天手把手教你如何重装系统...
  3. xshell密码保存位置_一键安装宝塔面板后哪里找账号密码?
  4. 安装mysql中文步骤_mysql安装步骤-Go语言中文社区
  5. 【Android】笔记
  6. Hive配置文件中配置项的含义详解(收藏版)
  7. 动画特效九:下拉刷新
  8. 今天写了个商品采购入得存储过程,使用游标实现的,实现了多个商品库存的增加...
  9. 代码阅读是写好程序的基本能力
  10. makefile从无到有