ZooKeeper-集群模式安装

下载地址:https://zookeeper.apache.org/releases.html

至少需要准备三台节点(这里为h136、h138、h140),ZooKeeper 需要 JDK,关于 JDK 的安装这里不做记录

ZooKeeper 集群为主(Leader)从(Follower)模式

安装

# 解压安装
tar -zxf /opt/zookeeper-3.4.14.tar.gz -C /opt/

# 创建配置文件
cp /opt/zookeeper-3.4.14/conf/zoo_sample.cfg /opt/zookeeper-3.4.14/conf/zoo.cfg

# 编辑配置(修改下数据存放路径)
vim /opt/zookeeper-3.4.14/conf/zoo.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper-3.4.14/zkData
clientPort=2181
#maxClientCnxns=60
#autopurge.snapRetainCount=3
#autopurge.purgeInterval=1

配置

本地模式到这里就可以直接启动了,集群模式还需要配置编号与集群信息

# 在数据目录下创建 myid,类容为编号

# 先按照上面的路径创建数据目录
mkdir -p /opt/zookeeper-3.4.14/zkData

# 创建编号文件
vim /opt/zookeeper-3.4.14/zkData/myid

# 内容随意,保证每个节点不同即可
136

# 配置节点信息
vim /opt/zookeeper-3.4.14/conf/zoo.cfg

# 添加以下配置,这里为三个节点
server.136=h136:2888:3888
server.138=h138:2888:3888
server.140=h140:2888:3888

# server.A
=B:C:D # A 几号服务器,集群模式下配置一个文件 myid,这个文件在 dataDir 目录下,这个文件的内容就是 A 的值,Zookeeper 启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server # B 服务器的 ip 地址 # C 是这个服务器与集群中的 Leader 服务器交换信息的端口 # D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口

同步到其他节点,修改 myid 文件

# 这里使用 rsync 工具,scp 也可以
rsync -av /opt/zookeeper-3.4.14 h138:/opt/
rsync -av /opt/zookeeper-3.4.14 h140:/opt/

# 修改其他节点上的 myid 文件
vim /opt/zookeeper-3.4.14/zkData/myid

启动

# 启动
/opt/zookeeper-3.4.14/bin/zkServer.sh start

# 停止
/opt/zookeeper-3.4.14/bin/zkServer.sh stop

# 查看状态
/opt/zookeeper-3.4.14/bin/zkServer.sh status

启动一台节点,查看状态发现并没有在工作

ZooKeeper 集群需要有一半以上的机器在运行时才可以工作,这里为三台节点,那么就需要至少启动两台节点才能工作

启动两台集群后再查看状态


https://zookeeper.apache.org/doc/r3.4.14/zookeeperAdmin.html

猜你喜欢

转载自www.cnblogs.com/jhxxb/p/10744264.html
今日推荐