暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

人大金仓KingbaseES repmgr整体架构简介

数据猿 2023-11-09
810


repmgr整体架构简介

关键字: 人大金仓、KingbaseES、repmgr

  1. 整体架构

简介:流复制集群管理工具,负责监控流复制读写分离集群的监控,保障业务的高可用性。

主要功能:

    • 处理各种节点故障,包括:计划外停机、网络故障、数据库停库时的主备切换;
    • 对失效节点的自动恢复;
    • 管理主备节点的同步异步;
    • VIP管理;
    • 监控网关的连通性;
    • 提供部署、管理、查看集群的接口。

组件主要包括:

  • repmgr
  • repmgrd
  • kbha
  • repmgr.so

辅助脚本:sys_monitor.sh、repmgr.sh、cluster_install.sh(在10节中对该脚本进行了详细的分析,后续技术文档会不断推出相关内容)

如图所示,repmgrd守护进程之间是没有通信的,所有的repmgr均通过conninfo连接到数据库,读取、修改数据库中对应表的信息记录集群节点的状态信息。

repmgrd :流复制的守护进程,根据本地数据库角色不同,其功能也不同:

  • 主库:repmgrd仅监控本地数据库,负责自动恢复、同异步切换;
  • 备库:repmgrd监控本地数据库和主数据库,负责自动切换、复制槽删除。

kbha:第三方守护进程

  • 检测和信任网关的连接状态;
  • 负责拉起repmgrd;
  • 如果连接信任网关失败,关闭repmgrd、数据库。

启动命令放入定时服务/etc/cron.d/KINGBASECRON,由定时任务拉起第三方守护进程

sys_monitor.sh:一键启停脚本,读取 etc/repmgr.conf 配置文件获取基本信息:

(1)启动:

      • 启动本地数据库,获取集群所有节点信息;
      • 启动其它节点的数据库,并判断主机个数,只有一个主机,在主机上加载VIP;没有主机或者主机数量超过一个,中断启动;
      • 启动所有节点上的repmgrd;
      • 启动所有节点上的kbha,并写入对应定时任务。

(2)停止:

      • 连接本地数据库获取集群所有节点信息,连接失败则中断停止;
      • 停止所有节点上的kbha,并注释对应定时任务;
      • 停止所有节点上的repmgrd;
      • 停止所有数据库,并卸载可能存在的VIP。

由启动和停止集群的步骤可知,启动和停止操作的执行顺序刚好相反,启动集群的时候,先启动本地和其它节点的数据库,然后再启动流复制的守护进程repmgrd,最后启动第三方的守护进程kbha,而停止的顺序刚好相反。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论