zookeeper集群搭建与使用

1.概念

1.1集群中的角色
leader服务器:zookeeper集群的核心
follower服务器:zookeeper集群状态的跟随者
observer服务器:观察者

1.2会话
会话是指客户端与zookeeper服务器连接,客户端与服务器建立一个长的TCP的连接来维持一个session,客户端启动时首先与服务器建立一个TCP连接,通过这个连接,客户端能够通过心跳检测与服务器保持有效的对话,也能向服务器发送请求获取响应。

1.3数据节点
zookeeper中的数据节点有两类
集群中的一台机器称为一个节点;
数据模型中的数据单元Znode,分为持久节点和临时节点。
zookeeper就像一颗树,树的节点就是Znode

这里写图片描述

1.4版本号
version:当前数据节点数据内容的版本号
cversion:当前数据节点子节点的版本号
aversion:当前数据节点ACL变更版本号
在zookeeper中版本号一般是数据节点的变更次数,所以可以用来实现分布式锁

1.5事件监听器
zookeeper允许用户在指定节点上注册一些watcher,当数据节点发生变化的时候,zookeeper服务器会把变化通知给订阅的客户端。

1.6采用ACL策略进行权限控制
create:创建子节点的权限
read:获取节点数据和子节点列表的权限
write:更新节点列表的权限
delete:删除子节点列表的权限
admin:设置节点ACL的权限

2.zookeeper环境的搭建

ZooKeeper的模式分为三种,分别为:单机模式、集群模式和伪集群模式。
2.1 准备工作(集群模式)
使用vmware创建三个centos7的虚拟机,ip地址为,172.16.114.129,
172.16.114.130,172.16.114.133,必须安装java环境。
分别下载zookeeper包(3.4.6),将包下载到/opt目录下。

2.2 创建配置文件
zookeeper运行时默认加载conf的zoo.cfg文件,而在conf下有一份模版配置文件zoo_sample.cfg,复制这份模版并命名zoo.cfg。修改zoo.cfg。
dataDir:zookeeper存储快照文件的目录,可以改成/var/zookeeper
clientPort:zookeeper对外提供服务的端口号
配置服务器的格式:
server.id=host:port:port 
id:服务器的id,为整数
host:服务器的ip地址
第一个port:follow服务器和leader服务器的通信端口
第二个port:用于leader选举过程中的投票通信端口

这里有三台服务器,所以配置三台(端口号不冲突就行)
server.1=172.16.114.129:2888:3888
server.2=172.16.114.130:2888:3888
server.3=172.16.114.133:2888:3888

这里写图片描述
把这份配置文件分别复制到三台服务器conf目录下。

2.3 启动服务器
在zookeeper的bin目录下有一些可执行文件
zkserver.sh 有几个参数
start:普通启动zookeeper服务器
start-foreground:启动zookeeper服务器,并在控制台打印出启动日志(这个启动日志在bin目录下zookeeper.out内&#x
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值