Zookeeper实现简单的Master选举以及主从数据库数据同步

1.zookeeper的概念与搭建

这类文章很多,所以我就不详细说了,推荐一个详细的技术文章,zookeeper学习。后面我会简单的描述搭建过程。

3.Zookeeper节点

1:stat:状态信息,znode版本信息
2:节点保存的数据信息:与该znode关联的数据
3:children:znode下的子节点信息

2.节点属性

Data:节点保存的数据的内容
1.zxid节点操作的zxid时间戳
2.czxid节点创建的zxid格式的时间戳
3.Mzxid节点修改的zxid时间戳
4.Version节点数据版本号
5.cversion子节点数据版本号
6.Aversion 节点所拥有的acl版本号

4.节点类型

1.临时节点,客户端与服务端断开连接后,节点消失
2.永久节点,永久存在,除非调用删除节点

5.shell操作节点指令

  1. create [-s][-e] path data acl
    其中,-s和-e分别指顺序节点和临时节点,data节点中的数据u,acl用来 进行权限控制

  2. 读取节点

    1.ls path查看节点,与linux系统查看系统目录文件相似
    2.get path 获取指定节点的内容,包括属性信息
    3.ls2 path 显示属性,但是不显示数据

  3. 更新节点

    1.set path data[version] version需正确,默认最新数据版本,版本号要 与当前版本一致

  4. 删除节点:

    1.delete path[version]
    2.Rmr path 递归删除 删除节点以及子节点

  5. quota命令

    1.setquota -n|-b val path
    			 n:表示节点的最大个数
    			 b:表示数据只的最大长度
    			 val:子节点最大个数或数值的最大长度
    			path:节点路径
    		2.listquota节点排列
    

6.Tips

1.节点名称前面一定要加/,表示路径,例如 ls /root(查看根目录下的root节点)

7.二.数据库同步以及Master Ip选举

  1. 功能:

    三台机器每台中都有mysql数据库,但是三台机器只连一台数据库,我们叫这个数据库叫主数据库,三台机器会对主数据库进行数据的crud操作,主数据库如果发生数据变化,那么从数据库也要更新,当主数据库因为网络问题,断开连接,系统会自动从从数据库中选取一个数据库做主数据(master选举),断开的数据库连接上后成为从数据库,并且数据要和当前的主数据库数据一致。

  2. 搭建Zookeeper集群

    1.将zookeeper压缩包解压到集群中的每台计算机
    2.修改conf目录下的zoo.cfg文件(例如)
    在这里插入图片描述

    红框表示的是三台主机的IP,server.x表示该zookeeper在集群中的编号,,2888是 flower和leader通信端口, 3888选举端口。

    3.在data目录下新建文件myid,没有后缀名,内容为该主机的zookeeper服务器的 编号,如果编号为1,文件内容就是1。
    4.启动每台主机上的zookeeper服务,点击zkServer.cmd
    5.在其中一台机器上创建一个节点,看从其他机器上是能获得该节点信息
    6.每台主机上装一个mysql数据库,为实现主从结构
    7.数据库开启远程可连接(开启之后就不能用localhost和127.0.0.1访问本地数据 库,需要写明电脑在网络下的IP地址,例如mysql -h10.1.6.120 -uroot -padmin123)
    Mysql -uroot -padm

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值