栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

zookeeper集群搭建

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zookeeper集群搭建

解压安装zk:
三台机器ip分别为 192.168.56.101、102、103
在101上操作。

第一步

先下载zk的包,并传到101机器上,然后把zk的包拷贝到其他两台机器

scp -r apache-zookeeper-3.5.9-bin.tar.gz  root@192.168.56.102:/usr/local
scp -r apache-zookeeper-3.5.9-bin.tar.gz  root@192.168.56.103:/usr/local

然后另外两台机器 cd /usr/local 能看到这个zk的tar包
三台机器分别执行

tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz
 mv apache-zookeeper-3.5.9-bin /usr/local/zookeeper
第二步

在101上配置zoo.cfg
cp zoo_sample.cfg zoo.cfg
然后编辑zoo.cfg

the directory where the snapshot is stored.do not use /tmp for storage, /tmp here is justexample sakes.
dataDir=/tmp/zookeeper
看注释 ,这里要改改为 dataDir=/var/lib/zookeeper/
然后配置三台主机的ip,配置完的配置文件内容如下:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/lib/zookeeper/
clientPort=2181
server.1=192.168.56.101:2888:3888
server.2=192.168.56.102:2888:3888
server.3=192.168.56.103:2888:3888

然后把该配置拷贝到另外两台主机上

scp -r zoo.cfg root@192.168.56.102://usr/local/zookeeper/conf
scp -r zoo.cfg root@192.168.56.103://usr/local/zookeeper/conf
第三步

填写myid

根据zoo.cfg里配置的

server.1=192.168.56.101:2888:3888
server.2=192.168.56.102:2888:3888
server.3=192.168.56.103:2888:3888

101的myid为1,102的myid为2,103的myid为3
myid设置的方式为 在dataDir=/var/lib/zookeeper/ 这个文件夹下建一个myid文件,里面填写对应的myid 1、2、3。三台机器都要设置一遍
没有这个文件夹可以创建一下

至此,zookeeper集群已经配置完毕,下面启动并验证集群。

第四步

在这三台服务器中随便选择一个,进入zk的bin目录执行 sh zkServer.sh start ,三台服务器都需要手动执行一遍启动命令,启动zk服务
输出日志如下:

[root@localhost bin]# sh zkServer.sh start
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@localhost bin]#

代表zk启动成功

第五步

验证zk启动是否正常
输入 telnet 127.0.0.1 2181
然后输入stat
提示 is not executed because it is not in the whitelist 参考博客 https://blog.csdn.net/x763795151/article/details/80599498 和https://blog.csdn.net/bird3014/article/details/92852726?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control
看完博客知道需要在 zoo.cfg 配置白名单,配置完重启,再执行验证的命令就没有问题了。最终验证成功日志如下:

[root@localhost bin]# telnet 127.0.0.1 2181
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
stat
Zookeeper version: 3.5.9-83df9301aa5c2a5d284a9940177808c01bc35cef, built on 01/06/2021 19:49 GMT
Clients:
 /127.0.0.1:45458[0](queued=0,recved=1,sent=0)

Latency min/avg/max: 0/0/0
Received: 1
Sent: 0
Connections: 1
Outstanding: 0
Zxid: 0x200000000
Mode: follower
Node count: 5
Connection closed by foreign host.

zk的高级配置参考https://zookeeper.apache.org/doc/r3.5.9/zookeeperAdmin.html
自己再搞一份推荐的配置压测一下
可以通过jmx看zk的情况。
可以用shell加crontab定时清理日志快照等,用purgetxnlog工具
或者用zk自带的zkCleanup.sh

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1003258.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号