CentOS下部署ZooKeeper
ZooKeeper安装分为单机安装、集群安装,一般在开发、测试环境使用单机版,而在生产环境使用集群。
单机安装
官方下载:https://zookeeper.apache.org/releases.html
清华镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
# tar -zxf zookeeper-3.5.5-bin.tar.gz
# cd zookeeper--3.5.5/
# mkdir data
# mkdir log
# cd conf/
# cp zoo_sample.cfg zoo.cfg
# vim zoo.cfg
修改zoo.cfg
内容如下,主要修改dataDir
和logDir
的路径
tickTime:执行心跳时间
dataDir:存储内存数据库快照的位置
logDir:存储日志信息的位置
clientPort:侦听客户端连接的端口
启动ZooKeeper:
# bin/zkServer.sh start
连接ZooKeeper:
# bin/zkCli.sh -server 127.0.0.1:2181
如果要停止zookeeper服务,使用命令:
# bin/zkServer.sh stop
集群安装
对于集群模式,至少需要三台服务器,服务器数量强烈建议为奇数。如果您只有两台服务器,那么您处于这样的情况:如果其中一台服务器出现故障,则没有足够的机器来构成多数仲裁。两台服务器本质上不如单一服务器稳定,因为有两个单点故障。
需要在dataDir
的路径下,即zk的data目录下创建myid
文件,在myid
文件中只需要写上一行内容,且内容只能为0 - 255
之间的数字,标识所属的zk服务。
修改conf下的zoo.cfg
配置文件如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper/data
logDir=/usr/local/zookeeper/logs
clientPort=2181
server.0=192.168.0.101:2888:3888
server.1=192.168.0.102:2888:3888
server.2=192.168.0.103:2888:3888
initLimit
:follower与leader之间建立连接后进行同步的最长时间
syncLimit
:配置follower和leader之间发送消息,请求和应答的最大时间长度。
tickTime
:initLimit和syncLimit均以tickTime做为时间单位,initLimit=10 即为10个2000毫秒
server.x=host:port1:port2
:数字x即为myid文件的内容,host为所在机器的IP,port1为follower和leader交换消息所使用的端口,port2表示选举leader所使用的端口
在集群中,每台机器的zk服务的配置文件都是一样的。要连接一个zookeeper集群,可以使用如下命令:
# bin/zkCli.sh -server 192.168.0.101:2181,192.168.0.102:2181,192.168.0.103:2181
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/26/deploy-zookeeper-under-centos/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论