centos7部署zookeeper集群

一、介绍:

1、接收客户段请求的端口号是:2181

2、集群之间数据同步端口号:3888

3、集群选举端口号::2888 (只有leader会监听)

Leader(领导者):主要是保证集群事务处理的顺序性,事务请求的唯一调度和处理者。集群内部各服务器的调度者。

Follower(跟随着):处理客户端非事务请求,转发事务请求给leader服务器;参与事务请求proposal的投票;参与leader的投票。

        ┌────────────┐        ┌────────────┐        ┌────────────┐
        │   Server   │        │   Server   │        │   Server   │
        │     1      │        │     2      │        │     3      │
        │   Leader   │        │   Follower │        │   Follower │
        └────────────┘        └────────────┘        └────────────┘
              │                      │                      │
              │    ┌───────────────┐ │                      │
              └───►│ Zookeeper Quorum │◄───────────────────┘
                   └───────────────┘
 

二、部署集群

准备工作

为了集群的高可用,集群的数量一般是奇数。

这里使用三台centos7.9/4u8g

三台centos的IP分别是:
Zk01:192.168.0.1
Zk02:192.168.0.2
Zk03:192.168.0.3

1、分别上传jdk8.0.tar.gz,和zookeeper.*.tar.gz到zk01,zk02.zk03中

 

tar -xvf jdk-8u211-linux-x64.tar.gz -C /usr/local/  #分别解压jdk和zookeeper压缩包
tar -xvf zookeeper.3.4.9.tar.gz -C /usr/local/
mv jdk-8.0 /usr/local/java                         #分别修改name
mv zookeeper.3.4.9  /usr/local/zookeeper

2、修改zookeeper配置文件,集群中的配置文件一致,

cd  /usr/local/zookeeper/conf
cp zoo_sample.cfg  zoo.cfg    #基于模板创建一个新的配置文件,防止修改错
vim zoo.cfg  
tickTime=2000      #服务器和服务器之间的单次心跳检测时间间隔,单位为ms 
initLimit=10       #集群中的 leader 服务器与 follower 服务器初始连接心跳次数,即多少个 2000 毫秒 
syncLimit=5    # leader 与 follower 之间连接完成之后,后期检测发送和应答的心跳次数,如果该 follower 在设置的时间内(5*2000)不能与 leader 进行通信,那么此 follower 将被视为不可用。 
dataDir=/usr/local/zookeeper/data     #自定义的 zookeeper 保存数据的目录 
clientPort=2181            #客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个 端口,接受客户端的访问请求 
maxClientCnxns=128    #单个客户端 IP 可以和 zookeeper 保持的连接数 
autopurge.snapRetainCount=3    #3.4.0 中的新增功能:启用后,ZooKeeper 自动清 除功能会将 autopurge.snapRetainCount 最新快照和相应的事务日志分别保留在 dataDir 和 dataLogDir 中,并删除其余部分,默认值为 3。最小值为 3。 
autopurge.purgeInterval=1 # 3.4.0 及之后版本,ZK 提供了自动清理日志和快照 文件的功能,这个参数指定了清理频率,单位是小时,需要配置一个 1 或更大的 整数,默认是 0,表示不开启自动清理功能 
server.1=192.168.0.1:2888:3888 # server.服务器编号=服务器 IP:LF 数据同步端 口:LF 选举端口 
server.2=192.168.0.2:2888:3888 
server.3=192.168.0.3:2888:3888

3、将/conf/zoo.cfg文件分别传到zk02和zk03中

scp  ./zoo.cfg  root@192.168.0.2:/usr/local/zookeeper/conf/
scp  ./zoo.cfg  root@192.168.0.3:/usr/local/zookeeper/conf/

4、按照实际情况将集群zk01,zk02,zk03的id要拷贝到配置文件所指定的data目录下

echo “1” > /usr/local/zookeeper/data/myid
echo “2” > /usr/local/zookeeper/data/myid
echo “3” > /usr/local/zookeeper/data/myid

 

 

 3、启动集群

在zk01,zk02,zk03分别执行以下命令

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

 4、查看集群状态

/usr/local/zookeeper/zkServer.sh status

 

 至此,我们的zookeeper部署完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值