zookeeper集群搭建

一、集群搭建

1、说明

本次集群搭建是在同一台机器上部署,是属于伪集群,但是只是与不同机器上部署配置相差不大。同一台机器上部署只需要一个zookeeper安装夹,设置不同的data目录和不同的配置文件。本次案例部署三个的机器

2、为什么要使用集群

为了保证系统能够承受更多客户端的连接和能保证自身高可用的一套机制。
读写分离:提高承载,为更多的客户端提供连接,并保障性能
主从自主切换:提供服务的容错性高可用性,保障单点故障不影响整个服务集群

3、步骤

配置语法说明
server.=:<端口>:<选举端口>
Server ID:服务id。用来标识该机器在集群中的机器序号。手动指定1-125的数字,并写到对应服务结点的{dataDir}/myid文件中
ip:集群中服务对应的ip地址
端口:集群中服务对应的端口
选举端口:主从结点选举端口,可以随意提供,服务启动时会自动使用

(1)在zookeeper的根目录下创建三个data目录

mkdir data
mkdir data/1
mkdir data/2
mkdir data/3

(2)编写myid文件

echo 1 > data/1/myid
echo 2 > data/2/myid
echo 3 > data/3/myid

在这里插入图片描述
(3)编写配置文件

cp zoo_sample.cfg zoo1.cfg
cp zoo_sample.cfg zoo2.cfg
cp zoo_sample.cfg zoo3.cfg

在这里插入图片描述
修改zoo1.cfg

## 修改修改的
dataDir=data/1
clientPort=2181
## 集群配置   需要加入的
server.1=127.0.0.1:2001:3001
server.2=127.0.0.1:2002:3002
server.3=127.0.0.1:2003:3003

在这里插入图片描述
修改zoo2.cfg

## 修改修改的
dataDir=data/2
clientPort=2182
## 需要加入的
server.1=127.0.0.1:2001:3001
server.2=127.0.0.1:2002:3002
server.3=127.0.0.1:2003:3003

修改zoo3.cfg

## 修改修改的
dataDir=data/3
clientPort=2183
## 需要加入的
server.1=127.0.0.1:2001:3001
server.2=127.0.0.1:2002:3002
server.3=127.0.0.1:2003:3003

(4)分别启动
需要停了之前的单机2181

./bin/zkServer.sh start conf/zoo1.cfg
./bin/zkServer.sh start conf/zoo2.cfg
./bin/zkServer.sh start conf/zoo3.cfg

(5) 查看状态
在这里插入图片描述
(6)客户端连接

./zkCli.sh -server 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

从某一个客户端进行操作会同步到其他客户端中
小知识
查看当前服务器启动的zookeeper所有服务细节

ps -ef|grep zookeeper |grep -v grep

查看当前服务器启动的zookeeper服务数

ps -ef|grep zookeeper |grep -v grep|wc -l

4、集群角色说明

leader: 主节点(领导者结点)。用于写入数据,通过选举产生,如果宕机将会选举新的主节点。
follower: 子节点(追随者结点)。用于数据的读取。同时它也是主节点的备选节点,并用拥有投票权。
observer:次级子节点(观察者结点)。用于读取数据,与follower区别在于没有投票权,不能选为主节点。并且在计算集群可用状态时不会将observer计算入内。
observer配置:
只要在集群配置中加上observer后缀即可,示例如下:

server.1=127.0.0.1:2001:3001:observer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值