ZooKeeper的简单集群搭建

ZooKeeper的简单集群搭建

1.官网下载ZooKeeper

2.准备

解压后,在目录下创建zkCluster文件夹,并且在zkCluster下面创建zk1,zk2,zk3文件夹,并且每个文件夹下面准备data和log文件夹

mkdir {zk1,zk2,zk3}/{data,log}

在每个data文件夹中创建myid文件,并且在里面输入一个数字即可(定义编号)

3.编辑配置文件

在主目录下的conf文件中,复制zoo_sample.cfg为zoo1.cfg,zoo2.cfg,zoo3.cfg

编辑以下项:

dataDir=/usr/local/src/zookeeper/zkCluster/zk1/data
dataLogDir=/usr/local/src/zookeeper/zkCluster/zk1/log
...
clientPort=2181
server.1=192.168.126.129:2887:3887
server.2=192.168.126.129:2888:3888
server.3=192.168.126.129:2889:3889

注意,每个cfg的clientPort不能相同,dataDir和dataLogDir中的路径要对应

4.启动ZooKeeper

启动命令:

sh zkServer.sh start zoo1.cfg
sh zkServer.sh start zoo2.cfg
sh zkServer.sh start zoo3.cfg

命令说明:

//启动
sh zkServer.sh start zoo1.cfg
//查看状态
sh zkServer.sh status zoo1.cfg
//关闭
sh zkServer.sh stop zoo1.cfg

为什么集群一般都设计为奇数

原因:搭建集群必须满足:剩余节点数>N/2,N代表节点的总数,否则集群就崩溃

1台能否搭建集群:1-1=0>0.5,不成立,1台不能搭建集群

2台能否搭建集群:2-1=1>1,不成立,2台不能搭建集群

3台能否搭建集群:3-1=2>1.5,成立,3台可以搭建集群

结论:搭建集群至少需要3台才可以搭建,3台宕机1台也可以正常工作

4台能否搭建集群:4-1=3>2,成立,4台可以搭建集群

但是:4台不能宕机2台,否则也会崩溃,4台和3台都最多只能宕机1台

结论:奇数台和偶数台最大宕机数量是一样的,所以为了节省开销,一般都是搭建奇数台

宕机后的投票选举

问题1:1234567,依次启动,主机是谁?答案:4

问题2:1234567,依次启动,主机宕机,再次选举的主机是谁?答案:7

问题3:1234567,哪几台永远不能当主机?答案:123

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Zookeeper是一个分布式的一致性协调服务,常用于分布式系统中的协调管理。在搭建Zookeeper集群之前,需要先安装好Java环境,具体步骤如下: 1. 下载Zookeeper安装包,并解压到指定目录。 2. 在Zookeeper的conf目录下,新建一个名为zoo.cfg的文件,配置Zookeeper集群的相关参数,例如: ``` tickTime=2000 initLimit=10 syncLimit=5 dataDir=/var/lib/zookeeper clientPort=2181 server.1=192.168.1.101:2888:3888 server.2=192.168.1.102:2888:3888 server.3=192.168.1.103:2888:3888 ``` 其中,tickTime表示Zookeeper中的基准时间单位,initLimit和syncLimit表示Zookeeper集群中的Follower节点与Leader节点之间的通信超时时间,dataDir表示Zookeeper中数据存储的目录,clientPort表示Zookeeper的客户端连接端口,server.x表示Zookeeper集群中的各节点信息。 3. 在每个节点的dataDir目录下,新建一个名为myid的文件,并将当前节点的编号写入该文件中,例如: ``` 1 ``` 4. 启动Zookeeper集群,可以通过命令行执行以下命令: ``` bin/zkServer.sh start ``` 5. 检查Zookeeper集群的状态,可以通过命令行执行以下命令: ``` bin/zkServer.sh status ``` 如果集群状态正常,显示类似于“Mode: leader”的信息,表示当前节点为Leader节点。 6. 使用Zookeeper集群,可以通过Java API或命令行客户端进行操作,例如创建节点、删除节点、获取节点列表等。 以上就是Zookeeper集群搭建简单步骤,需要注意的是,Zookeeper集群的节点数应该为奇数,推荐使用3、5、7等节点数。同时,Zookeeper集群的配置需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值