Zookeeper集群环境搭建【二】

上篇说到linux环境下zookeeper单机环境搭建,这篇主要说明下zookeeper集群的搭建,因为随着业务的需求以及复杂性的不断提升,单机应用显然是达不到实际的需求,所以必须考虑集群。

单机环境搭建可以查看:https://blog.csdn.net/weixin_42558742/article/details/89052702

zookeeper集群环境搭建基本步骤

1、修改zoo.cfg配置文件

server.A=B:C:D

A:是一个数字,表示这个是第几号服务器,唯一标识符, 不允许重复,

B:是这个服务器的ip地址

C:Leader和follwer通信的端口号

D:Leader死掉之后,重新选举Leader,是follwer之间通信的端口号

集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里面有个数值就是A的值,Zookeeper在启动的时候会读取该文件,拿到里面的数据与zoo.cfg里卖弄的配置信息比较从而判断到底是哪个server

2、vim myid 输入对应的编号

3、其他几台服务器上配置重复第一步和第二部,注意myid不要弄错

4、启动zookeeper每个节点,查看节点状态可能会出现以下状况

出现这种问题要么就是配置没配置对,要么就是防火墙没有关闭,大部分原因应该是防火墙的原因

查看防火墙命令:service iptables status

启动防火墙命令:service iptable start

关闭防火墙命令:service iptables stop

关闭防火墙之后,在查看zookeeper节点状态

由上图可知,zookeeper集群的leader的选举是节点启动自动选举的,但选举的机制是什么,我们也不太清楚,查了以下,呈现在这块。

半数机制:集群中半数以上机器存活,集群可用,所以zookeeper适合装在奇数台机器上

选举过程:假设目前zookeeper集群由五个节点,第一个节点启动,半数以下,集群不可用,选举需要和其他节点通信,但其他节点还未启动,选举失败;第二个节点启动,第一节点投票给它,它投给自己(默认id谁大谁有优势),2票依然在半数以下集群不可用。第三个节点启动,第一第二节点投票给它,它投给自己,3票。半数以上集群可用,选举成功,第三个节点是Leader,一二节点为follwer,第四第五节点也将是follwer.

客户端测试:

随意启动一个zookeeper客户端,测试一些常用的命令

节点类型:

持久性节点:客户端和服务端断开连接后,创建的节点依旧存在

临时性节点:客户端和服务端断开连接后,创建的节点自动删除

1、创建节点

命令:create [-s] [-e] 目录 数据 (create /xuwei  "哈哈") 默认是持久性节点,加上-e变成临时性节点 

2、修改节点数据

命令:set path 数据(set /xuwei "nihao")

3、查看节点数据

命令:get path       (get /xuwei)

4、删除一个节点(单级目录)

命令:delete path    (delete /xuwei)

5、删除节点(目录下的所有节点都删除)

命令: rmr path

猜你喜欢

转载自blog.csdn.net/weixin_42558742/article/details/89080844