ZooKeeper集群安装扩容、缩容

 

zk特性:

1、集群数量少于一半不工作

2、每个Zookeeper服务器配置文件中的服务器列表应彼此一致

3、写操作需要(通常)集合中至少一半节点的同意,因此,随着添加更多的投票者,投票的成本可能会显着增加。

 建议:参与投票client 3或者5,不要太多,其他Client建议使用Observer

集群安装

官网地址:https://zookeeper.apache.org/doc/r3.4.14/zookeeperAdmin.html#sc_commonProblems

1、安装Java JDK。JDK地址:http://java.sun.com/javase/downloads/index.jsp

2、设置Java堆大小。因为交换会严重降低ZooKeeper的性能。要设定正确的值,请使用压测测试,并确保您已远远低于会导致交换的使用限制。保守一点-对于4GB的计算机,最大堆大小为3GB。

3、安装ZooKeeper服务器软件包。下载并解压:http://zookeeper.apache.org/releases.html

4、创建一个配置文件 conf/zoo.cfg。使用以下设置:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6/data
clientPort=2181
#按照自己机器实际ip填写以下IP
server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888

5、在每台服务器zk目录的data文件夹创建名称为myid的文件,写入1-255之间任意一个整数作为ID,ID在集群中必须唯一

6、启动ZooKeeper服务器,执行 ./bin/zkServer.sh start

7、检查ZooKeeper状态,执行 ./bin/zkServer.sh status

扩容 案例 

假设现在有三台client: A、B、C

需要扩展成5台 : A、B、C、D、E

前提条件:业务连接zk地址已变更为5台机器的ZK地址

第一步:

a、修改5台配置文件 conf/zoo.cfg 

server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888
server.4=192.168.1.4:2888:3888
server.5=192.168.1.5:2888:3888

b、添加D、E配置文件 data/myid D服务器写入4 、E服务器写入5

第二步:重启服务

确定当前leader,假设为C

  1. 先启动D
  2. 再重启A、B,此时DAB形成新集群,ABC集群不工作
  3. 再启动C、E

缩容 案例 

5台 : A、B、C(leader)、D、E

减去D、E

  1. 修改5台配置文件 conf/zoo.cfg 
  2. 重启A、B
  3. 重启C(如果出现问题,恢复C服务的 conf/zoo.cfg ,重启)
  4. 下掉D、E

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海盗巨人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值